当前位置: 首页 > 面试题库 >

Jenkins工作流程检查作业是否正在运行或已计划

龙兴学
2023-03-14
问题内容

是否可以从工作流脚本中检查某项作业是否正在运行或已计划?

尽管使用阶段管理并发似乎足够:

stage name: 'stageName', concurrency: 1

并在以下阶段运行构建:

build job: 'test-job', wait: false

可能是有人手动开始工作 测试工作 ,而我只想在我的工作流程脚本中处理这种情况。例如,跳过构建或等待构建完成。


问题答案:

这适用于不使用 Groovy Sandbox的流

for (Project job : Hudson.getInstance().getProjects()) {
    if (job.isBuilding() || job.isInQueue()) {
        echo "${job.getName()}"
    }
}


 类似资料:
  • 我想检查Quartz作业是否正在运行。我发现它可以使用调度程序。getCurrentlyExecutingJobs()。但是我对此感到困惑,我应该把它放在哪里才能得到结果呢?谢谢

  • 问题内容: 如何检查计划的Quartz Cron作业是否正在运行?是否有任何API可以进行检查? 问题答案: scheduler.getCurrentlyExecutingJobs()在大多数情况下应该可以工作。但是请记住不要在Job类中使用它,因为它使用ExecutingJobsManager(a JobListener)将正在运行的作业放到HashMap中,该HashMap在作业类之前运行,因

  • 如何检查计划的Quartz cron作业是否正在运行?是否有API进行检查?

  • 问题内容: 我有这个独特的要求来检查给定的节点是否正在运行作业。我正在考虑使用groovy,因为它看起来是最简单的选择。 它使我能够找到从站是否在线。对我来说,下一步是检查它是否正在运行作业。 我正在考虑使用API函数setAcceptingTasks(false)来将slave标记为正在运行作业,以便下次当我使用isAcceptingTasks()查询时,我会得到false,因此不会在该slav

  • 如果不安装文本编辑程序或集成开发环境,是否有可能测试xdebug是否工作,即它是否可以调试php代码? phpinfo()中出现的唯一部分xdebug如下所示: 解析的其他. ini文件 /etc/php5/apache2/conf.d/mysql.ini, /etc/php5/apache2/conf.d/mysqli.ini, /etc/php5/apache2/conf.d/pdo.ini,

  • 我有两个Jenkins工作流作业,它们以不同的参数启动同一个作业,即它们构建的分支。后一项工作是在多个平台上构建项目。“头”作业,即Workflow作业可以在不同的机器上启动。此外,设置中还有两台linux机器。 有时会发生这样的情况,其中一个(比如master)在其中一台linux机器上启动,另一个在另一台上启动。他们都必须在linux机器上构建一个目标,因为他们都很忙,所以两个作业都停滞不前。