pipeline 共享库

简介

jenkins 共享库就是把一些公共的方法类定义在同一的一个仓库中,供给所有的pipeline 的项目使用,实际采用的就是groovy 的语法创建的

共享库结构

共享库中的类的编写示例src/org/*/*.groovy

vi  tools.groovy

package org.foo        //必备格式,类似于java 的一种目录格式的包路径引用

//定义一个颜色输出的方法,供所有jenkinsfile 调用
def PrintMes(value,color){
    colors = ['red'   : "\033[40;31m >>>>>>>>>>>${value}<<<<<<<<<<< \033[0m",
              'blue'  : "\033[47;34m ${value} \033[0m",
              'green' : "^[[1;32m>>>>>>>>>>${value}>>>>>>>>>>^[[m",
              'green1' : "\033[40;32m >>>>>>>>>>>${value}<<<<<<<<<<< \033[0m" ]
    ansiColor('xterm') {
        println(colors[color])
    }
}
//此文件就是一个类,里面可以定义好多个方法不止上面一个

共享库中变量的编写vars/*.grooy

vi echo.groovy

def  hello(){
  prinln("hello world")
}

jenkins配置共享库调用

Jenkins>>Manage Jenkins>>Config System   找到以下配置区域进行配置

jenkinsfile  调用共享库中的类和变量

#!groovy
@Library('jenkinsShareLibrary') _                     //引入共享库

def Tools = new org.pub.tools()                       //共享库中的类tools 引入

pipeline {
  stages{
    steps{
      script{                         //注意引入的共享库类必须在script{}里面使用,不能单独使用
        Tools.PrintMes("out put message","green")  //使用里面的方法PrintMes() 进行颜色输出
        
        echo()                       //对于共享库中vars目录下的脚本文件,直接使用就可以执行里面定义的语法。
        
      }
    }
  }
}

猜你喜欢

转载自www.cnblogs.com/fanggege/p/12902100.html
今日推荐