Groovy の SimpleTemplateEngine クラスの機能を使用することで、ファイルコピー時にファイル内の文字列を置換することができます。
例えば、入力ファイルとして、下記のようなテンプレートファイルを用意しておきます。
version=${version}
buildDate=${buildDate.format("yyyyMMdd'T'HHmmss")}
${string}
という部分が動的に置換される部分です。
そこにどんな値を格納するかは、コピータスクの expand()
メソッドで指定します。
task hello(type: Copy) {
from 'input'
include 'build.properties'
into 'output'
expand([
version: '1.0.0',
buildDate: new Date()
])
}
上記のタスクを実行すると、下記のようなファイルが出力されます。
version=1.0.0
buildDate=20150630T224515