Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-75928

copyArtifacts with whitespace after comma copies only the first artifact when using S3 artifact manager

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • None
    • Jenkins 2.516.1 LTS jre21 official container
      Amazon ECS fargate task / On Prem deployment in docker-compose stack.

      Artifact Manager on S3: 949.v2567c4c52d79
      Copy Artifact Plugin: 770.va_6c69e063442

      When attempting to `copyArtifacts` using S3 manager, only the first matching glob in a list is copied when the filter contains whitespace after comma.

      Example:

      copyArtifacts(
        filter: '**/*file*.bin, **/*log*.bin, **/*data*.bin, **/*record*.bin',
        fingerprintArtifacts: true,
        flatten: true,
        projectName: 'artifact-producer',
        selector: lastSuccessful()
      )

      Removing the "optional whitespace" as documented in https://github.com/jenkinsci/copyartifact-plugin/blob/770.va_6c69e063442/src/main/resources/hudson/plugins/copyartifact/CopyArtifact/help-filter.html correctly downloads all matching artifacts.

      This behavior was only seen when the S3 artifact manager was enabled and is not observed with the built-in artifact management.

      Workaround:
      It's simple enough to remove the whitespace either by modifying Jenksfiles or using a shared-library to wrap `copyArtifacts`, but in our case we have a substantial number of Jenkinsfiles that would have to be changed to workaround.

            Unassigned Unassigned
            bajotumn Jacob Morris
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: