参数化您的配置
GoCD允许您参数化您的流水线和流水线模板。此强大功能可以帮助减少配置中的重复,并且还可以通过结合使用参数和流水线模板来实现复杂的设置。
使用Web界面
编辑参数选项卡以定义pipeline .
定义和使用参数
参数值在<params>
标签内定义,并可以在该流水线的任何位置使用#{param_name}。以下示例定义了一个名为“myParam”的新参数并在作业中使用它。
<pipeline name="my_pipeline">
<params>
<param name="myParam">hello world</param>
</params>
<stage name="my_stage">
<jobs>
<job name="my_job">
<tasks>
<exec command="echo" args="#{myParam}"/>
</tasks>
</job>
</jobs>
</stage>
</pipeline>
注意:如果您想使用#字面量,可以使用另一个#字面量来转义它。例如,如果参数“foo”的值为“one”,那么:
字符串 | 计算结果为 |
---|---|
#{foo} | one |
##{foo} | #{foo} |
###{foo} | #one |
在流水线模板中使用参数
参数在模板内的使用与在流水线中的使用类似。唯一的区别是您不能在模板中定义参数。
<pipeline name="trunk" template="my_template">
<params>
<param name="WORKING_DIR">trunk</param>
</params>
...
</pipeline>
<pipeline name="branch" template="my_template">
<params>
<param name="WORKING_DIR">branch</param>
</params>
...
</pipeline>
上面定义的参数用于下面的模板。
<pipeline name="my_template">
<stage name="my_stage">
<jobs>
<job name="my_job">
<tasks>
<exec command="echo"