iOS 应用持续集成:将 macOS 添加为 jenkins slave 节点

本文发布于: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
点赞 (0)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code