0

我尝试设置一个 github webhook 以按照这些文档触发 OpenShift 上的构建。

我对两件事感到困惑:

(1)当我创建秘密时,按照上述文档的规定,我需要创建一个还是两个 YAML 条目?IE。以下片段(取自上面的链接)是否应该是相同的 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 时,我应该<secret>在上面的 URL 中替换什么?另外,我应该在 Github 上的 Secret 文本框中输入什么(见下面的截图)

在此处输入图像描述

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

4

1 回答 1

1

在 OpenShift 4.x 中获取完整GitHub Webhook 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
...

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

$ 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

于 2019-09-22T18:52:14.350 回答