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

Release plugin is not available for multi-config projects

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      Use-case:

      • there is a multi-configuration project that runs product build
      • it is necessary to perform pre/post actions (set tags, build cumulative distribution after all configurations are built)

      Release plugin would be ideal for this but is does not support multi-config projects yet.

        Attachments

          Activity

          Hide
          petehayes Peter Hayes added a comment -

          I took a look at this support a while ago and found that the BuildWrapper extension point that the plugin uses did not work well with matrix builds. Have you done any plugin development? If you could point me to a design that could work for matrix builds, I could give it a shot.

          Show
          petehayes Peter Hayes added a comment - I took a look at this support a while ago and found that the BuildWrapper extension point that the plugin uses did not work well with matrix builds. Have you done any plugin development? If you could point me to a design that could work for matrix builds, I could give it a shot.
          Hide
          dbailey Darragh Bailey added a comment -

          Perhaps the problem with implementing this is no longer true?

          I've made a (potentially naive) stab with https://github.com/darraghb/release-plugin/tree/feature/support-multi-configuration-projects and it appears to do the right thing.

          I'm not particularly familiar with plugin dev for Jenkins, nor the various interaction points in the code, so there may be more to do for this to work correctly in all cases.

          Show
          dbailey Darragh Bailey added a comment - Perhaps the problem with implementing this is no longer true? I've made a (potentially naive) stab with https://github.com/darraghb/release-plugin/tree/feature/support-multi-configuration-projects and it appears to do the right thing. I'm not particularly familiar with plugin dev for Jenkins, nor the various interaction points in the code, so there may be more to do for this to work correctly in all cases.
          Hide
          avalanche123 Bulat Shakirzyanov added a comment -

          This issue has been addressed in release-plugin version 2.5, relevant commit - https://github.com/jenkinsci/release-plugin/commit/d8cf7d622e75a85fc30290f565f246748ee9d333

          Please upgrade and let me know if it works

          Show
          avalanche123 Bulat Shakirzyanov added a comment - This issue has been addressed in release-plugin version 2.5, relevant commit - https://github.com/jenkinsci/release-plugin/commit/d8cf7d622e75a85fc30290f565f246748ee9d333 Please upgrade and let me know if it works
          Hide
          howama howama added a comment -

          Not sure if this is a different use case, but at least for us using maven we need the release to be performed on only one of the configurations in a multi-config project.
          We use multi-config to run the tests in different environments (usually webdriver browsers), but only want to create a single release. The current approach would result in duplicate SCM tags, updates to poms, deployments of released versions to nexus, etc (if we didn't have tools in place to stop them)

          Could an option be added to select a single config matrix to be used for release builds?

          Show
          howama howama added a comment - Not sure if this is a different use case, but at least for us using maven we need the release to be performed on only one of the configurations in a multi-config project. We use multi-config to run the tests in different environments (usually webdriver browsers), but only want to create a single release. The current approach would result in duplicate SCM tags, updates to poms, deployments of released versions to nexus, etc (if we didn't have tools in place to stop them) Could an option be added to select a single config matrix to be used for release builds?
          Hide
          avalanche123 Bulat Shakirzyanov added a comment -

          the latest snapshot version of release-plugin has ability to specify steps to run before and after all configurations have finished using matrix aggregator. We use it to tag release before all configurations, then each configuration checks out the tag and runs build, finally, after all configurations succeeded, we update pom.xml and publish artifacts. I haven't release the matrix aggregator stuff yet, but if you can try it and let me know if that works, I'll release it in the next version

          Show
          avalanche123 Bulat Shakirzyanov added a comment - the latest snapshot version of release-plugin has ability to specify steps to run before and after all configurations have finished using matrix aggregator. We use it to tag release before all configurations, then each configuration checks out the tag and runs build, finally, after all configurations succeeded, we update pom.xml and publish artifacts. I haven't release the matrix aggregator stuff yet, but if you can try it and let me know if that works, I'll release it in the next version

            People

            • Assignee:
              avalanche123 Bulat Shakirzyanov
              Reporter:
              samodelkin samodelkin
            • Votes:
              3 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: