[ci]jenkins-slave的添加(vm模式,通过ssh和jnlp)
jenkins-slave的添加-在vm上通过jnlp方式参考:http://www.cnblogs.com/sparkdev/p/7102622.html
https://ws1.sinaimg.cn/large/9e792b8fgy1fm09hgakvmj20l80lr406.jpg
下载 slave.jar和slave-agent.jnlp
https://images2017.cnblogs.com/blog/806469/201711/806469-20171130175025417-1925362859.png
启动slave(slave事先要安装好java)
java -jar slave.jar -jnlpUrl http://192.168.xx:8080/computer/no2/slave-agent.jnlp -secret b9bfa768bd36e622cb883fc4edf5553042a7c8190793e4658ef9a0692599437d -workDir "/data/jenkins"
查看节点状态
https://ws1.sinaimg.cn/large/9e792b8fgy1fm09l4ng00j21gc0cidha.jpg
可以执行shell命令
https://ws1.sinaimg.cn/large/9e792b8fgy1fm09kn3kgoj20ip0abwfi.jpg
缺点:
[*]需要在slave端手动下载slave-agent.jnlp和slave.jar
[*]需要在slave端手动java -jar 启动
jenkins-slave的添加-在vm上通过ssh用户名密码方式--推荐方法(最佳实践)
参考:http://blog.csdn.net/jiang1986829/article/details/51141731
https://ws1.sinaimg.cn/large/9e792b8fgy1fm0a95bl53j20p80ovmzk.jpg
slave上看进程,发现就是java -jar 启动了个slave.jar包.
https://images2017.cnblogs.com/blog/806469/201711/806469-20171130181950198-2122500119.png
用新添加的node构建一个项目
node('no2'){ git "https://github.com/lannyMa/java-helloword.git"
state: 'clean'
sh 'mvn clean'
stage 'package'
sh 'mvn package'
stage 'test'
sh 'java -jar target/testweb-v1.0.jar'
}
发现slave的mvn找不到.可是我/etc/profile里和master配置一样.
master是这样配置的: 安装jdk mvn,均是源码包.然后添加/etc/profile, 然后直接新建pipeline即可(不用在jenkins里添加任何jdk mvn路径),即可运行构建.
解决: 修改no2节点的环境变量
PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/jdk/bin:/usr/local/maven/bin:/root/bin
https://images2017.cnblogs.com/blog/806469/201711/806469-20171130185950383-1495628513.png
重新构建即构建成功
https://images2017.cnblogs.com/blog/806469/201711/806469-20171130190050914-1786071314.png
构建结果存在了slave的workdir里了.(这里不存在回传给master之类的说法)
https://images2017.cnblogs.com/blog/806469/201711/806469-20171130190252211-1433592032.png
页:
[1]