Jenkins结帐流程步骤中是否允许多个“扩展”值?

问题描述

参考workflow scm step中的“扩展”属性,它被声明为带有“嵌套对象选择”的数组/列表。

我想做类似以下的事情:

checkout(
  [
    $class: 'GitSCM',extensions: [
      [$class: 'CloneOption',timeout: 15],[$class: 'AuthorInChangelog']
    ],...
  ]
)

checkout.extensions是否真的是数组/列表的数组/列表?

解决方法

是的,您可以指定多个扩展名,以下是适合我的示例

checkout changelog: changelog,poll: true,scm: [
            $class: 'GitSCM',branches: [[name: "${branchName}"]],doGenerateSubmoduleConfigurations: false,extensions: [[$class: 'CloneOption',timeout: 60],[$class: 'SubmoduleOption',recursiveSubmodules: true,parentCredentials: true,[$class: 'PruneStaleBranch']],submoduleCfg: [],userRemoteConfigs: [[name: 'origin',url: "${env.GITLAB_SSH}/${projectName}.git",credentialsId: 'jenkins']]
    ]