3.14. 为 Webhook 设置其他选项


另外,您可以为 OpenShift Pipelines 中几个控制器创建的 webhook 设置 failurePolicytimeoutSecondssideEffects 选项。有关这些选项的更多信息,请参阅 Kubernetes 文档

先决条件

  • 已安装 oc 命令行工具。
  • 您使用安装 OpenShift Pipelines 的命名空间的管理员权限登录到 OpenShift Container Platform 集群,通常是 openshift-pipelines 命名空间。

流程

  1. 查看 OpenShift Pipelines 控制器创建的 webhook 列表。Webhook 有两种类型:变异 Webhook 和验证 Webhook。

    1. 要查看变异 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

    2. 要查看验证 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

  2. TektonConfig 自定义资源(CR)中,根据需要为每个控制器添加变异并验证 Webhook 的配置,如下例所示。将 validation.webhook.pipeline.tekton.dev spec 用于验证 webhook,将 webhook.pipeline.tekton.dev spec 用于变异 Webhook。

    重要
    • 您无法为 Operator Webhook 设置配置
    • 所有设置都是可选的。例如,您可以设置 timeoutSeconds 参数,并省略 failurePolicysideEffects 参数。

    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

    Triggers 控制器的设置示例

    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

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.