我们有一个大哈得逊设置了许多计划建立运行的所有的时间。目前我正试图得到一个建立正常工作,但我必须偶尔等当计划的建立进入队列中。有没有一种方法,以禁止所有计划建立这样我就可以专注于我的麻烦的建立,而无需调整"计划"的设置的,每个人建立?

有帮助吗?

解决方案

告诉它来准备关闭。


编辑运算 (banjollity)
它是不完美的,但我认为这是一个合理的"几鼠标点击方案与一个默认的安装"友好的解决方案,因此接受的答案。

  1. 排队一个工作
  2. 告诉哈德逊到了准备关闭。这可以防止的其他工作正在运行。
  3. 诊断错与我的工作,提交新的代码 可能会 解决它。(我爱我的工作)。
  4. 取消Hudson关闭。
  5. 转到第1步。

其他提示

'配置切片' 插件我贡献允许您可以同时修改许多作业的cron的设置。这应该让你做出你想要的批量更改。

在Mikezx6r的建议扩大,我只是想出了一个快速的方法来禁用所有构建匹配某些字符串:

[user@server jobs] $ for i in *build_name*; do sed -i s/"disabled>false"/"disabled>true/" $i/config.xml; done

您还可以通过特定的构建迭代的名字在“for”循环:

[user@server jobs] $ for i in build1 build2 build3; do sed -i s/"disabled>false"/"disabled>true/" $i/config.xml; done

您可以先进行测试,看看通过把它会做一个“回声”之前sed的:

[user@server jobs] $ for i in build1 build2 build3; do echo sed -i s/"disabled>false"/"disabled>true/" $i/config.xml; done

相反,您可以通过周围的sed脚本转换重新启用所有匹配的作业:

[user@server jobs] $ for i in build1 build2 build3; do sed -i s/"disabled>true"/"disabled>false/" $i/config.xml; done

我看不到直接的方式做到这一点,但你可以写的东西更新config.xml中的所有作业。

在每个作业的哈德森目录中,有一个config.xml文件。 <项目>有一个名为禁用的元素,你可以更新至真,从而禁止该版本。

不理想,但一旦你的脚本走一个目录,并改变残疾人的价值,你可以随时使用它。

有一个类似的东西,搜索给我带来了这个问题,我意识到有迈克尔·多诺霍的回答的另一个好处(和插件他贡献)。

使用“配置切片”,它很容易一次全部禁用作业的子集。这正是我需要暂时禁用的8个相关工作7,所以我可以8号上班。感谢迈克尔!

此可使用詹金斯控制台来完成。它运行Groovy脚本和做几乎任何事情。

通过所有项目下面的脚本进行迭代。检查它是否具有TimerTrigger(一个可以扩展其他触发器的此检查以及)

import hudson.model.Hudson
import hudson.model.Project
import hudson.triggers.TimerTrigger
import hudson.triggers.Trigger
import hudson.triggers.TriggerDescriptor

//All the projects on which we can apply the getBuilders method
def allProjects = Hudson.instance.items.findAll { it instanceof Project }
def projectsToWorkOn = [];
allProjects.each { Project project ->
    Map<TriggerDescriptor, Trigger> triggers =
            project.getTriggers();
    triggers.each { trigger ->

        if (trigger.value instanceof TimerTrigger) {
            projectsToWorkOn.push(project)


        }

    }
}


projectsToWorkOn
        .each { Project project ->

    project.disable();
    project.save()
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top