3.6. 从同一集群中指定管道、任务或步骤操作
您可以使用集群解析器指定运行 Red Hat OpenShift Pipelines 的 OpenShift Container Platform 集群的命名空间中定义的管道、任务或 StepAction
定义。
特别是,您可以使用集群解析器访问 OpenShift Pipelines 在其安装命名空间中提供的任务,通常是 openshift-pipelines
命名空间。
3.6.1. 配置集群解析器
您可以更改集群解析器的默认类型和命名空间,或者限制集群解析器可以使用的命名空间。
流程
要编辑
TektonConfig
自定义资源,请输入以下命令:$ oc edit TektonConfig config
在
TektonConfig
自定义资源中,编辑pipeline.cluster-resolver-config
spec:apiVersion: operator.tekton.dev/v1alpha1 kind: TektonConfig metadata: name: config spec: pipeline: cluster-resolver-config: default-kind: pipeline 1 default-namespace: namespace1 2 allowed-namespaces: namespace1, namespace2 3 blocked-namespaces: namespace3, namespace4 4
3.6.2. 使用集群解析器从同一集群中指定管道、任务或步骤操作
在创建管道运行时,您可以指定同一集群中存在的管道。在创建管道或任务运行时,您可以指定同一集群中存在的任务。在任务中创建步骤时,您可以指定同一集群中存在的 StepAction
定义。
流程
要指定同一集群中的管道、任务或
StepAction
定义,请在pipelineRef
,taskRef
, 或step.ref
spec 中使用以下引用格式:# ... resolver: cluster params: - name: name value: <name> - name: namespace value: <namespace> - name: kind value: [pipeline|task|stepaction] # ...
表 3.7. 集群解析器支持的参数 参数 描述 示例值 名称
要获取的资源的名称。
some-pipeline
namespace
包含资源的集群中的命名空间。
other-namespace
kind
要获取的资源类型。
pipeline
如果管道或任务需要额外的参数,请在
params
中提供这些参数。
例子
以下示例管道运行引用来自同一集群的管道:
apiVersion: tekton.dev/v1 kind: PipelineRun metadata: name: cluster-pipeline-reference-demo spec: pipelineRef: resolver: cluster params: - name: name value: some-pipeline - name: namespace value: test-namespace - name: kind value: pipeline params: - name: sample-pipeline-parameter value: test
以下示例管道引用同一集群中的任务:
apiVersion: tekton.dev/v1 kind: Pipeline metadata: name: pipeline-with-cluster-task-reference-demo spec: tasks: - name: "cluster-task-reference-demo" taskRef: resolver: cluster params: - name: name value: some-task - name: namespace value: test-namespace - name: kind value: task params: - name: sample-task-parameter value: test
以下示例任务运行引用同一集群中的任务:
apiVersion: tekton.dev/v1 kind: TaskRun metadata: name: cluster-task-reference-demo spec: taskRef: resolver: cluster params: - name: name value: some-task - name: namespace value: test-namespace - name: kind value: task params: - name: sample-task-parameter value: test
以下示例任务包含引用同一集群中的 StepAction
定义的步骤:
apiVersion: tekton.dev/v1 kind: Task metadata: name: cluster-stepaction-reference-demo spec: steps: - name: example-step ref: resolver: cluster params: - name: name value: some-step - name: namespace value: test-namespace - name: kind value: stepaction params: - name: sample-stepaction-parameter value: test