Gradle:如何在正常构建过程中运行LIquibase变更集?

时间:2015-10-16 21:14:17

标签: gradle build liquibase changeset

我正在使用Gradle 2.7和Gradle Liquibase插件v 1.1.1。如何使用

运行我的changeSet作为正常构建的一部分
gradle build

?我目前在build.gradle文件中有这个...

liquibase {
  activities {
    main {
        File propsFile = new File("${project.rootDir}/src/main/resources/liquibase.properties")
      Properties properties = new Properties()
      properties.load(new FileInputStream(propsFile))
      changeLogFile 'src/main/resources/db.changelog-1.0.xmlll'
      url '${url}'
      username '${username}'
      password '${password}'
    }
    runList = main
  }
}

但是当我运行上面的命令(“gradle build”)时,上面的命令不会运行。我知道它没有运行,因为用户名/密码不正确,我没有以“.xmlll”结尾的更改日志文件。我需要添加什么来确保hte插件总是尝试执行变更集?

2 个答案:

答案 0 :(得分:3)

您需要定义从构建到更新的任务依赖关系。

build.dependsOn update

要在测试之前运行任务(假设您没有定义新任务),可以执行

test.dependsOn update

价:

答案 1 :(得分:0)

您可以在gradle构建文件

中定义它
apply plugin: 'liquibase'
dependencies {
  classpath 'org.liquibase:liquibase-gradle-plugin:1.2.0'
}
liquibase {
  activities {
     main {
  changeLogFile 'changelog.xml'
  url 'jdbc:h2:db/liquibase_workshop;FILE_LOCK=NO'
  username 'sa'
  password ''
      }
 }

然后运行此命令
gradle update