单个Jenkins工作是否有可能为不同的用户提供不同的检查清单?

时间:2018-06-19 05:06:31

标签: jenkins

是否可以使用打击条件配置单个Jenkins作业?

  1. 我有两套Jenkins用户(QA& Dev)和每个QA&的不同节点集(服务器)。开发团队。

  2. QA团队没有权限将构建部署到Dev节点,反之亦然。

  3. Jenkins作业是参数化作业,用户可以在Jenkins作业运行时输入不同的节点(IP)。

2 个答案:

答案 0 :(得分:0)

检查您是否可以使用JENKINS Active Choices Plugin

这个想法是根据第一个字段(QA / DEV)提出不同的节点IP列表

该工作的第一步是测试用户团队,如果用户不在第一个字段值(QA / DEV)中,那么该工作将失败;

答案 1 :(得分:0)

上面的变化,但无需检查和失败。您可以使用脚本编写器脚本和Jenkins Active Choices Plugin根据当前登录用户返回允许节点列表,可以是集中管理的脚本,也可以只是在参数定义中定义。

与此问题的答案类似:jenkins-per-user-default-parameter-values,您的脚本将类似于:

def user = jenkins.model.Jenkins.getAuthentication().getName();
switch (user) {
   case ['user1','user2']:
     return ['node1','node2'] 
     break;
   case ['user3','user4']:
     return ['node3','node4'] 
    break;
   default:
    return null
   break;  
}

然后使用脚本编写器脚本或代码作为源配置“活动选择参数”。我正在使用:

Jenkins ver 2.32.3
Scriptler Plugin ver 2.9
动态参数插件ver 2.9
Active Choices Plugin ver 2.9