As we keep at the most only 3 versions of the schema, after release of the version we need to adjust (flatten) the files to
maintain structure defined in Files structure (it may happen, that there wouldn’t be any changes in the schema for particular version which will result in relatively empty
current-version
schema file – only setting current version for component with setVersion('component','<current-version></current-version>');
).
For example we are about to release version 8.0.0
. This results in the following versions of the schema (in the example for the server) in the repository:
<database>-server-schema-7.0.0.sql
: base schema<database>-server-schema-7.1.0.sql
: including changes for7.1.0
<database>-server-schema-8.0.0.sql
: including changes for8.0.0
Note
It’s possible that there will be maintenance versions in the list as well, e.g.: <database>-server-schema-7.1.1.sql
and <database>-server-schema-7.1.2.sql
After the release we specify the version of the next release in pom.xml (for example 8.1.0
and the same version will be the current-version
making the oldest available version 7.1.0
. Because of that we MUST incorporate all the changes in 7.1.0
onto 7.0.0
creating new base file with version 7.1.0
, i.e.:
<database>-server-schema-7.1.0.sql
: base schema<database>-server-schema-8.0.0.sql
: including changes for8.0.0
<database>-server-schema-8.1.0.sql
: including changes for8.1.0