3.4. 同じクラスターからのリモートパイプラインまたはタスクの指定
クラスターリゾルバーを使用して、Red Hat OpenShift Pipelines を実行している OpenShift Container Platform クラスター上の namespace で定義されているリモートパイプラインまたはタスクを指定できます。
特に、クラスターリゾルバーを使用して、OpenShift Pipelines がインストール namespace (通常は openshift-pipelines
namespace) で提供するタスクにアクセスできます。
3.4.1. クラスターリゾルバーの設定
クラスターリゾルバーのデフォルトの種類と namespace を変更したり、クラスターリゾルバーが使用できる namespace を制限したりできます。
手順
TektonConfig
カスタムリソースを編集するには、次のコマンドを入力します。$ oc edit TektonConfig config
TektonConfig
カスタムリソースで、pipeline.cluster-resolver-config
仕様を編集します。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.4.2. クラスターリゾルバーを使用したリモートパイプラインまたはタスクの指定
パイプライン実行を作成するときに、同じクラスターからのリモートパイプラインを指定できます。パイプラインまたはタスク実行を作成するときに、同じクラスターからリモートタスクを指定できます。
手順
同じクラスターからリモートパイプラインまたはタスクを指定するには、
pipelineRef
またはtaskRef
仕様で以下の参照形式を使用します。# ... resolver: cluster params: - name: name value: <name> - name: namespace value: <namespace> - name: kind value: [pipeline|task] # ...
表3.4 クラスターリゾルバーでサポートされているパラメーター パラメーター 説明 値の例 name
取得するリソースの名前。
some-pipeline
namespace
リソースを含むクラスター内の namespace。
other-namespace
kind
取得するリソースの種類。
パイプライン
パイプラインまたはタスクに追加のパラメーターが必要な場合は、これらのパラメーターを
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