3.14. Webhook の追加オプションの設定
オプションとして、OpenShift Pipelines 内の複数のコントローラーによって作成された Webhook に対して、failurePolicy
、timeoutSeconds
、または sideEffects
オプションを設定できます。これらのオプションの詳細は、Kubernetes のドキュメント を参照してください。
前提条件
-
oc
コマンドラインユーティリティーをインストールしている。 -
OpenShift Pipelines がインストールされている namespace (通常は
openshift-pipelines
namespace) の管理者権限で OpenShift Container Platform クラスターにログインしている。
手順
OpenShift パイプラインコントローラーが作成した Webhook の一覧を表示します。Webhook には、変更用 Webhook と検証 Webhook の 2 つのタイプがあります。
変更用の Webhook のリストを表示するには、以下のコマンドを入力します。
$ oc get MutatingWebhookConfiguration
出力例
NAME WEBHOOKS AGE annotation.operator.tekton.dev 1 4m20s proxy.operator.tekton.dev 1 4m20s webhook.operator.tekton.dev 1 4m22s webhook.pipeline.tekton.dev 1 4m20s webhook.triggers.tekton.dev 1 3m50s
検証用 Webhook の一覧を表示するには、以下のコマンドを入力します。
$ oc get ValidatingWebhookConfiguration
出力例
NAME WEBHOOKS AGE config.webhook.operator.tekton.dev 1 4m24s config.webhook.pipeline.tekton.dev 1 4m22s config.webhook.triggers.tekton.dev 1 3m52s namespace.operator.tekton.dev 1 4m22s validation.pipelinesascode.tekton.dev 1 2m49s validation.webhook.operator.tekton.dev 1 4m24s validation.webhook.pipeline.tekton.dev 1 4m22s validation.webhook.triggers.tekton.dev 1 3m52s
TektonConfig
カスタムリソース (CR) で、次の例に示すように、必要に応じて各コントローラーのセクションの下に、Webhook を変更および検証するための設定を追加します。検証用の Webhook にはvalidation.webhook.pipeline.tekton.dev
仕様、変更用の Webhook にはwebhook.pipeline.tekton.dev
仕様を使用します。重要-
Operator
Webhook の設定を指定できません。 -
すべての設定はオプションです。たとえば、
timeoutSeconds
パラメーターを設定し、failurePolicy
およびsideEffects
パラメーターを省略できます。
Pipelines コントローラーの設定例
apiVersion: operator.tekton.dev/v1 kind: TektonConfig metadata: name: config spec: pipeline: options: webhookConfigurationOptions: validation.webhook.pipeline.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None webhook.pipeline.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None
トリガーコントローラーの設定例
apiVersion: operator.tekton.dev/v1 kind: TektonConfig metadata: name: config spec: triggers: options: webhookConfigurationOptions: validation.webhook.triggers.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None webhook.triggers.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None
Pipelines as Code コントローラーの設定例
apiVersion: operator.tekton.dev/v1 kind: TektonConfig metadata: name: config spec: pipelinesAsCode: options: webhookConfigurationOptions: validation.pipelinesascode.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None pipelines.triggers.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None
Tekton Hub コントローラーの設定例
apiVersion: operator.tekton.dev/v1 kind: TektonConfig metadata: name: config spec: hub: options: webhookConfigurationOptions: validation.webhook.hub.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None webhook.hub.tekton.dev: failurePolicy: Fail timeoutSeconds: 20 sideEffects: None
-