Jenkins pipeline(之Groovy语法简介)

发布时间 2023-07-14 22:06:18作者: 枫飘过的天1

1.Jenkins pipeline编写风格:Jenkinsfile

   声明式风格、脚本式风格

   声明式:格式有强规范性(优势:可读性强。缺点:不灵活、代码冗长)

   脚本式:使用groovy语言编写,灵活性高,可读性差。优点:实现自定义逻辑更方便、可对功能代码段封装为方法(函数)或类  

 

2.流水线脚本结构

node{
stage('Build'){
    checkout scm
    echo 'start build'
}
stage('Test'){
    echo 'start test'
}
stage('Deploy'){
    echo 'start deploy'
}

}

   Node(节点): 是执行 Step 的具体运行环境,不指定默认master节点

   Stage(环节): 一个 Pipeline 可以从逻辑上划分为若干个 Stage,每个 Stage 代表一组操作,如:Build、Test、Deploy

   Step(步骤): 最基本的操作单元,如执行Shell 脚本,构建Docker 镜像,由Jenkins 插件提供

 

3.Groovy语法简介(Groovy /ˈɡruːvi/)   

   注释

   // 单行注释    /* */ 多行注释   //**  */文档注释

   标识符

   变量名 def XX , 字母、$或_开始、不能数字开头

   字符串

   Java原生的java.lang.String;插值字符串 groovy.lang.GString

   单引号字符串

   不支持插值,def name = 'yjiyjgie'  println name.class // class java.lang.String

   三单引号字符串

   支持多行

   字符串插值

   单引号字符串和三单引号字符串,其他形式都支持字符串插值

   占位表达式中的结果最终替换到字符串相应的位置,如def greeting = "Hello ${name}"

   列表(List)

   java.util.ArrayList,[] 中间逗号分隔

   def arrayList = [1, 2, 3] // 默认类型  [下标] 取值

   字典(Maps)

   []来定义字典,元素键值冒号隔开

   如:def persons = [keyVal: 'Guillaume']

   条件语句:

   If语句:

if(condition) {

statement #1

statement #2

...

}

   For循环

   语句用于遍历一组值

for(variable declaration;expression;Increment) {

statement #1

statement #2

}

   函数

   使用返回类型或使用def关键字定义

def methodName() {

//Method code

}

参考链接:https://zhuanlan.zhihu.com/p/74792026