通过更新Config.groovy中的grails.config.locations,然后在.grails / $ {appName} -config.properties中设置特定配置,我已经能够为开发环境外部化DataSource配置:
dataSource.driverClassName = com.mysql.jdbc.Driver
dataSource.url = jdbc:mysql://localhost/db-dev
dataSource.username = root
dataSource.password = pass
对于'测试'环境,我有不同的数据库,所以我想相应地更新test.dataSource.url,但这不起作用。当运行'grails test'模式时(即grails test dgm-update),它仍然需要'dev'dataSource.url。如何外化测试环境DataSource配置?
感谢您的帮助
答案 0 :(得分:1)
grails.config.locations = ["file:${userHome}/.grails/${appName}-config-${grails.util.Environment.current.name}.properties"]
然后为每个env放置嵌套文件:
/home/me/.grails/myapp-config-dev.properties
/home/me/.grails/myapp-config-test.properties
/home/me/.grails/myapp-config-production.properties
答案 1 :(得分:0)
尝试使用Groovy外部配置,即“.grails / $ {appName} -config.groovy”与环境特定的DSL:
environments {
test {
dataSource {
...
}
}
}