我对jenkins和groovy并不陌生,我正在尝试在我的jenkins文件中进行稀疏签出。目前,我只是这样做:
stage('Check out branch from Gitlab'){
echo 'Pulling...' + env.BRANCH_NAME
checkout scm
}
我希望从Jenkins Groovy脚本中执行稀疏签出,而我正在努力寻找一种实现此目的的好方法。有没有一种使用“签出”命令执行此操作的方法?
答案 0 :(得分:0)
您应为GitSCM more info here
配置一组参数下面以一个基本配置为例:
pipeline {
agent any
stages {
stage ("Git Checkout"){
steps {
script {
checkout([
$class: 'GitSCM',
branches: [[name: "devel"]],
doGenerateSubmoduleConfigurations: false,
extensions: [[
$class: 'RelativeTargetDirectory',
relativeTargetDir: "/tmp/jenkins/devel"
]],
submoduleCfg: [],
userRemoteConfigs: [[
credentialsId: 'jenkinsCredentialsId',
url: 'https://git.example.com/git/example'
]]
])
}
}
}
}
}
我附加了一个完整的Jenkins管道,其中包括一个阶段。它检出目录devel
上存储库https://git.example.com/git/example
的分支/tmp/jenkins/devel
。还请注意,您应该在Jenkins凭据(/ jenkins / credentials /)中添加(如果尚未完成)存储库的凭据,在上面的示例中,其ID为jenkinsCredentialsId
您可以阅读GitSCM的链接,以了解可以配置的更多详细信息和属性。