阿里云首页 云效2020

Webhook 触发流水线

注意

若你希望通过代码源触发流水线运行,请通过 流水线代码源->开启代码提交触发 完成配置。Webhook 触发用于代码源以外的第三方工具或自有系统触发流水线运行。

Webhook 触发设置

通过 Webhook 触发,用户通过任意第三方系统触发流水线运行。在编辑流水线时,可以点击触发设置,开发 Webhook 触发。

1231

Webhook 触发流水线运行

在启用流水线 Webhook 后可以使用以下命令直接触发流水线运行

curl --header "Content-Type: application/json"--request POST --data '{}' https://flow-openapi.aliyun.com/pipeline/webhook/your-webhook

触发流水线运行的同时支持将外部环境变量。可以按以下操作配置:

  • 在流水线变量中,配置你希望传递的变量值,如

123123
  • 开启 Webhook 触发,调用并使用 data 信息传递触发参数,修改运行时变量值,如

curl --header "Content-Type: application/json" --request POST --data '{"abc": "456"}' https://flow-openapi.aliyun.com/pipeline/webhook/your-webhook

  • 可以看到,示例中的环境变量 abc 初始化为 123,触发后的流水线变量值变化为了 456

21312

对于任意第三方系统可以通过以上方式触发流水线运行

ACR 镜像 Push 触发流水线

使用触发器触发流水线

对于使用了阿里云容器镜像服务(ACR) 的用户可以通过 ACR 的触发器在镜像更新后自动触发流水线运行。

如下所示,在 ACR 镜像仓库触发器设置页面,使用飞流的 Pipeline Webhook 作为触发器 URL,并根据实际情况选择触发策略:

dasd

配置完成后,可以通过 Push 镜像到该仓库触发流水线运行。

在流水线中获取触发镜像

为了获取当前触发流水线的镜像实例,用户需要在流水线变量中添加名为 ACR_PUSH_IMAGE 并设置默认值,当 ACR 触发器触发该流水线构建时,该变量会自动映射为 Push 镜像的完整地址,从而在后续的步骤中通过该变量完成镜像相关的其它操作:

1231321