jenkins 配置为node进程不在时,自动连jenkins master服务器

jenkins 配置为node进程不在时,自动连jenkins master服务器:

 

3.1 vi connectToCI.sh

3.2 输入agent.jar命令,注意agent jar文件路径要写绝对路径

#! /bin/sh
proc_name= "slave-agent.jnlp" #进程名

proc_num()
{
        num=`ps -ef | grep $proc_name | grep -v grep | wc -l`
        return $num
}
proc_num
number=$?   #获取进程数量
if [ $number -eq 0 ]
then
    #这里的执行命令, 直接从node节点创建后的jenkins中复制过来的
    nohup java -jar /home1/xxx/jenkins/agent.jar -jnlpUrl http://jenkins的url地址/computer/console_pr_linux_64bit_node_01/slave-agent.jnlp -secret eb669bd77cb578cfca15cedf3ec9d8ccc75aeeb096f68d9d4232e2cca82aac3f -workDir "/home1/irteam/jenkins" &   

fi


3.3 chmod +777 connectToCI.sh
3.4 crontab -e
3.5 输入以下内容
[irteam@testa-jenkins1-ncl ~]$ crontab -e
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
*/1 * * * *  sh /home1/irteamx/connectToCI.sh                       #若没有指定-u , 那默认会以当前用户执行,每分钟检测,若进程不在,自动重连

 

posted @ 2024-04-24 15:05  苹果芒  阅读(9)  评论(0编辑  收藏  举报