触发器配置
功能介绍
在保留 Spinnaker 部分原生触发器类型的基础上, CODING 部署控制台扩充了触发器类型,使之可以与 CODING 上游制品库匹配.目前支持 4 种触发器类型:Git 仓库触发、Webhook 触发、定时触发是 Spinnaker 原生支持的触发器类型;CODING Docker 仓库触发为新增的触发器类型。
Artifact Constraints:将 Expected Artifacts 配置的制品作为触发器的约束条件,支持多选;触发器必须携带至少一个约束条件的制品信息才能成功触发部署流程。
CODING Docker 仓库触发
配置 cd-demo 项目下的 cd-demo 制品库作为触发器,并将 Expected Artifacts 配置的 flaskapp-image 制品作为触发器的约束条件。
Git 仓库触发
支持 CODING 代码库、GitHub、GitLab 三种类型的 Git 仓库。
字段 | 说明 |
---|---|
仓库类型 | 支持 CODING 代码库、GitHub、GitLab 三种类型的 git 仓库 |
项目 | 列出登录账号加入的所有项目 |
仓库 | 列出项目下的所有代码仓库 |
分支或标签规则 | 支持正则表达式,留空或.* 表示不对分支或标签做限制 |
CODING 代码库
配置 cd-demo 项目下的 cd-demo 代码仓库作为触发器,分支或标签规则 release.* 表示所有以 release 开头命名的分支或 tag 才会触发部署流程执行。
Github
Github 代码库的支持需要提前在项目设置中关联代码库。
配置 cd-demo 项目关联的外部 github 代码仓库 bitnuller/coding-cd-demo 作为触发器,分支或标签规则 release.* 表示所有以 release 开头命名的分支或 tag 才会触发部署流程执行。
Gitlab
跟 github 一样,需要提前在在项目设置中关联代码库。
Webhook 触发
选择 Webhook 触发,将生成全局唯一的 URL 触发地址,Payload Constraints
定义 Payload
请求内容必须提供的参数,支持正则表达式,留空或.*
表示不对 Key 的 Value 值做限制。
Payload Constraints:如果需要使用特定内容的 payload 触发 Webhook,可以在 Payload Constraints
一栏添加 key/value
键值对,当部署流程收到 Webhook 请求时,将会 payload
内容进行校验,value
支持正则表达式。
使用场景举例:部署流程 Webhook 地址对公网开放,但只有提供认证凭据才能触发部署流程执行。
如下 Payload
请求会成功触发部署流程执行:
curl --location --request POST 'http://codingcorp.coding.com/api/cd/webhooks/webhook/ba2e9f00-6445-11ea-88b5-a9bc004f5e0f' \
--header 'Content-Type: application/json' \
--data-raw '{"secret": "faiM4&KqJTTuEy8J"}'
定时触发
例如每周四晚上 8 点触发部署流程:

在阅读中是否遇到以下问题?
您希望我们如何改进?