amazon-web-services - 根据 aws codepipline 执行的状态将 jenkins 作业标记为成功/失败
问题描述
我有一个 jenkins 工作,它使用执行 shell 作为构建阶段。我正在使用此 shell 中的 aws cli 命令调用 3 个 AWS Codepipeline 执行。我的代码管道执行需要 4-5 分钟才能完成执行,但詹金斯作业在管道完成之前被标记为成功,即使管道在任何阶段都失败了。
有没有办法让 jenkins 作业仅在代码管道执行完成后才能完成,并根据我的 aws 代码管道的状态标记 Jenkins 作业成功/失败。
或者
如何根据我的 aws 代码管道的状态将 jenkins 作业标记为成功/失败。
解决方案
'start-pipeline-execution' 是一个异步操作。您需要不断轮询执行的状态才能知道结果。
在您的 Jenkins 工作中,当您使用 start-pipeline-execution 启动管道时,您将需要使用 get-pipeline-execution CLI 调用[1]继续查询管道执行 ID ,并继续检查状态是否正常循环中的时间(比如 1 小时)。当 get-pipeline-execution return status='Succeeded' 时,Jenkins 以 0 退出,如果为 'Failed',则在 shell 步骤中以 -1 退出以使 Jenkins 作业失败。
exit -1
推荐阅读
- python - p4python windows x64构建链接错误
- java - 将包含多个单词的字符串转换为单词向量
- javascript - 使用 javascript 库“turn.js”和 html 创建翻书
- django - Django ModelChoiceField 在列表中显示客户对象(1)等,我如何让它显示客户名称?
- azure - 不能直接在门户中开发第二个Azure功能(只允许在门户中开发第一个功能)
- python - 向 seaborn regplot 和 residplot 添加自定义误差线
- next.js - /node_modules/@prisma/client/runtime/index.js 找不到模块:无法解析“async_hooks”
- java - Eclipse乐山LwM2M构建失败
- html - 使用 redux 跟踪最近查看的产品,可以吗?
- excel - VBA 中的 Excel 错误“运行时错误‘424’:SET 语句需要对象