$ oc get bc/ostoy-microservice -o=jsonpath='{.spec.triggers..github.secret}'
使用 Webhook,您可以随时更改源代码并自动触发构建和部署。有关此过程的更多信息,请参阅触发构建。
要在终端中获取 GitHub Webhook 触发器密钥,请运行以下命令:
$ oc get bc/ostoy-microservice -o=jsonpath='{.spec.triggers..github.secret}'
`o_3x9M1qoI2Wj_cz1WiK`
您需要在稍后的步骤中使用此密钥。 |
要从 OSToy 的 buildconfig 获取 GitHub Webhook 触发器 URL,请运行以下命令:
$ oc describe bc/ostoy-microservice
[...]
Webhook GitHub:
URL: https://api.demo1234.openshift.com:443/apis/build.openshift.io/v1/namespaces/ostoy-s2i/buildconfigs/ostoy/webhooks/<secret>/github
[...]
在 GitHub Webhook URL 中,将<secret>
文本替换为您检索到的密钥。您的 URL 将类似于以下示例输出:
https://api.demo1234.openshift.com:443/apis/build.openshift.io/v1/namespaces/ostoy-s2i/buildconfigs/ostoy-microservice/webhooks/o_3x9M1qoI2Wj_czR1WiK/github
在 GitHub 存储库中设置 Webhook URL。
在您的存储库中,单击**设置 > Webhook > 添加 Webhook**。
将包含“密钥”的 GitHub Webhook URL 粘贴到“有效负载 URL”字段中。
将“内容类型”更改为application/json
。
单击**添加 Webhook**按钮。
您应该会看到 GitHub 发出的消息,说明您的 Webhook 已成功配置。现在,每当您向 GitHub 仓库推送更改时,都会自动启动新的构建,并在构建成功后启动新的部署。
现在,更改源代码。任何更改都会自动触发构建和部署。在此示例中,表示 OSToy 应用程序状态的颜色是随机选择的。要测试配置,请将方框更改为仅显示灰度。
转到您仓库中的源代码 https://github.com/<username>/ostoy/blob/master/microservice/app.js。
编辑文件。
注释掉第 8 行(包含 `let randomColor = getRandomColor();`)。
取消注释第 9 行(包含 `let randomColor = getRandomGrayScaleColor();`)。
7 app.get('/', function(request, response) {
8 //let randomColor = getRandomColor(); // <-- comment this
9 let randomColor = getRandomGrayScaleColor(); // <-- uncomment this
10
11 response.writeHead(200, {'Content-Type': 'application/json'});
输入更新消息,例如“将方框更改为灰度颜色”。
单击底部的**提交**按钮,将更改提交到主分支。
在集群的 Web UI 中,单击**构建 > 构建**以确定构建的状态。此构建完成后,将开始部署。您也可以通过在终端中运行 `oc status` 来检查状态。
部署完成后,返回浏览器中的 OSToy 应用程序。访问左侧的**网络**菜单项。方框颜色现在仅限于灰度颜色。