Linux服务器环境部署系列09

基础组件安装:

一、使用jenkins的pipline管道方式进行构建

1、【新建】——》【pipline】,随便取一个不重名的名字加以区分
image.png
2、填写项目名称和描述信息
image.png
3、编写groovy脚本
image.png
4、完整脚本:
node('system-test') {
   def mvnHome = tool 'maven'
   stage('Preparation') { // for display purposes
    parallel 'Extract':{
      dir('common-service') {     
        git credentialsId: '103',url: 'ssh://git@xxxx/base/common-service.git'
      }
      dir('touna-common-service') {
        git credentialsId: '103',url: 'ssh://git@xxxx/base/touna-common-service.git'
      }
      dir('touna-common-utils') {
        git credentialsId: '103',url: 'ssh://git@xxxx/base/touna-common-utils.git'
      }
      dir('order-management') {
        git credentialsId: '103',url: 'ssh://git@xxxx/credit/order-management.git'
      }
    } 
   }
   stage('Build') {
      // Run the maven build
      if (isUnix()) {
         sh "'${mvnHome}/bin/mvn' -f common-service/pom.xml -Dmaven.test.skip=true clean install"
         sh "'${mvnHome}/bin/mvn' -f touna-common-service/pom.xml -Dmaven.test.skip=true clean install"
         sh "'${mvnHome}/bin/mvn' -f touna-common-utils/pom.xml -Dmaven.test.skip=true clean install"
         sh "'${mvnHome}/bin/mvn' -f order-management/pom.xml -Dmaven.test.skip=true clean install"
      } else {
         bat(/"${mvnHome}\bin\mvn" -Dmaven.test.failure.ignore clean package/)
      }
   }
   stage('Deploy') {

   }
}
5、脚本说明:

node:标识节点名称,比如可以填写master主节点,这里system-test表示从节点
stage:表示构建阶段(名称可以随便取,这里为了区分)
parallel :表示并行执行(可以同时拉取n个仓库)
dir:表示打包后生成的项目根目录
credentialsId:git拉取代码凭证ID
git:需要配置拉取git代码凭证ID和URL地址

备注:目前我通过这种pipline管道的方式只能实现编译打包,但是无法执行shell脚本,研究了一下也没弄出来,具体不知道是因为什么原因,如果有大神知道的话还望多多指教,先在这里谢过了!

image.png

关于这个拉取git代码的凭证ID(credentialsId)就是之前配置git拉取代码凭证的时候指定的那个ID值

image.png

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容