目前,为了启用或禁用作业,用户必须在基于Matrix的安全配置中具有作业配置权限。我们希望能够独立于作业配置权限管理启用/禁用作业权限。 我们希望每个用户都可以启用和禁用项目,而不会触及/破坏配置。
由于
答案 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获取单个项目的启用/禁用按钮 -
我检查了我的詹金斯,我可以看到这个:
但是当我在插件部分检查时,我没有看到安装此extra column plugin。这可能是Jenkins最新版本中的默认行为。