开发者

How do you manage the configuration of a grails application deployed as a "product"?

开发者 https://www.devze.com 2022-12-21 16:06 出处:网络
I\'ve recently written my first grails application. The application is a \"product\" in that I\'d like to build a sing开发者_如何学编程le version of the application that can be deployed to multiple c

I've recently written my first grails application. The application is a "product" in that I'd like to build a sing开发者_如何学编程le version of the application that can be deployed to multiple customers as a war file.

I need to be able to configure each application differently. What is the "best practice" for deploying a grails application as a product.


I found this documentation after some searching on the grails site.

3.4 Externalized Configuration

The default configuration file Config.groovy in grails-app/conf is fine in the majority of cases, but there may be circumstances where you want to maintain the configuration in a file outside the main application structure. For example if you are deploying to a WAR some administrators prefer the configuration of the application to be externalized to avoid having to re-package the WAR due to a change of configuration.

In order to support deployment scenarios such as these the configuration can be externalized. To do so you need to point Grails at the locations of the configuration files Grails should be using by adding a grails.config.locations setting in Config.groovy:

grails.config.locations = [ "classpath:${appName}-config.properties",
                            "classpath:${appName}-config.groovy",
                            "file:${userHome}/.grails/${appName}-config.properties",
                            "file:${userHome}/.grails/${appName}-config.groovy"]

In the above example we're loading configuration files (both Java properties files and ConfigSlurper configurations) from different places on the classpath and files located in USER_HOME.

Ultimately all configuration files get merged into the config property of the GrailsApplication object and are hence obtainable from there.


See the section on External configuration at this link. I'm not sure if this will configure everything you need but it should be a start and will cover the basics such as data sources.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号