jenkins pipeline之流水线脚本版本化学习二(实践之下git下载)

接上篇,接下来,我们就来实践一下,将从GIT下载的代码放在share里面

假设,我们在git上下载代码的pipline脚本如下:

checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '410b9dafa33-38d7-48de-b916-43cb04b2aff7', url: 'ssh://huzq@192.168.0.1:29418/xxx/xxxx']]])

这里有几个变量,要下载的分支,ssh的密码,git的地址

那么,我们怎么写呢,如下:

1、在vars文件夹下建一个文件,名叫gitCheckout.groovy

2、写入如下脚本:

#!/usr/bin/env groovy
def call(Map stageParams){
    checkout([$class: 'GitSCM', 
        branches: [[name: stageParams.Version]], 
        doGenerateSubmoduleConfigurations: false, 
        extensions: [], 
        submoduleCfg: [], 
        userRemoteConfigs: [[credentialsId: stageParams.credentialsId, url: stageParams.url]]])
}

脚本的含义就不解释了,怎么用呢。

接下来,我们在任务的pipeline脚本中使用该library

library 'my-shared-library'

gitCheckout(
  Version: 'master', 
  credentialsId: '410b43a3-38d7-48de-b916-43cb04b2aff7',url: 
  'ssh://huzq@192.168.0.1:29418/xx/xx')

先全局化libary,再直接使用该函数即可

注:call函数必须就是调用pipeline执行的函数,类似main函数一样

原文地址:https://www.cnblogs.com/landhu/p/12836085.html