Back to Top

Baseline

Class Name com.midvision.rapiddeploy.plugins.database.flyway.FlywayBaselineTask
Category Flyway

Baselines an existing database

Description

Baselines an existing database, excluding all migrations upto and including baselineVersion.

"Baseline is for introducing Flyway to existing databases by baselining them at a specific version.
The will cause Migrate to ignore all migrations upto and including the baseline version.
Newer migrations will then be applied as usual. "
See more Full flyway baseline documentation

Parameters

The following parameters may be set on this task:

Table of task Parameters

Name Type Default Value Optional Description
baseliningResultParam java.lang.String ${baseliningResult} false The name of the output parameter, which can pass the return value from the task. The task output will be false when the schema baselining failed. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${baseliningResult}.
databaseUrl java.lang.String jdbc:hsqldb:hsql://localhost:9001/rapiddeploydb false The JDBC URL of the database.
dbMigrationLocationPaths java.lang.String sa false Locations to scan recursively for migrations. The location type is determined by its prefix. Unprefixed locations or locations starting with classpath: point to a package on the classpath and may contain both sql and java-based migrations. Locations starting with filesystem: point to a directory on the filesystem and may only contain sql migrations.
failOnError java.lang.Boolean true false This task will not fail the deployment on error if set to false.
password java.lang.String sa false The password of the database.
schemas java.lang.String   true Sets the schemas managed by Flyway. These schema names are case-sensitive. (default: The default schema for the datasource connection)
skipOnFailure java.lang.String Previous Task Name true Skip current task based on the name of the previous task whether has failed or not.
username java.lang.String sa false The user of the database.


Back to Top

Clean

Class Name com.midvision.rapiddeploy.plugins.database.flyway.FlywayCleanTask
Category Flyway

Drops all objects in the configured schemas.

Description

"Clean is a great help in development and test. It will effectively give you a fresh start, by wiping your configured schemas completely clean.
All objects (tables, views, procedures, ...) will be dropped.
Needless to say: do not use against your production DB!"
See more Full flyway clean documentation

Parameters

The following parameters may be set on this task:

Table of task Parameters

Name Type Default Value Optional Description
cleanResultParam java.lang.String ${cleanResult} false The name of the output parameter, which can pass the return value from the task. The task output will be false when the schema cleaning failed. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${cleanResult}.
databaseUrl java.lang.String jdbc:hsqldb:hsql://localhost:9001/rapiddeploydb false The JDBC URL of the database.
failOnError java.lang.Boolean true false This task will not fail the deployment on error if set to false.
password java.lang.String sa false The password of the database.
schemas java.lang.String   true Sets the schemas managed by Flyway. These schema names are case-sensitive. (default: The default schema for the datasource connection)
skipOnFailure java.lang.String Previous Task Name true Skip current task based on the name of the previous task whether has failed or not.
username java.lang.String sa false The user of the database.


Back to Top

Info

Class Name com.midvision.rapiddeploy.plugins.database.flyway.FlywayInfoTask
Category Flyway

Prints the details and status information about all the migrations to output parameters.

Description

"Info lets you know where you stand.
At a glance you will see which migrations have already been applied, which other ones are still pending,
when they were executed and whether they were successful or not."
See more Full flyway info documentation

Parameters

The following parameters may be set on this task:

Table of task Parameters

Name Type Default Value Optional Description
databaseUrl java.lang.String jdbc:hsqldb:hsql://localhost:9001/rapiddeploydb false The JDBC URL of the database.
failOnError java.lang.Boolean true false This task will not fail the deployment on error if set to false.
latestVersionDateParam java.lang.String ${lastMigrationDate} false The name of the output parameter, which can pass the return value from the task. The task output will be the timestamp when latest migration was installed Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${lastMigrationDate}.
latestVersionDescriptionParam java.lang.String ${description} false The name of the output parameter, which can pass the return value from the task. The task output will be the description of current version of database. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${description}.
latestVersionParam java.lang.String ${version} false The name of the output parameter, which can pass the return value from the task. The task output will be the current version of database. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${version}.
latestVersionUserParam java.lang.String ${lastMigrationUser} false The name of the output parameter, which can pass the return value from the task. The task output will be the user that installed latest migration. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${lastMigrationUser}.
password java.lang.String sa false The password of the database.
schemas java.lang.String   true Sets the schemas managed by Flyway. These schema names are case-sensitive. (default: The default schema for the datasource connection)
skipOnFailure java.lang.String Previous Task Name true Skip current task based on the name of the previous task whether has failed or not.
username java.lang.String sa false The user of the database.


Back to Top

Migrate

Class Name com.midvision.rapiddeploy.plugins.database.flyway.FlywayMigrateTask
Category Flyway

Migrates the schema to the latest version.

Description

Migrates the schema to the latest version.

"Migrate is the centerpiece of the Flyway workflow. It will scan the filesystem or your classpath for available migrations.
It will compare them to the migrations that have been applied to the database. If any difference is found, it will migrate the database to close the gap.

