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

S3 Managed Artifacts Improve Path for Multi Configuration Builds

    Details

    • Similar Issues:

      Description

      If I have a Multi-Configuration build ("myjob") with two axes (appFlavor: "Internal" or "External"; appVariant: "Prod" or "Debug") I get the following structure on S3:

      jobs/appFlavor=Internal,appVariant=Prod,label=android/#/
      jobs/appFlavor=External,appVariant=Prod,label=android/#/
      jobs/appFlavor=Internal,appVariant=Debug,label=android/#/
      jobs/appFlavor=External,appVariant=Debug,label=android/#/

      I would like to see either:
      jobs/myjob-appFlavor=Internal,appVariant=Prod,label=android/#/
      jobs/myjob-appFlavor=External,appVariant=Prod,label=android/#/
      jobs/myjob-appFlavor=Internal,appVariant=Debug,label=android/#/
      jobs/myjob-appFlavor=External,appVariant=Debug,label=android/#/

      or

      jobs/myjob/appFlavor=Internal,appVariant=Prod,label=android/#/
      jobs/myjob/appFlavor=External,appVariant=Prod,label=android/#/
      jobs/myjob/appFlavor=Internal,appVariant=Debug,label=android/#/
      jobs/myjob/appFlavor=External,appVariant=Debug,label=android/#/

      I have two jobs with the same Axes/values, and I currently end up with collisions on S3 because the parent job name is not used in constructing the file key.

        Attachments

          Activity

          Hide
          tomtheengineer Tom Hughes added a comment -

          I'm also hitting this issue using a matrix build with one axis. With a job called "myjob" and choosing slaves based on labels, I end up with the following path:

          jobs/label=foo/build_number/artifact_name
          

          Instead, I would expect the job name to be included in the path so it doesn't conflict with other jobs:

          jobs/myjob/label=foo/build_number/artifact_name
          
          Show
          tomtheengineer Tom Hughes added a comment - I'm also hitting this issue using a matrix build with one axis. With a job called "myjob" and choosing slaves based on labels, I end up with the following path: jobs/label=foo/build_number/artifact_name Instead, I would expect the job name to be included in the path so it doesn't conflict with other jobs: jobs/myjob/label=foo/build_number/artifact_name

            People

            • Assignee:
              Unassigned
              Reporter:
              thereis Sam Reisner
            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: