上篇:jenkins一键部署github项目
该篇使用jenkins pipeline-script一键部署,且介绍pipeline-scm
jenkins环境配置
前言:按照上篇创建pipeline任务,结果报mvn,jdk环境不存在,就很疑惑,然后配置全局属性就OK了
创建pipeline任务
配置任务
附带脚本:
其中git就是我的项目地址
里面的sh脚本,跟原来的sh脚本相似
pipeline {
agent any
stages {
stage('git pull') {
steps {
git credentialsId: 'gitee', url: 'https://gitee.com/mario-plus/compose-demo.git'
}
}
stage("execute sh"){
steps {
sh '''
echo "构建开始"
mvn clean install -Dmaven.test.skip=true
echo "构建成功"
echo '初始化部署脚本'
rm -rf /home/compose
mkdir /home/compose
chmod 777 /home/compose
cp /var/lib/jenkins/workspace/$JOB_NAME/src/main/docker/docker-compose.yml /home/compose/
cp /var/lib/jenkins/workspace/$JOB_NAME/src/main/docker/start.sh /home/compose/
cp /var/lib/jenkins/workspace/$JOB_NAME/src/main/docker/Dockerfile /home/compose/
cp /var/lib/jenkins/workspace/$JOB_NAME/target/compose-demo-1.0-SNAPSHOT.jar /home/compose/
echo '初始化脚本完成'
echo '执行shell脚本'
cd /home/compose
echo 'dos2unix格式化sh脚本'
dos2unix start.sh
sh start.sh
echo 'shell脚本执行成功'
echo "good job" '''
}
}
}
}
脚本样例:
也可以参考流水线语法:
pipeline scm方式
github项目已添加了Jenkinsfile,把脚本复制到文件中即可
脚本和上面是一样的