Copy Artifacts from MultiBranch pipeline fails to find build with specified parameters

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      One of our Multibranch pipeline (using SVN) builds has two parameters:

      // tool pipeline parameters
        parameters {
          string(name: 'SVN_REVISION', defaultValue: 'HEAD', description: 'The revision to checkout')
          choice(name: 'CUSTOMER', choices: [ 'ALL', 'customer1', 'customer2' ])
        }
      

      Another pipeline needs to copy the artifacts from a specific build of this tool: tags/6.1.0, "customer1".

      Copying artifacts from trunk with the specified parameters works:

      // copy HEAD from trunk, hardcoded parameters
      copyArtifacts fingerprintArtifacts: true, flatten: true, parameters: 'CUSTOMER=customer1,SVN_REVISION=HEAD', projectName: 'rnd/tool/trunk', selector: lastSuccessful()
      // Success: Copied 2 artifacts from "rnd » tool » trunk" build number 123
      

      Trunk has other more recent successful builds but build 123 is the last successful that matches the specified parameters.

      It also works when using pipeline parameters:

      // copy HEAD from trunk, using pipeline parameters
      copyArtifacts fingerprintArtifacts: true, flatten: true, parameters: "CUSTOMER=customer1,SVN_REVISION=${TOOL_SVN_REVISION}", projectName: "rnd/tool/${java.net.URLEncoder.encode(TOOL_SVN_BRANCH, "UTF-8")}", selector: lastSuccessful(), target: 'tools'
      // Success: Copied 2 artifacts from "rnd » tool » trunk" build number 123
      

      Copying from a tag without parameters works as well:

      // copy HEAD from tags/6.1.0 without parameters
      copyArtifacts fingerprintArtifacts: true, flatten: true, projectName: 'rnd/tool/tags%2F6.1.0', selector: lastSuccessful()
      // Copied 3 artifacts from "rnd » tool » tags/6.1.0" build number 9
      

      However copying from a tag with parameters fails. Every one of the following fails with the same error:

      copyArtifacts fingerprintArtifacts: true, flatten: true, parameters: 'CUSTOMER=customer1,SVN_REVISION=HEAD', projectName: 'rnd/tool/tags%2F6.1.0', selector: lastSuccessful()
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, parameters: 'SVN_REVISION=HEAD,CUSTOMER=customer1', projectName: '/rnd/tool/tags%2F6.1.0', selector: lastSuccessful()
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, parameters: 'CUSTOMER=customer1,SVN_REVISION=HEAD', projectName: 'rnd/tool/tags%2F6.1.0', selector: buildParameter('CUSTOMER=customer1')
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, projectName: 'rnd/tool/tags%2F6.1.0', selector: buildParameter('CUSTOMER=customer1')
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, projectName: 'rnd/tool/tags%2F6.1.0', selector: buildParameter('CUSTOMER=customer1,SVN_REVISION=HEAD')
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, projectName: 'rnd/tool/tags%2F6.1.0', selector: buildParameter('SVN_REVISION=HEAD,CUSTOMER=customer1')
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, projectName: 'rnd/tool/tags%2F6.1.0', selector: buildParameter('SVN_REVISION="HEAD",CUSTOMER="customer1"')
      
      copyArtifacts fingerprintArtifacts: true, flatten: true, parameters: 'CUSTOMER=customer1,SVN_REVISION=HEAD', projectName: 'rnd/tool/tags%2F6.1.0', selector: buildParameter('CUSTOMER=customer1,SVN_REVISION=HEAD')
      
      // Failure: ERROR: Unable to find a build for artifact copy from: rnd/tool/tags%2F6.1.0
      

      How can we copy from a specific branch from a MultiBranch pipeline while specifying parameters?

            Assignee:
            Unassigned
            Reporter:
            Bram Mertens
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: