jenkins使用--部署

本文介绍如何使用Jenkins Pipeline实现参数化的部署流程,通过Ansible进行环境备份、文件推送及重启服务等操作,并利用特定插件实现版本选择与发布自动化。

 

 

 

 

 

 

 

 

 

 

软件:

  centos 7.x

  java

  jenkins Pipeline

  ansible

 

1、安装请看上一文

2、主要是讲部署()

 

目的:实现 参数化发布

说明 :构建jar包是由gitlab-ci 生成,代码 是从test服务器拉取(jenkins另外 一个任务拉)

安装插件:

  active choicse plug-in 

  Git Parameter

 

 

配置说明:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pipenline script:

node {

currentBuild.displayName="#${BUILD_NUMBER}-${VERSION_LIST}"

 


stage("BACKUP"){

echo "backup"
sh 'ansible-playbook /opt/bin/jenkins/backup.yml -e "hosts_ip=${HOST_LIST}" -e "folder=${NAME}"'

}


stage("PUSH"){

if ("${ACTIVE}" == 'push')
{
echo "${ACTIVE}"
echo "${VERSION_LIST}"

sh "bash /opt/bin/jenkins/deploy-offline-java.sh ${VERSION_LIST} ${NAME} $ENV ${HOST_LIST} ${SRC_PATH}/${VERSION_LIST}/ ${DEST_PATH}"

}
}

/*
stage("TEST CODE")

{

echo "Test code"

}*/


stage("CHECK FILE MD5")


{
echo "check md5"

sh "bash /opt/bin/jenkins/check_md5.sh ${SRC_PATH} ${HOST_LIST}"
}

stage("Restart jetty")

{
echo "restart jetty"
sh 'ansible-playbook /opt/bin/jenkins/restart_jt.yml -e "hosts_ip=${HOST_LIST}"'
}


stage("DINGDING")
{
wrap([$class: 'BuildUser']) {

echo "${BUILD_USER}"
echo "Send DINGDING"
sh "python /opt/bin/jenkins/send_dingding.py ${JOB_NAME} ${BUILD_USER} ${ENV} ${VERSION_LIST}"
}
}




}

 

 

 

  build图:

 

 

 

 CD图:

 

转载于:https://www.cnblogs.com/Qing-840/p/9263580.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值