如果另一个作业今天至少运行一次,则运行Jenkins作业
我想设置一个Jenkins作业(我们称之为a),它将每晚运行,并检查另一个Jenkins作业(我们称之为B)今天是否至少成功运行一次。我不希望B触发A,因为B可能每天运行多次,但我希望A只运行一次——如果B不运行,则根本不运行 我想过使用“条件步骤”选项,但我不确定如何配置条件。我所知道的检查另一个作业构建的时间戳的唯一方法是通过Jenkins restful API,但如果我通过shell中的curl命令进行检查,我必须公开Jenkins用户的密码,我不想这样做(更不用说必须在shell中解析json输出,我也宁愿避免这样做)如果另一个作业今天至少运行一次,则运行Jenkins作业,jenkins,Jenkins,我想设置一个Jenkins作业(我们称之为a),它将每晚运行,并检查另一个Jenkins作业(我们称之为B)今天是否至少成功运行一次。我不希望B触发A,因为B可能每天运行多次,但我希望A只运行一次——如果B不运行,则根本不运行 我想过使用“条件步骤”选项,但我不确定如何配置条件。我所知道的检查另一个作业构建的时间戳的唯一方法是通过Jenkins restful API,但如果我通过shell中的curl命令进行检查,我必须公开Jenkins用户的密码,我不想这样做(更不用说必须在shell中解析
有什么建议吗?这可能不是最好的方法,但可能有效: 使B在B成功运行后将日期写入文件F_B 在A运行后将日期写入文件F_A 跑步前,检查F_A和F_B,仅当F_A和F_B不同时才跑步 现在,您可以在B成功运行后使B触发A 或者你可以看看 将生成后步骤添加到B(仅当成功时),检查文件中的日期,并且仅当日期与此生成完成时的数据不同时才对其进行更改
将FSTrigger添加到并监视该文件。您可以使用很好地实现这些功能:
- 基本上,您可以将作业“a”的SCM“轮询”步骤作为检查作业“B”是否成功运行的groovy脚本来实现
- 然后将“A”的SCM轮询间隔设置为一次/夜