各ビルド マシン (dev、ci、uat、...) で外部プロパティ ファイルを使用して Gradle ビルド スクリプトの「グローバル」構成を制御し、コマンド ライン引数でファイル名を指定したいと考えています。
例えばgradle -DbuildProperties=/example/config/build.properties
既にこのアプローチを使用している既存のプロジェクトがあり、(たとえば) すべてのプロジェクトを変更せずにデータベースの URL と jdbc ドライバーを修正できるようにしたいので、特に gradle.properties を使用したくありません。
これまで試してみました:-
Properties props = new Properties()
props.load(new FileInputStream("$filename"))
project.setProperty('props', props)
これは機能しますが、非推奨の警告がありますが、これを回避する方法がわかりません。
ConfigSlurper で groovy スタイルの構成ファイルを使用してみました:-
environments {
dev {
db.security {
driver=net.sourceforge.jtds.jdbc.Driver
url=jdbc:someserver://somehost:1234/some_db
username=userId
password=secret
}
}
}
しかし、コロンとスラッシュが原因で例外が発生しているため、エスケープ文字で構成を台無しにする必要はありません。
これを行うには非推奨の方法が必要です-誰かがそれを行う「正しい」方法を提案できますか?
ありがとう