搭建项目开发环境(八)—— 将IDEA+Gitlab+Jenkins重构出UAT和PRD环境

768 阅读1分钟

概述

(六)和(七)已经初步构建完成IDEA+Gitlab+Jenkins的CI/CD基础环境,但真实的开发项目开发环境是不止一个生产环境的。本实验项目基于Scrum模式,团队假设分为Team Leader(PO),DV(developer)和QA(测试人员),暂时规划将CI/CD的基础环境分割成UAT环境和PRD环境。

  • UAT环境:Gitlab(UAT branch),Jenkins(Doorweb-UAT project),Apache Httpd(192.168.1.105:8070);
  • PRD环境:Gitlab(Master branch),Jenkins(Doorweb project),Apache Httpd(oracle cloud);

UAT环境

1、在Gitlab中,选择Project(http-doorweb)——Repository——Branches——new branch

image.png

填写Branch name为UAT,create from Master。

2、在192.168.1.105(和jenkins同一个服务器)上安装apache httpd sudo yum install httpd systemctl start httpd systemctl status httpd 修改httpd.conf的Listen 80 为Listen 8070, DocumentRoot "/var/www/html"

3、前往Jenkins,在Dashboards中选择new item,item name为Doorweb-UAT,选择Freestyle project,copy from Doorweb。

image.png 点击OK,进入配置界面

image.png

  • Secret token:点击generate,生成一个新的token

  • Build:选择shell script。

image.png

CODE_DIR=/var/lib/jenkins/workspace/Doorweb
WEB_DIR=/var/www
TIME=`date +%F-%H-%M-%S`

cd $CODE_DIR && tar zcf /tmp/web-${TIME}.tar.gz  ./*
mv /tmp/web-${TIME}.tar.gz $WEB_DIR
cd $WEB_DIR && mkdir web-$TIME
cd $WEB_DIR && mv ./html/* web-$TIME
cd $WEB_DIR && tar xf web-${TIME}.tar.gz -C html && rm -rf web-${TIME}.tar.gz

点击save

4、返回Gitlab,在setting——webhook中,填写刚才Jenkins中生成的Doorweb-UAT的信息

image.png 在push events中填写UAT,点击save changes。

5、在IDEA中,check out UAT branch,CI/CD的UAT环境配置完成,可以尝试从IDEA做些修改,commit and push,检查UAT的web是否自动更新。

PRD环境

(七)中已经基本配置完成PRD环境,参考UAT环境,修改各个环节,注意是master branch。

下一章将会将JIRA引入整个项目开发实验体系中。