在jenkins中禁用和启用作业

时间:2015-11-25 16:57:43

标签: jenkins build-process

目前,为了启用或禁用作业,用户必须在基于Matrix的安全配置中具有作业配置权限。我们希望能够独立于作业配置权限管理启用/禁用作业权限。 我们希望每个用户都可以启用和禁用项目,而不会触及/破坏配置。

由于

3 个答案:

答案 0 :(得分:4)

使用' root'的凭据为用户提供脚本。用户并仅设置脚本上的执行位,以便没有人可以读取/复制它。

制作剧本至少有3种方法:

HTTP POST请求:

1

curl -X POST http(s)://<your_jenkins_url>/jenkins/job/<nightly-build_job_name>/disable

2

使用python JenkinsAPI。 Documentation非常好,易于理解,就像API一样。

3

第三个可以是一个使用jenkins-cli的脚本:接受answer描述这个。

答案 1 :(得分:2)

“作业配置”权限限制为在每个作业中禁用/启用功能,这是真的。

在没有相应权限的情况下禁用/启用作业的一种替代方法是创建在内部执行此操作的新作业。例如,需要作业名称作为参数的作业,并禁用它们。

  • 您可以使用具有“作业配置”权限的Jenkins用户的curl +凭据。

  • 您可以使用插件。例如,此脚本使用Job DSL Plugin

    job("jobname"){
        using("jobname")
        disabled(true)
    }
    

有关其他选项,请查看this question

答案 2 :(得分:0)

您可以尝试install this plugin获取单个项目的启用/禁用按钮 -

enter image description here

我检查了我的詹金斯,我可以看到这个:

enter image description here

但是当我在插件部分检查时,我没有看到安装此extra column plugin。这可能是Jenkins最新版本中的默认行为。