GoCD流水线模板
模板化有助于创建可重用的工作流,以便更轻松地完成诸如创建和维护分支以及管理大量流水线的任务。
创建流水线模板
可以从管理页面的模板选项卡管理流水线模板。
点击“添加新模板”将弹出以下表单,允许您创建一个全新的模板,或从现有流水线中提取。保存后,所指示的流水线也将开始使用这个新创建的模板。
还可以通过“提取模板”链接从流水线中提取模板。这可以在管理页面的“流水线”选项卡中找到。
示例
例如,假设有一个名为“my-app”的流水线组,其中包含一个名为“app-trunk”的流水线,该流水线从主干构建应用程序。现在,如果我们需要创建另一个名为“app-1.0-branch”的流水线,该流水线构建应用程序的1.0版本,我们可以如下使用流水线模板:
使用管理UI
- 通过从流水线“app-trunk”中提取来创建一个名为“my-app-build”的模板,如上一节所示。
- 创建一个新的流水线“app-1.0-branch”,定义带有分支URL的SCM材料,并使用模板“my-app-build”。
使用XML
高级用户可以按照以下方式配置:
<pipelines group="my-app">
<pipeline name="app-trunk" template="my-app-build">
<materials>
<svn url="http://my-svn-url/trunk" />
</materials>
</pipeline>
<pipeline name="app-1.0-branch" template="my-app-build">
<materials>
<svn url="http://my-svn-url/branches/1.0" />
</materials>
</pipeline>
</pipelines>
<templates>
<pipeline name="my-app-build">
<stage name="build">
<jobs>
<job name="compile">
<tasks>
<ant target="compile" />
</tasks>
</job>
</jobs>
</stage>
</pipeline>
</templates>
编辑流水线模板
GoCD管理员现在可以通过以下方式让任何GoCD用户编辑模板:将他们设置为模板管理员.
模板管理员可以在管理页面的模板选项卡中查看和编辑他们有权限的模板。然而,模板管理员将无法添加、删除或更改模板的权限。他们还可以看到模板被使用的流水线条数,但无法查看这些流水线的详细信息。
查看流水线模板
管理员和流水线组管理员在编辑或创建流水线时可以查看流水线模板。
点击箭头所指的图标将显示以下内容:
弹出窗口显示为流水线“Service_1”配置的模板“Services-Template”的摘要。
- 显示为阶段“compile”配置的作业“compile-job”的详细信息。
- 表示为任务设置的工作目录是“go/service_1”,后面跟着“$”符号,然后是命令。
- 如果配置了任何“取消任务”,它将如此显示。
- 显示此任务的“运行条件”。