【问题标题】:Block a node with several executors from accepting more jobs until a given job is completed阻止具有多个执行器的节点接受更多作业,直到给定作业完成
【发布时间】:2014-03-17 23:10:17
【问题描述】:

我在 ec2 windows 实例上运行 Selenium 测试套件。这些实例应该每隔几天重新启动一次,作为维护以释放内存等。

我遇到的问题是,当我从 Jenkins 向从站发送重启命令时,我无法确定从站当时没有正在运行的作业,因为从站运行了多个执行器。

有没有办法告诉节点,一旦触发作业 X,将执行者的数量减少到 0?如果没有,有没有办法优雅地使奴隶离线(即:“完成 que 中的所有工作但不接受任何新工作”)?

【问题讨论】:

  • 您似乎有不止一个问题,1. 如何安排无缝重启,2. 如何关闭从站。 #1 的一种可能性是创建一个每隔几天定期运行的新作业,它占用 N 个执行器,其中 N 是执行器的最大数量,并在您指定的特定节点上运行。然后,您可以设置一个覆盖所有节点的构建矩阵。至于 #2 如何实际重启节点,取决于操作系统,您只需运行重启命令即可。
  • 一种方法是在从属服务器上运行一个守护进程,向​​服务器报告它是否仍在运行作业

标签: selenium amazon-ec2 jenkins


【解决方案1】:

(jenkins_url)/safeRestart - 允许所有正在运行的作业完成。新的 重启完成后,作业将保留在队列中运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-05
    • 1970-01-01
    • 2010-09-20
    • 2022-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多