【问题标题】:Jenkins- Run a batch file when no jobs are running currentlyJenkins-当前没有作业运行时运行批处理文件
【发布时间】:2016-03-31 05:31:40
【问题描述】:

我需要在作业完成后杀死 maven 启动的子进程。我尝试了Dhudson.util.ProcessTree.enabled=true,但它不会在作业完成后杀死所有java.exe 进程。所以我创建了一个批处理文件来杀死这些进程。

问题是,在 Jenkins 中执行此批处理文件之前,我必须确保当前没有正在进行的作业。有没有办法达到这个要求?

提前致谢。

【问题讨论】:

    标签: jenkins


    【解决方案1】:

    Exclusive Execution Plugin 可能正是您所需要的。

    来自其文档:

    启用此选项后,每次构建都会执行一个预构建和一个构建后步骤:

    预构建步骤:

    • 插件将启动关闭模式,这意味着无法启动其他作业。
    • 它一直等到除此之外的所有作业都完成,除非通过可选标志指示不等待。
    • 然后它开始执行作业。

    构建后步骤(即使构建不成功也始终执行):

    • Jenkins 关机模式被取消

    编辑:然后您可以将您的 kill-task 放在启用了独占执行的单独作业中,并将其作为构建后操作启动。

    【讨论】:

    • @Domiinik Gebhart,感谢您的回复。这正是我搜索后选择的。它有效
    猜你喜欢
    • 2017-11-15
    • 1970-01-01
    • 2020-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多