第 32 章 配置管道执行
32.1. 概述
用户第一次使用 Pipeline 构建策略创建构建配置,OpenShift Container Platform 会在 openshift
命名空间中查找名为 jenkins-ephemeral
的模板,并在用户项目中实例化它。OpenShift Container Platform 附带的 jenkins-ephemeral
模板会在实例化时创建:
- 使用官方 OpenShift Container Platform Jenkins 镜像的 Jenkins 部署配置
- 用于访问 Jenkins 部署的服务和路由
- 新的 Jenkins 服务帐户
- RoleBindings 为服务帐户授予项目编辑访问权限
集群管理员可以通过修改内置模板的内容或编辑集群配置来将集群定向到不同的模板位置来控制创建的内容。
修改默认模板的内容:
$ oc edit template jenkins-ephemeral -n openshift
要使用不同的模板,如 Jenkins 使用持久性存储的 jenkins-persistent
模板,请将以下内容添加到 master 配置文件中:
jenkinsPipelineConfig: autoProvisionEnabled: true 1 templateNamespace: openshift 2 templateName: jenkins-persistent 3 serviceName: jenkins-persistent-svc 4 parameters: 5 key1: value1 key2: value2
创建 Pipeline 构建配置时,OpenShift Container Platform 会查找匹配 serviceName
的服务。这意味着必须选择 serviceName
,以便它在项目中是唯一的。如果没有找到 Service,OpenShift Container Platform 会实例化 jenkinsPipelineConfig
模板。如果这不是必须的(例如,要使用 OpenShift Container Platform 外部的 Jenkins 服务器),您可以执行一些操作,具体取决于您是谁。
-
如果您是集群管理员,只需将
autoProvisionEnabled
设置为false
。这将在集群中禁用自动置备。 -
如果您是未激活的用户,则必须创建一个服务供 OpenShift Container Platform 使用。服务名称必须与
jenkinsPipelineConfig
中的serviceName
的集群配置值匹配。默认值为jenkins
。如果您要禁用自动置备,因为您要在项目之外运行 Jenkins 服务器,建议您将这个新服务指向现有的 Jenkins 服务器。请参阅:集成外部服务
后一选项也可用于仅在选择的项目中禁用自动置备。