将tagTemplate作为命令行参数传递-Gradle Release Plugin

时间:2019-07-23 22:00:08

标签: gradle-release-plugin

我必须根据环境以及将标签/推入关联来创建构建。目前,我的发布设置中有tagTemplate ='release-$ {version}'。 tagTemplate(发行版)的第一部分是我们在管道中用于触发构建的内容,每个构建都需要稍微不同的args。

我需要能够传递一个参数,该参数将“ release”替换为其他构建类型。

理想情况下,我希望能够传递模板“发布”部分中的内容,因此设置如下所示:

tagTemplate = '${tagPrefix}-${version}'

然后我将能够运行命令:

gradle release -PtagPrefix='build1'

我试图像这样传递它:

gradle release -PtagTemplate='build1-${version}'
gradle release -Prelease.tagTemplate='build1-${version}'
gradle release -Pproject.release.tagTemplate='build1-${version}'

这些工作都没有。

1 个答案:

答案 0 :(得分:0)

gradle版本-PtagPrefix可通过roject.findProperty('tagPrefix')获得。 我不确定是否可以对属性args使用模板字符串,因为这取决于何时评估它们。

我会推荐

release {
    def tagPrefix = project.findProperty('tagPrefix') != null ? project.findProperty('tagPrefix') : 'default'
    tagTemplate = '${tagPrefix}-${version}'
}