Migrate should preferably be executed on application startup to avoid any incompatibilities between the database and the expectations of the code. " See more Full flyway migrate documentation

Remember to add database specific jar to MV_HOME/lib folder and then

Parameters

The following parameters may be set on this task:

Table of task Parameters

Name Type Default Value Optional Description
baselineOnMigrate java.lang.Boolean true false Whether to automatically call baseline when migrate is executed against a non-empty schema with no metadata table. This schema will then be baselined with the baselineVersion before executing the migrations. Only migrations above baselineVersion will then be applied. This is useful for initial Flyway production deployments on projects with an existing DB. Be careful when enabling this as it removes the safety net that ensures Flyway does not migrate the wrong database in case of a configuration mistake!
databaseUrl java.lang.String jdbc:hsqldb:hsql://localhost:9001/rapiddeploydb false The JDBC URL of the database.
dbMigrationLocationPaths java.lang.String sa false Locations to scan recursively for migrations. The location type is determined by its prefix. Unprefixed locations or locations starting with classpath: point to a package on the classpath and may contain both sql and java-based migrations. Locations starting with filesystem: point to a directory on the filesystem and may only contain sql migrations.
failOnError java.lang.Boolean true false This task will not fail the deployment on error if set to false.
migrationResultParam java.lang.String ${migrationResult} false The name of the output parameter, which can pass the return value from the task. The task output will be the number of successfully applied migrations. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${migrationResult}.
password java.lang.String sa false The password of the database.
schemas java.lang.String   true Sets the schemas managed by Flyway. These schema names are case-sensitive. (default: The default schema for the datasource connection)
skipOnFailure java.lang.String Previous Task Name true Skip current task based on the name of the previous task whether has failed or not.
username java.lang.String sa false The user of the database.


Back to Top

Repair

Class Name com.midvision.rapiddeploy.plugins.database.flyway.FlywayRepairTask
Category Flyway

Repairs the metadata table.

Description

"Repair is your tool to fix issues with the metadata table. It has two main uses:
  • Remove failed migration entries (only for databases that do NOT support DDL transactions)
  • Realign the checksums of the applied migrations to the ones of the available migrations"

See more Full flyway repair documentation

Parameters

The following parameters may be set on this task:

Table of task Parameters

Name Type Default Value Optional Description
databaseUrl java.lang.String jdbc:hsqldb:hsql://localhost:9001/rapiddeploydb false The JDBC URL of the database.
dbMigrationLocationPaths java.lang.String sa false Locations to scan recursively for migrations. The location type is determined by its prefix. Unprefixed locations or locations starting with classpath: point to a package on the classpath and may contain both sql and java-based migrations. Locations starting with filesystem: point to a directory on the filesystem and may only contain sql migrations.
failOnError java.lang.Boolean true false This task will not fail the deployment on error if set to false.
password java.lang.String sa false The password of the database.
repairingResultParam java.lang.String ${repairingResult} false The name of the output parameter, which can pass the return value from the task. The task output will be false when the schema repairing failed. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${repairingResult}.
schemas java.lang.String   true Sets the schemas managed by Flyway. These schema names are case-sensitive. (default: The default schema for the datasource connection)
skipOnFailure java.lang.String Previous Task Name true Skip current task based on the name of the previous task whether has failed or not.
username java.lang.String sa false The user of the database.


Back to Top

Validate

Class Name com.midvision.rapiddeploy.plugins.database.flyway.FlywayValidateTask
Category Flyway

Validates the applied migrations against the available ones.

Description

"Validate helps you verify that the migrations applied to the database match the ones available locally.
This is very useful to detect accidental changes that may prevent you from reliably recreating the schema."
See more Full flyway validate documentation

Parameters

The following parameters may be set on this task:

Table of task Parameters

Name Type Default Value Optional Description
databaseUrl java.lang.String jdbc:hsqldb:hsql://localhost:9001/rapiddeploydb false The JDBC URL of the database.
dbMigrationLocationPaths java.lang.String sa false Locations to scan recursively for migrations. The location type is determined by its prefix. Unprefixed locations or locations starting with classpath: point to a package on the classpath and may contain both sql and java-based migrations. Locations starting with filesystem: point to a directory on the filesystem and may only contain sql migrations.
failOnError java.lang.Boolean true false This task will not fail the deployment on error if set to false.
password java.lang.String sa false The password of the database.
schemas java.lang.String   true Sets the schemas managed by Flyway. These schema names are case-sensitive. (default: The default schema for the datasource connection)
skipOnFailure java.lang.String Previous Task Name true Skip current task based on the name of the previous task whether has failed or not.
username java.lang.String sa false The user of the database.
validationResultParam java.lang.String ${validationResult} false The name of the output parameter, which can pass the return value from the task. The task output will be false when the schema validation failed. Define a unique parameter name starting with '${', ending with '}' for the whole orchestration (latter tasks can override the parameter value if the same parameter name is specified). You can refer to this parameter in any task below in the tasklist, as an input parameter ${validationResult}.