我知道有一个Flyway2插件。但是我不满意,因为它似乎适合通过控制台命令工作。我想要的是以一种程序化的方式整合Flyway:
第一次集成测试使用flyway来处理带有H2数据库的数据库模式
第二个Flyway get在tomcat部署时被触发并处理环境数据库(可能是通过从bootstrap运行它来的吗?)
有没有人经历过这个?
经过一番讨论后编辑:
为了使用插件,我需要从spring上下文中获取完全配置的GFlyway实例。这变得很困难,因为bean only属性是def config
,它将从中读取所有必需的属性。问题是如何在resources.groovy中复制这种行为...如何将应用程序配置作为参数提供给bean。
答案 0 :(得分:1)
正如我们在评论中讨论的那样,将其配置为bean的正确方法是:
// Resources.groovy
beans {
grailsApplication = ref('grailsApplication')
gFlyaway(gflyway2.GFlyway) {
config = grailsApplication.config
}
}
按照插件documentation的Config.groovy
内的常规方式配置设置。
那应该让你更接近,如果不是那么一切。