Akemi

Jenkins构建自由风格项目——拉取gitlab代码、使用脚本上传代码

2024/10/08

连接gitlab

使用http连接git仓库

在凭据中添加git项目开发者的账号密码

执行构建后,代码就会被自动拉取到对应项目的工作目录下

1
2
3
ls /var/lib/jenkins/workspace/free_style_job
bin conf lib NOTICE RELEASE-NOTES temp
BUILDING.txt CONTRIBUTING.md LICENSE README.md RUNNING.txt webapps

shell脚本上传代码

准备脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
mkdir /root/script
cat > /root/script/deploy.sh<<'EOF'
#!/bin/sh
CODE_DIR=/var/lib/jenkins/workspace/free_style_job/
WEB_DIR=/usr/local/tomcat
IP=192.168.10.102 #测试主机地址
TIME=$(date +%F-%H-%M-%S)
cd ${CODE_DIR} && tar -zcf /tmp/tomcat-${TIME}.tar.gz ./*
ssh root@${IP} "mkdir -p ${WEB_DIR}/tomcat-${TIME}"
scp /tmp/tomcat-${TIME}.tar.gz ${IP}:${WEB_DIR}
ssh root@${IP} "cd ${WEB_DIR} && tar -xf tomcat-${TIME}.tar.gz -C tomcat-${TIME} && rm -rf tomcat-${TIME}.tar.gz"
#ssh root@${IP} "cd ${WEB_DIR} && rm -rf html
EOF
chmod +x /root/script/deploy.sh
#做免密
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.10.102

在jenkins项目中使用shell构建

/bin/bash /root/script/deploy.sh

1
2
3
4
5
6
[root@test tomcat-2024-10-04-14-23-21]# pwd
/usr/local/tomcat/tomcat-2024-10-04-14-23-21
[root@test tomcat-2024-10-04-14-23-21]# ls
bin conf lib NOTICE RELEASE-NOTES temp
BUILDING.txt CONTRIBUTING.md LICENSE README.md RUNNING.txt webapps

CATALOG
  1. 1. 连接gitlab
  2. 2. shell脚本上传代码