为 OpenShift 构建设置 GitHub webhooks

Setting up GitHub webhooks for an OpenShift build

我尝试设置一个 github webhook 以在 these docs 之后触发 OpenShift 上的构建。

我对两件事感到困惑:

(1) 当我按照上述文档的规定创建秘密时,我是否需要创建一个或两个 YAML 条目? IE。以下片段(摘自上述 link)是否应该是相同的 YAML 条目?

type: "GitHub"
github:
  secretReference:
    name: "mysecret"

第二个是:

- kind: Secret
  apiVersion: v1
  metadata:
    name: mysecret
    creationTimestamp:
  data:
    WebHookSecretKey: c2VjcmV0dmFsdWUx

(2) 如果我查询 oc describe bc [name-of-my-build-config],我得到(所有 [this] 形式的掩码都是我添加的)

Webhook GitHub:
    URL:    https://[blabla].openshift-online.com:6443/apis/build.openshift.io/v1/namespaces/[my-namespace]/buildconfigs/[my-build-config]/webhooks/<secret>/github 

所以现在当我输入此 url 作为 GitHub webhook 时,我应该将上面 URL 中的 <secret> 替换为什么?另外,我应该在 Github 的 Secret 文本框中输入什么(见下面的截图)

我知道 WebHookSecretKey: c2VjcmV0dmFsdWUx 只是明文密钥的编码版本...那么我应该在哪里使用明文密钥?我是否也应该在任何地方使用 mysecret,例如在上面的 url 中用 <secret> 代替?

在 OpenShift 4.x 中获取 full GitHub Webhook URL 的最简单方法是首先获取 URL来自

$ oc describe bc my-build

...
Webhook GitHub:
    URL:    https://api.example.com:6443/apis/build.openshift.io/v1/namespaces/my-project/buildconfigs/my-build/webhooks/<secret>/github
...

然后,要填写 URL 的 <secret> 部分,您可以从

$ oc get bc -o yaml

...
  triggers:
  - github:
      secret: 467ed550-c447-411d-87ad-2d3a3fa81538
    type: GitHub
...

因此,对于此示例,GitHub Webhook URL 将是

https://api.example.com:6443/apis/build.openshift.io/v1/namespaces/my-project/buildconfigs/my-build/webhooks/467ed550-c447-411d-87ad-2d3a3fa81538/github