本文主要是介绍1-jenkins流水线案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这个脚本包括从Git仓库拉取代码、进行Maven构建,并将构建好的jar包复制到指定服务器。
pipeline {agent anystages {stage('Prepare') {steps {script {// 判断是否存在目录,没有则克隆,有则拉取if (!fileExists('supervise-cloud')) {echo "Cloning repository"sh 'git clone ssh://git@192.168.0.99:9981/zhjg/zhengke/supervise-cloud.git'} else {echo "Pulling latest changes"sh '''cd supervise-cloudgit pull'''}}}}stage('Build') {steps {echo "Maven build start"sh '''export MAVEN_HOME=/root/apache-maven-3.9.2export JAVA_HOME=/usr/local/java/jdk-17.0.7export PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHcd supervise-cloudmvn clean compile package -Dmaven.test.skip=true -pl supervise-cloud -am -f pom.xml'''}}stage('Deploy') {steps {echo "Deploying artifacts"sh '''scp supervise-cloud/supervise-auth/target/supervise-auth.jar root@192.168.0.106:/rootscp supervise-cloud/supervise-other-module/target/*.jar root@192.168.0.106:/root'''}}}
}
详细说明:
- Prepare 阶段:这个阶段会检查本地是否已经存在项目目录。如果不存在,则执行
git clone
克隆仓库;如果存在,则执行git pull
拉取最新代码。 - Build 阶段:设置环境变量并进入项目目录,使用 Maven 进行构建。这里跳过了测试并且指定了项目和pom文件位置。
- Deploy 阶段:使用
scp
命令将构建好的jar
包复制到远程服务器上。这里需要确保 Jenkins 服务器有权限访问目标服务器,并且ssh密钥已正确设置。
这篇关于1-jenkins流水线案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!