如何使用 ansibleplaybook Jenkins 插件指定多个标签

How to specify multiple tags using ansibleplaybook Jenkins Plugin

我有一个场景需要在 ansibleplugin 中指定多个标签。我尝试了多种方法来指定标签列表,但我不断收到以下错误。如何指定多个标签?

java.lang.ClassCastException: class org.jenkinsci.plugins.ansible.workflow.AnsiblePlaybookStep.setTags() expects class java.lang.String but received class java.util.ArrayList
    at org.jenkinsci.plugins.structs.describable.DescribableModel.coerce(DescribableModel.java:492)
      ansiColor('xterm') {    
          ansiblePlaybook(
                 playbook: "test.yml",
                 inventory: "test-inventory.yml",
                 vaultCredentialsId: "ansible-vault-password",
                 extras: '-v',
                 tags: [
                     "test1",
                     "test2"
                     ],
                 extraVars: [
                     examplefname: "bob", 
                     exampleLname: "${PROFILE}", 
                     ],    
                 hostKeyChecking: false,
                 colorized: true
          )
      }

虽然像您那样为 tags 参数分配 List<String> 值更有意义,但文档确实显示该值应该是 String。文档没有解释的是多个标签的分隔符是什么。如果我们检查插件的 Github repository README example snippet,我们会看到 tags 参数字符串值对于多个 Ansible 标签应该以逗号分隔。对于您的特定用例,此参数将显示为:

tags: 'test1,test2'