jenkins - 如何定期运行一个 Jenkins 作业,直到另一个 Jenkins 作业正在运行
问题描述
我有两个 Jenkins 工作 - JobA 和 JobB。我将触发 JobA。现在我想每隔 5 分钟定期运行一次 JobB,直到 JobA 运行。因此,如果 JobA 运行 30 分钟,jobB 将在每 5 分钟后触发一次,总共运行 6 次。如果这可以在 Jenkins 中实现,请提供帮助。
谢谢, 苏拉布
解决方案
如果我理解正确,您希望让 jobB 每 5 分钟运行一次,直到 jobA 完成。
您可以创建一个上游作业,jobC,它将轮询/检查 jobA 的状态,如果它正在运行,将触发 jobB。如果jobA没有运行,jobC应该失败,不会触发jobB。
您可以安排每 5 分钟触发一次 jobC。
或者,
您可以触发 jobB 并首先验证 jobA 的状态。如果 jobA 未运行,则使 jobB 失败,否则完成执行。
推荐阅读
- django - 添加附加字段数据以响应 Django 中的 post 方法
- php - 在 Laravel 中单击按钮将用户 ID 添加到帖子中会出现错误,提示“不支持发布方法”
- python - Python计算正整数
- powershell - Powershell:从两个或多个循环中中断
- java - 有没有办法从 BigDecimal.floatValue() 函数中获得正确的结果?
- reactjs - 使用 useEffect 挂钩调用位于功能组件外部的服务文件夹中的 API 端点
- sql-server - 在 mssql docker 容器中获取 root 访问权限
- postgresql - 在未应用过滤器时使用 Golang webform 从 Postgres 获取所有记录,即空的“Where”子句
- arm - 当您不关心新通道时,如何在 clang/AArch64 上使用 NEON 内在函数将 int32x2_t 扩展为 int32x4_t?
- aem - “org.apache.commons.mail.EmailException:提供的消息无效”同时使用 ACS 公共电子邮件服务发送电子邮件通知