Gradle task that calls Liquibase to run a command.
Fields inherited from class | Fields |
---|---|
class org.gradle.api.tasks.JavaExec |
TASK_NAME, TASK_DESCRIPTION, TASK_GROUP, TASK_TYPE, TASK_DEPENDS_ON, TASK_OVERWRITE, TASK_ACTION, TASK_CONSTRUCTOR_ARGS |
Type | Name and description |
---|---|
java.lang.Object |
command The Liquibase command to run. |
java.lang.Object |
requiresValue Whether or not the command needs a value, such as "tag" or "rollbackCount" |
Type Params | Return Type | Name and description |
---|---|---|
|
org.gradle.api.Task |
configure(groovy.lang.Closure closure) Watch for changes to the extension's mainClassName and make sure the task's main class is set correctly. |
|
void |
exec() |
|
java.lang.Object |
fixMainClass() Fix the main class to be used when running Liquibase. |
|
java.lang.Object |
lbAtLeast(java.lang.Object givenSemver, java.lang.Object targetSemver) Compare a given Liquibase semver to a target semver and return whether the given semver is at least the version of the target. |
|
java.lang.Object |
runLiquibase(java.lang.Object activity) Build the proper command line and call Liquibase. |
Methods inherited from class | Name |
---|---|
class org.gradle.api.tasks.JavaExec |
org.gradle.api.tasks.JavaExec#setWorkingDir(java.io.File), org.gradle.api.tasks.JavaExec#setWorkingDir(java.lang.Object), org.gradle.api.tasks.JavaExec#setStandardOutput(java.io.OutputStream), org.gradle.api.tasks.JavaExec#setStandardOutput(java.io.OutputStream), org.gradle.api.tasks.JavaExec#setErrorOutput(java.io.OutputStream), org.gradle.api.tasks.JavaExec#setErrorOutput(java.io.OutputStream), org.gradle.api.tasks.JavaExec#setIgnoreExitValue(boolean), org.gradle.api.tasks.JavaExec#setIgnoreExitValue(boolean), org.gradle.api.tasks.JavaExec#workingDir(java.lang.Object), org.gradle.api.tasks.JavaExec#workingDir(java.lang.Object), org.gradle.api.tasks.JavaExec#setMain(java.lang.String), org.gradle.api.tasks.JavaExec#setMain(java.lang.String), org.gradle.api.tasks.JavaExec#setSystemProperties(java.util.Map), org.gradle.api.tasks.JavaExec#jvmArgs([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#jvmArgs([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#jvmArgs(java.lang.Iterable), org.gradle.api.tasks.JavaExec#jvmArgs(java.lang.Iterable), org.gradle.api.tasks.JavaExec#setClasspath(org.gradle.api.file.FileCollection), org.gradle.api.tasks.JavaExec#setClasspath(org.gradle.api.file.FileCollection), org.gradle.api.tasks.JavaExec#setArgs(java.lang.Iterable), org.gradle.api.tasks.JavaExec#setArgs(java.lang.Iterable), org.gradle.api.tasks.JavaExec#setArgs(java.util.List), org.gradle.api.tasks.JavaExec#setArgs(java.util.List), org.gradle.api.tasks.JavaExec#getArgumentProviders(), org.gradle.api.tasks.JavaExec#getMainModule(), org.gradle.api.tasks.JavaExec#isIgnoreExitValue(), org.gradle.api.tasks.JavaExec#setStandardInput(java.io.InputStream), org.gradle.api.tasks.JavaExec#setStandardInput(java.io.InputStream), org.gradle.api.tasks.JavaExec#getStandardInput(), org.gradle.api.tasks.JavaExec#getStandardOutput(), org.gradle.api.tasks.JavaExec#getErrorOutput(), org.gradle.api.tasks.JavaExec#getCommandLine(), org.gradle.api.tasks.JavaExec#getMainClass(), org.gradle.api.tasks.JavaExec#getWorkingDir(), org.gradle.api.tasks.JavaExec#getMain(), org.gradle.api.tasks.JavaExec#getModularity(), org.gradle.api.tasks.JavaExec#getMinHeapSize(), org.gradle.api.tasks.JavaExec#getDefaultCharacterEncoding(), org.gradle.api.tasks.JavaExec#getEnvironment(), org.gradle.api.tasks.JavaExec#setEnvironment(java.util.Map), org.gradle.api.tasks.JavaExec#setDefaultCharacterEncoding(java.lang.String), org.gradle.api.tasks.JavaExec#setMinHeapSize(java.lang.String), org.gradle.api.tasks.JavaExec#getMaxHeapSize(), org.gradle.api.tasks.JavaExec#setMaxHeapSize(java.lang.String), org.gradle.api.tasks.JavaExec#getJvmArgs(), org.gradle.api.tasks.JavaExec#setJvmArgs(java.util.List), org.gradle.api.tasks.JavaExec#setJvmArgs(java.lang.Iterable), org.gradle.api.tasks.JavaExec#getJvmArgumentProviders(), org.gradle.api.tasks.JavaExec#getBootstrapClasspath(), org.gradle.api.tasks.JavaExec#setBootstrapClasspath(org.gradle.api.file.FileCollection), org.gradle.api.tasks.JavaExec#bootstrapClasspath([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#bootstrapClasspath([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#getEnableAssertions(), org.gradle.api.tasks.JavaExec#setEnableAssertions(boolean), org.gradle.api.tasks.JavaExec#setDebug(boolean), org.gradle.api.tasks.JavaExec#getAllJvmArgs(), org.gradle.api.tasks.JavaExec#setAllJvmArgs(java.lang.Iterable), org.gradle.api.tasks.JavaExec#setAllJvmArgs(java.util.List), org.gradle.api.tasks.JavaExec#systemProperties(java.util.Map), org.gradle.api.tasks.JavaExec#systemProperties(java.util.Map), org.gradle.api.tasks.JavaExec#setArgsString(java.lang.String), org.gradle.api.tasks.JavaExec#getExecutionResult(), org.gradle.api.tasks.JavaExec#debugOptions(org.gradle.api.Action), org.gradle.api.tasks.JavaExec#getDebugOptions(), org.gradle.api.tasks.JavaExec#setExecutable(java.lang.String), org.gradle.api.tasks.JavaExec#setExecutable(java.lang.Object), org.gradle.api.tasks.JavaExec#getClasspath(), org.gradle.api.tasks.JavaExec#classpath([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#classpath([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#getExecutable(), org.gradle.api.tasks.JavaExec#getJavaVersion(), org.gradle.api.tasks.JavaExec#getArgs(), org.gradle.api.tasks.JavaExec#systemProperty(java.lang.String, java.lang.Object), org.gradle.api.tasks.JavaExec#systemProperty(java.lang.String, java.lang.Object), org.gradle.api.tasks.JavaExec#copyTo(org.gradle.process.JavaForkOptions), org.gradle.api.tasks.JavaExec#copyTo(org.gradle.process.JavaForkOptions), org.gradle.api.tasks.JavaExec#copyTo(org.gradle.process.ProcessForkOptions), org.gradle.api.tasks.JavaExec#copyTo(org.gradle.process.ProcessForkOptions), org.gradle.api.tasks.JavaExec#getSystemProperties(), org.gradle.api.tasks.JavaExec#executable(java.lang.Object), org.gradle.api.tasks.JavaExec#executable(java.lang.Object), org.gradle.api.tasks.JavaExec#args([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#args([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#args(java.lang.Iterable), org.gradle.api.tasks.JavaExec#getDebug(), org.gradle.api.tasks.JavaExec#exec(), org.gradle.api.tasks.JavaExec#environment(java.lang.String, java.lang.Object), org.gradle.api.tasks.JavaExec#environment(java.lang.String, java.lang.Object), org.gradle.api.tasks.JavaExec#environment(java.util.Map), org.gradle.api.tasks.JavaExec#environment(java.util.Map), org.gradle.api.tasks.JavaExec#conventionMapping(java.lang.String, groovy.lang.Closure), org.gradle.api.tasks.JavaExec#conventionMapping(java.lang.String, java.util.concurrent.Callable), org.gradle.api.tasks.JavaExec#getConventionMapping(), org.gradle.api.tasks.JavaExec#getProject(), org.gradle.api.tasks.JavaExec#setDescription(java.lang.String), org.gradle.api.tasks.JavaExec#getIdentityPath(), org.gradle.api.tasks.JavaExec#getStandardOutputCapture(), org.gradle.api.tasks.JavaExec#setGroup(java.lang.String), org.gradle.api.tasks.JavaExec#getAnt(), org.gradle.api.tasks.JavaExec#getConvention(), org.gradle.api.tasks.JavaExec#getLogging(), org.gradle.api.tasks.JavaExec#getLogging(), org.gradle.api.tasks.JavaExec#getDidWork(), org.gradle.api.tasks.JavaExec#getAsDynamicObject(), org.gradle.api.tasks.JavaExec#setFinalizedBy(java.lang.Iterable), org.gradle.api.tasks.JavaExec#getFinalizedBy(), org.gradle.api.tasks.JavaExec#shouldRunAfter([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#setShouldRunAfter(java.lang.Iterable), org.gradle.api.tasks.JavaExec#getShouldRunAfter(), org.gradle.api.tasks.JavaExec#usesService(org.gradle.api.provider.Provider), org.gradle.api.tasks.JavaExec#setDependsOn(java.lang.Iterable), org.gradle.api.tasks.JavaExec#dependsOn([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#onlyIf(org.gradle.api.specs.Spec), org.gradle.api.tasks.JavaExec#onlyIf(groovy.lang.Closure), org.gradle.api.tasks.JavaExec#setOnlyIf(org.gradle.api.specs.Spec), org.gradle.api.tasks.JavaExec#setOnlyIf(groovy.lang.Closure), org.gradle.api.tasks.JavaExec#setDidWork(boolean), org.gradle.api.tasks.JavaExec#doFirst(org.gradle.api.Action), org.gradle.api.tasks.JavaExec#doFirst(groovy.lang.Closure), org.gradle.api.tasks.JavaExec#doFirst(java.lang.String, org.gradle.api.Action), org.gradle.api.tasks.JavaExec#doLast(org.gradle.api.Action), org.gradle.api.tasks.JavaExec#doLast(java.lang.String, org.gradle.api.Action), org.gradle.api.tasks.JavaExec#doLast(groovy.lang.Closure), org.gradle.api.tasks.JavaExec#getEnabled(), org.gradle.api.tasks.JavaExec#getOutputs(), org.gradle.api.tasks.JavaExec#getOutputs(), org.gradle.api.tasks.JavaExec#getDestroyables(), org.gradle.api.tasks.JavaExec#getLocalState(), org.gradle.api.tasks.JavaExec#getTemporaryDir(), org.gradle.api.tasks.JavaExec#mustRunAfter([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#setMustRunAfter(java.lang.Iterable), org.gradle.api.tasks.JavaExec#getMustRunAfter(), org.gradle.api.tasks.JavaExec#finalizedBy([Ljava.lang.Object;), org.gradle.api.tasks.JavaExec#setActions(java.util.List), org.gradle.api.tasks.JavaExec#getDependsOn(), org.gradle.api.tasks.JavaExec#getTaskDependencies(), org.gradle.api.tasks.JavaExec#getTaskDependencies(), org.gradle.api.tasks.JavaExec#getTaskIdentity(), org.gradle.api.tasks.JavaExec#injectIntoNewInstance(org.gradle.api.internal.project.ProjectInternal, org.gradle.api.internal.project.taskfactory.TaskIdentity, java.util.concurrent.Callable), org.gradle.api.tasks.JavaExec#getTaskActions(), org.gradle.api.tasks.JavaExec#hasTaskActions(), org.gradle.api.tasks.JavaExec#getOnlyIf(), org.gradle.api.tasks.JavaExec#getImpliesSubProjects(), org.gradle.api.tasks.JavaExec#setImpliesSubProjects(boolean), org.gradle.api.tasks.JavaExec#replaceLogger(org.gradle.api.logging.Logger), org.gradle.api.tasks.JavaExec#getTemporaryDirFactory(), org.gradle.api.tasks.JavaExec#prependParallelSafeAction(org.gradle.api.Action), org.gradle.api.tasks.JavaExec#appendParallelSafeAction(org.gradle.api.Action), org.gradle.api.tasks.JavaExec#isHasCustomActions(), org.gradle.api.tasks.JavaExec#getRequiredServices(), org.gradle.api.tasks.JavaExec#getSharedResources(), org.gradle.api.tasks.JavaExec#getExtensions(), org.gradle.api.tasks.JavaExec#getTimeout(), org.gradle.api.tasks.JavaExec#isEnabled(), org.gradle.api.tasks.JavaExec#configure(groovy.lang.Closure), org.gradle.api.tasks.JavaExec#configure(groovy.lang.Closure), org.gradle.api.tasks.JavaExec#getDescription(), org.gradle.api.tasks.JavaExec#setEnabled(boolean), org.gradle.api.tasks.JavaExec#property(java.lang.String), org.gradle.api.tasks.JavaExec#hasProperty(java.lang.String), org.gradle.api.tasks.JavaExec#getGroup(), org.gradle.api.tasks.JavaExec#getInputs(), org.gradle.api.tasks.JavaExec#getInputs(), org.gradle.api.tasks.JavaExec#compareTo(java.lang.Object), org.gradle.api.tasks.JavaExec#compareTo(org.gradle.api.Task), org.gradle.api.tasks.JavaExec#getName(), org.gradle.api.tasks.JavaExec#setProperty(java.lang.String, java.lang.Object), org.gradle.api.tasks.JavaExec#getLogger(), org.gradle.api.tasks.JavaExec#getActions(), org.gradle.api.tasks.JavaExec#getState(), org.gradle.api.tasks.JavaExec#getState(), org.gradle.api.tasks.JavaExec#getPath(), org.gradle.api.tasks.JavaExec#wait(long), org.gradle.api.tasks.JavaExec#wait(long, int), org.gradle.api.tasks.JavaExec#wait(), org.gradle.api.tasks.JavaExec#equals(java.lang.Object), org.gradle.api.tasks.JavaExec#toString(), org.gradle.api.tasks.JavaExec#hashCode(), org.gradle.api.tasks.JavaExec#getClass(), org.gradle.api.tasks.JavaExec#notify(), org.gradle.api.tasks.JavaExec#notifyAll() |
The Liquibase command to run.
Whether or not the command needs a value, such as "tag" or "rollbackCount"
Watch for changes to the extension's mainClassName and make sure the task's main class is set correctly. This method was created because Gradle 6.4 made changes to the main class preventing us from calling setMain during the execution phase.
Fix the main class to be used when running Liquibase. Since we can't call setMain directly in Gradle 6.4+, we had to register a listener that watched for changes to the extension's "mainClassName" property. But if the user didn't set a value, we'll need to set one before we try to run Liquibase so the property listener can set the class name correctly.
This method detects the resolved version of Liquibase in the liquibaseRuntime configuration and chooses the right default based on the version it finds.
If for some reason, it finds Liquibase in the classpath more than once, the last one it finds, wins.
Compare a given Liquibase semver to a target semver and return whether the given semver is at least the version of the target.
givenSemver
- the version of Liquibase found in the classpathtargetSemver
- the target version to use as a comparison.Build the proper command line and call Liquibase.
activity
- the activity holding the Liquibase particulars.