本文发布于:2024-09-21,最后更新于:2025-02-17,如果内容失效请留言告知。
通过 jnlp 的方式可以很简单的将一台机器添加为 Jenkins slave 节点,以用于 iOS 应用的持续集成。
新建目录 /opt/jenkins
,然后下载 slave.jar
文件,如:
1 | wget http: //ci .lzw.me:8080 /jenkins/jnlpJars/slave .jar |
接着执行如下命令,即可将当前机器添加为一个 slave 节点:
1 | nohup java -jar slave.jar -jnlpUrl http: //ci .lzw.me:8080 /jenkins/computer/nbop-mobile-mac/slave-agent .jnlp -secret xxx -workDir "/opt/jenkins" |
为了可以方便的启动和停止,可以新建一个文件 jenkins_slave.sh
,内容为:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #!/bin/sh JENKINS_HOME= /opt/jenkins JENKINS_URL=http: //ci .lzw.me:8080 JENKINS_NODE_NAME=lzwme-mac-node JENKINS_NODE_SECRET=9f651xxx return_code=0 case "$1" in start) echo "Starting Jenkins slave" nohup java -jar ${JENKINS_HOME} /slave .jar \ -jnlpUrl ${JENKINS_URL} /computer/ ${JENKINS_NODE_NAME} /slave-agent .jnlp \ -secret ${JENKINS_NODE_SECRET} \ -workDir "${JENKINS_HOME}" > /${JENKINS_HOME} /nohup .log & return_code=$? ;; stop) echo "Stopping Jenkins slave" ps -ef | grep jenkins | grep agent | grep - v grep | awk '{print $2}' | xargs kill -9 return_code=$? esac exit $return_code |
然后就可以使用该脚本进行启动和停止任务了:
1 2 3 4 5 | # 启动 /opt/jenkins/jenkins_slave .sh start # 停止 /opt/jenkins/jenkins_slave .sh stop |