jenkins获取gitlab代码自动构建流程

一、创建项目#

1.创建项目#

1)创建新任务

2)填写项目名称

3)填写项目备注

4)项目执行过程添加一个命令

5)构建项目

6)查看构建过程

7)查看服务器文件(对应创建了一个文件)

二、jenkins获取git项目#

1.到码云网站获去源码#

Copy
https://gitee.com/lovexzq/XingYunDaZhuanPan?_from=gitee_search

2.把代码导入gitlab#

1)创建新项目

2)导入项目

3)复制代码ssh导入

这边仅作为显示,可在码云中找到开源代码,进行代码拉取

4)导入代码

3.jenkins获取项目代码#

1)jenkins与gitlab做免密

Copy
1.jenkins生成密钥对 [root@jenkins ~]# ssh-keygen 2.将在jenkins中公钥写入gitlab,相当于jenkins能对gitlab进行操作 3.此处仅作为对此项目有可控权限




2)jenkins配置获取git的代码

3)构建拉取代码

4)查看代码拉取到服务器

三、jenkins构建代码推送至web服务器#

1.搭建nginx#

2.jenkins写脚本推送代码#

  • 1)jenkins服务器与web服务器做免密
Copy
[root@jenkins ~]# ssh-copy-id 172.16.1.7
  • 2)测试连接
Copy
[root@jenkins jenkins获取git的代码项目]# ssh 172.16.1.7 Last login: Wed Sep 23 23:21:29 2020 from 10.0.0.1 [root@web01 ~]# logout Connection to 172.16.1.7 closed.
  • 3)jenkins配置推送代码脚本
Copy
[root@jenkins ~]# mkdir /scripts [root@jenkins ~]# vim /scripts/code.sh #!/bin/bash Web_Ip=10.0.0.7 Old_Code_Dir=/tmp/${JOB_NAME}_$BUILD_NUMBER ssh root@$Web_Ip "[ -d $Old_Code_Dir ] || mkdir -p $Old_Code_Dir" ssh root@$Web_Ip "mv /code/* $Old_Code_Dir/" scp -rp $WORKSPACE/* root@${Web_Ip}:/code/ [root@jenkins ~]# chmod +x /scripts/code.sh
  • 4)jenkins页面配置推送

  • 5)构建测试

  • 6)访问页面测试

3.代码回滚#

  • 1)配置脚本
Copy
# 通过书写脚本方式实现部署和回滚功能,因脚本中case语句有两种选择,所以在后续jenkins构建时同样需要选择两种方式 [root@jenkins ~]# vim /scripts/deploy_rollback.sh #!/bin/bash Web_Ip=172.16.1.7 Old_Code_Dir="/tmp/${JOB_NAME}/$BUILD_NUMBER" case $Status in Deploy) echo "Status:$Status" ssh root@$Web_Ip "[ -d $Old_Code_Dir ] || mkdir -p $Old_Code_Dir" ssh root@$Web_Ip "mv /code/* $Old_Code_Dir" scp -rp $WORKSPACE/* root@${Web_Ip}:/code/ echo "Completing!" ;; Rollback) echo "Status:$Status" echo "Version:$Version" ssh root@$Web_Ip "[ -d $Old_Code_Dir ] || mkdir -p $Old_Code_Dir" ssh root@$Web_Ip "/usr/bin/cp -a /tmp/${JOB_NAME}/$Version/* /code/" ;; *) exit ;; esac
  • 2)jenkins页面配置

  • 3)测试代码更新

  • 4)测试回滚

四、触发器自动构建#

1.配置触发器#

2.配置gitlab#

3.测试#

  • 1)测试事件

  • 2)出现问题

  • 3)解决方式配置jenkins安全

  • 4)修改gitlab代码

  • 5)页面自动构建

五、返回构建结果#

1.设置gitlab获取token#


2.jenkins配置token#




3.jenkin设置构建后操作#


4.测试#

  • 1)修改代码提交

  • 2)查看jekins自动构建

  • 3)查看gitlab上面jenkins构建返回的结果


posted @   元气少女郭德纲!!  阅读(947)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示
CONTENTS