本文主要介绍了如何使用Webhook触发方式运行流水线。
前提条件
开启配置Webhook触发可以快捷的实现流水线自动化任务运行,使流水线任务运行更简洁,做到无缝集成与高效部署。
在流水线配置页面单击触发设置页签,打开Webhook触发开关后,页面将显示通用Webhook和流水线源Webhook两个URL地址,单击对应URL右侧的复制按钮获取地址,然后单击右上角仅保存或保存并运行完成配置。
重要
若您需要使用Webhook触发运行流水线,请您先确保Webhook触发开关是打开状态。Webhook触发通常适用于代码源以外的第三方工具调用,同时也支持自有系统配置后进行触发运行流水线。
Webhook触发运行流水线
方式一:通用Webhook触发
启用流水线Webhook触发后,可以直接使用以下命令触发运行流水线。
curl --header "Content-Type: application/json" --request POST --data "{}" http://flow-openapi.aliyun.com/pipeline/webhook/your-webhook
方式二:流水线源Webhook触发
方式三:环境变量Webhook触发
Webhook触发支持环境变量触发,您可以使用默认的变量参数与默认值进行触发;也可以在运行命令中自定义默认值,使用变量参数和新定义的默认值来触发。具体操作如下:
在流水线编辑页面选择变量和缓存页签,在左侧选择变量,于字符变量区域添加环境变量。
-
使用变量参数和新定义的默认值来触发。
curl --header "Content-Type: application/json" --request POST --data "{\"abc\":\"456\"}" http://flow-openapi.aliyun.com/pipeline/webhook/your-webhook -
触发前示例中的环境变量
abc默认值123,触发后的流水线打印变量值输出456。[executionStep begins at 2024-10-12 14:19:25] ################################################################## # name : Command # version : v1.0.69 # description : execute shell command # help url : https://atomgit.com/flow-step/Command.git # build id : f097ed94-f9fa-40cc-a34a-64741c07ed4a ################################################################## 2024-10-12 14:19:25 [INFO] Given shell executor: [] useGivenShell: [false] 2024-10-12 14:19:25 [INFO] Invoke script with shell [bash] 2024-10-12 14:19:25 [INFO] ------ User Command Content ------ # input your command here echo ${abc} 2024-10-12 14:19:25 [INFO] ------ User Command Content ------ 2024-10-12 14:19:25 [INFO] 456 2024-10-12 14:19:25 [SUCCESS] run step successfully!
对于任意第三方对接,均可以通过以上方式触发运行流水线。
常见问题
通过Webhook触发流水线失败,提示:权限不足
当使用 Webhook 触发流水线时,系统会默认以最近一次启用 Webhook 触发功能的用户身份执行流水线,继承该用户的权限上下文。如果该用户权限不足或已被移除权限,将导致触发失败。请按以下步骤更新权限操作:
-
禁用Webhook触发功能。
-
由可以成功运行流水线的用户重新启用Webhook触发功能。
-
重新发起Webhook请求进行验证。
该文章对您有帮助吗?