Jenkinsfile声明性脚本git插件:如何设置浅克隆和深度属性

Giu*_*ssi 4 plugins declarative jenkins-pipeline

我在 Jenkinsfile 中有一个声明性管道,我可以在 git 插件中添加浅克隆选项,深度 = 1,超时 = 30。目前我正在运行的设置是:

            git(
                credentialsId: 'MY_GIT_CREDENTIALS', 
                branch: "${params.BRANCH}", 
                url: "${env.BBSCM}"
            )
Run Code Online (Sandbox Code Playgroud)

有人可以帮我在语句中添加三个所需的参数吗?

Mat*_*ard 8

要启用这些附加的自定义选项,您需要在该类中使用完整且推荐的SCM 步骤检出方法GitSCM。查阅文档后,我们发现当前参数和所需参数的语法和用法如下所示:

checkout([
  $class: 'GitSCM',
  branches: [[name: "*/${params.BRANCH}"]],
  extensions: [[
    $class: 'CloneOption',
    shallow: true,
    depth:   1,
    timeout: 30
  ]],
  userRemoteConfigs: [[
    url:           params.SCM_URL,
    credentialsId: 'MY_GIT_CREDENTIALS'
  ]]
])
Run Code Online (Sandbox Code Playgroud)

如果您是 Jenkins Pipeline 的新手,并且此语法和用法看起来令人生畏,请注意,将来您还可以使用Pipeline Syntax Snippet Generator寻求帮助。