使用Jenkins、gitlab、sonar、testNG实现maven项目的自动化构建部署
1、系统配置
自动化部署预期效果:开发人员提交代码后,jenkins全自动完成:编译,单测,报告收集、代码扫描,部署。
1、开发人员提交到master分支。
2、等待jenkins自动部署…
3、访问应用服务器地址,检查新代码部署成功。
本机物理机:192.168.119.1
系统:win10 64位
部署服务:sonarqube服务、Jenkins服务
用到的程序:jdk1.8、Git window客户端、sonar-scanner windows扫描器、maven
虚拟机:192.168.119.133
系统:centos 7
部署服务:gitlab服务
虚拟机:192.168.119.134
系统:centos 7
部署服务:待部署demo应用
待部署应用工程代码:
链接:https://pan.baidu.com/s/1eF6tv6BPssmxwL-I4r2GBQ
提取码:qqkt
2、工程代码提交到gitlab上
将本机的devopsplay工程代码提交到部署gitlab服务的虚拟机上192.168.119.133。
工程代码pom文件配置
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zhc</groupId>
<artifactId>DevopsPlay</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.10.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent