当前位置:  开发笔记 > 前端 > 正文

Jenkins Slave - 如何添加或更新环境变量

如何解决《JenkinsSlave-如何添加或更新环境变量》经验,为你挑选了0个好方法。

有没有人尝试过使用Jenkins Rest/API或任何其他方式在Jenkins slave配置中添加或更新ENVIRONMENT变量的方法.

使用Jenkins Swarm插件,我创建了一个slave(它使用JLNP连接到Jenkins master)但环境变量(复选框没有勾选)并且没有Swarm客户端jar创建的环境变量(默认情况下).用户可以手动添加if reqd,但我正在寻找是否有一种方法可以在slave中添加/更新ENV变量.

在此输入图像描述

我想创建多个swarm slave(其中每个slave都有不同的工具,具有不同的值,即slave01 JAVA_HOME =/path/jdk1.7.0.67和其他slave02 JAVA_HOME =/path/jdk1.8.0_45等等).

我试着查看http://javadoc.jenkins-ci.org/hudson/model/Node.html或http://javadoc.jenkins-ci.org/hudson/model/Slave.html或http:// javadoc. jenkins-ci.org/hudson/slaves/DumbSlave.html 它没有提供任何方法/方法来设置Node的属性/ ENV变量.没有setNodeProperties或类似的东西(如果这是设置ENV变量/属性的正确方法).

我正在寻找的是一种将以下变量添加到从属的方法.

在此输入图像描述

这篇文章(由Villiam撰写)反映出有人尝试了groovy piece来做同样的事情,但我看不出他如何使用相同的API设置ENV变量来创建/管理节点

Jenkins-CLI可以选择运行groovy脚本:

java -jar path/to/jenkins-cli.jar -s http://localhost:8080 groovy path/to/script

脚本:

import jenkins.model.*
import hudson.model.*
import hudson.slaves.*
Jenkins.instance.addNode(new DumbSlave("test-script","test slave description","C:\\Jenkins","1",Node.Mode.NORMAL,"test-slave-label",new JNLPLauncher(),new RetentionStrategy.Always(),new LinkedList())) 

(参见其他选项的文档:http://javadoc.jenkins-ci.org/)

您还可以运行交互式groovy shell

java -jar jenkins-cli.jar -s http://localhost:8080 groovysh

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有