首页 > Web开发 > 详细

使用jenkins交付微服务应用至kubernetes集群

时间:2020-03-25 14:36:07      阅读:88      评论:0      收藏:0      [点我收藏+]
pipeline {
  agent any 
    stages {
      stage(‘pull‘) { //get project code from repo 
        steps {
          sh "git clone ${params.git_repo} ${params.app_name}/${env.BUILD_NUMBER} && cd ${params.app_name}/${env.BUILD_NUMBER} && git checkout ${params.git_ver}"
        }
      }
      stage(‘build‘) { //exec mvn cmd
        steps {
          sh "cd ${params.app_name}/${env.BUILD_NUMBER}   &&  /var/jenkins_home/maven-${params.maven}/bin/${params.mvn_cmd}"
        }
      }
      stage(‘package‘) { //move jar file into project_dir
        steps {
          sh "cd ${params.app_name}/${env.BUILD_NUMBER} && cd ./yutang-${params.app_name}/target  && mkdir project_dir && mv *.jar ./project_dir && chmod 755 ./project_dir/*"
        }
      }    

      stage(‘image‘) { //build image and push to registry
        steps {
          writeFile file: "${params.app_name}/${env.BUILD_NUMBER}/Dockerfile", text: """FROM harbor.yutang.cn/${params.base_image}
ADD ./yutang-${params.app_name}/target/project_dir /opt/project_dir"""
          sh "cd  ${params.app_name}/${env.BUILD_NUMBER} && docker build -t harbor.yutang.cn/app/${params.app_name}:${params.git_ver}_${params.add_tag} . && docker push harbor.yutang.cn/app/${params.app_name}:${params.git_ver}_${params.add_tag}"
        }
      }

      stage(‘deploy‘){
          steps {
            sh label: "deploy k8s", script: "ssh yutang2-175 ‘sh /opt/crontabs/delpoy-yamls/${params.app_name}.sh ${params.add_tag}  &&  kubectl replace -f /opt/crontabs/delpoy-yamls/yamls/${params.app_name}.yaml‘"
             
        }
      }
    }
}

使用jenkins交付微服务应用至kubernetes集群

原文:https://www.cnblogs.com/ipyanthony/p/12565894.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!