Jenkins指定tag发布到k8s环境
2019-10-26 23:34
399 查看
Jenkins指定tag发布到k8s环境
1、Jenkins配置一个Pipeline 工程
首先要安装插件:https://www.geek-share.com/detail/2738918780.html
参数化构建过程
Pipeline选择Pipeline script from SCM
保存之后构建失败会提示找不到Jenkinsfile,我们只需要新建相应的Jenkinsfile文件即可
vim /root/.jenkins/workspace/sscp-xxx_sit@script/Jenkinsfile
node (){ //指定Slave标签 stage('Git Checkout') { checkout([$class: 'GitSCM', branches: [[name: '${Tag}']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[url: 'git@code.aliyun.com:xx/xx.git']]]) } //代码编译 stage('Maven Build') { sh ''' export JAVA_HOME=/usr/local/java /usr/local/maven/bin/mvn clean package -Ppresit -Dmaven.test.skip=true ''' } stage('Build and Push Image') { sh ''' REPOSITORY=172.31.182.143/presit/sscp-xxx:${Tag} cp Dockerfile target/ cd target docker build -t $REPOSITORY . docker login -u admin -p Harbor%12345 172.31.182.143 docker push $REPOSITORY ''' } stage('Deploy to k8s') { sh ''' K8S_MASTER="172.31.182.152" APP="sscp-xxx" ENV="presit" ssh ${K8S_MASTER} -t "cd /root/helm/source/sscp-config/sscp-${ENV}/sscp-deploy-config;git checkout ${ENV};git pull" ssh ${K8S_MASTER} cp /root/helm/source/sscp-config/sscp-${ENV}/sscp-deploy-config/${APP}/values.yaml /root/helm/sscp-${ENV}/${APP}/values.yaml ssh ${K8S_MASTER} helm upgrade ${APP}-${ENV} -f /root/helm/sscp-${ENV}/${APP}/values.yaml --set app.updateVersion=`date +%s` chartmuseum/${APP} --set app.image.tag=${Tag} ''' } }
再次构建效果:
相关文章推荐
- Jenkins GIT Maven 构建持续发布环境
- Jenkins搭建.NET自动编译测试与发布环境
- gitlab+jenkins+maven+docker持续集成(十)——参数化构建过程之多环境tag构建
- F5实现k8s环境下应用自动发布
- Jenkins 发布后自动创建git tag
- 科普DevOps趋势下k8s环境应用自动发布的实现
- Jenkins的maven工程打包的时候怎么指定不同环境的配置文件
- jenkins自动部署--定时轮询svn代码更新并自动发布至测试环境
- 预发布环境,Tag发布机制和可重复的部署过程
- ASP.NET Core 指定环境发布(hosting environment)
- 通过Shell+atd定时任务,实现jenkins指定时间自动发布任务
- Jenkins Pipeline 小试牛刀以及引入指定的环境变量
- K8s环境下安装sonarqube集成jenkins
- Jenkins搭建.NET自动编译测试与发布环境
- F5实现k8s环境下应用蓝绿发布
- Jenkins的maven工程打包的时候指定不同环境的配置文件
- k8s之根据tag自动发布springboot项目
- Jenkins+maven+SVN+Tomcat持续集成发布环境安装和配置
- DevOps研习社:PaaS平台集成解决方案——F5实现k8s环境下应用自动发布
- ASP.NET Core 指定环境发布(hosting environment)