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

IvyPlugin seems defect / no downstream triggers

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • ivy-plugin
    • CentOS 6.4

      The content inside the modules folder for each ivy-created job is not generated when using the ivy-plugin v1.23.2. This goes for the latest Jenkins LTS (v1.532.2). As this content is not generated, no build triggers are generated for downstream projects.

          [JENKINS-22124] IvyPlugin seems defect / no downstream triggers

          Darren Rowley added a comment -

          This has been broken for a while as I noticed on our projects well over 6 months ago and stopped Jenkins updating because of it. Last week I updated Jenkins completely and I can confirm this is still broken in Jenkins 1.564 with the latest 1.24 Ivy plugin. This is a show stopper for anyone using this plugin. If I get a chance I will try to fix / contribute a patch.

          Darren Rowley added a comment - This has been broken for a while as I noticed on our projects well over 6 months ago and stopped Jenkins updating because of it. Last week I updated Jenkins completely and I can confirm this is still broken in Jenkins 1.564 with the latest 1.24 Ivy plugin. This is a show stopper for anyone using this plugin. If I get a chance I will try to fix / contribute a patch.

          Darren Rowley added a comment -

          Ok after further investigation I noticed that builds after the Jenkins/Plugin upgrade no longer the show “Parsing Ivy Descriptor Files” in the console output. But builds before do.

          I believe the only happens if you have an "Ivy Project" and DO NOT have the "Build modules as separate jobs" clicked under the advanced option. This issues appears to have been introduced in this commit “Only parse ivy descriptor files when required.”:

          https://github.com/jenkinsci/ivy-plugin/commit/dbc83c6230115347fda4bba0372d7bc79942913c#diff-25d902c24283ab8cfbac54dfa101ad31

          The method parseIvyDescriptorFiles(listener, logger, envVars) at line 375 appears to have been moved under the if (!project.isAggregatorStyleBuild()) condition. Meaning anyone without that option set never gets dependencies parsed. I have patched this locally and it appears to work again. I’d contribute a patch but not sure if moving this back to where it is supposed to be would affect the rest of this commit?

          Darren Rowley added a comment - Ok after further investigation I noticed that builds after the Jenkins/Plugin upgrade no longer the show “Parsing Ivy Descriptor Files” in the console output. But builds before do. I believe the only happens if you have an "Ivy Project" and DO NOT have the "Build modules as separate jobs" clicked under the advanced option. This issues appears to have been introduced in this commit “Only parse ivy descriptor files when required.”: https://github.com/jenkinsci/ivy-plugin/commit/dbc83c6230115347fda4bba0372d7bc79942913c#diff-25d902c24283ab8cfbac54dfa101ad31 The method parseIvyDescriptorFiles(listener, logger, envVars) at line 375 appears to have been moved under the if (!project.isAggregatorStyleBuild()) condition. Meaning anyone without that option set never gets dependencies parsed. I have patched this locally and it appears to work again. I’d contribute a patch but not sure if moving this back to where it is supposed to be would affect the rest of this commit?

          Darren Rowley added a comment -

          Ok sorry, correction to what I said above, yes it is related to the above commit but the issue appears to be that (line 454) in the other call to parseIvyDescriptorFiles(...) it's only called if project.isIncrementalBuild() is set. So therefore in the advanced section if you have "Incremental build" and "build modules as separate jobs" UNCHECKED, it appears parseIvyDescriptorFiles() would never be called.

          I can confirm if you simply check "Incremental build", dependencies now get calculated and downstream jobs start triggering. However I'm not sure why you'd really want to check this option if you don't 'build modules as separate jobs'?

          Darren Rowley added a comment - Ok sorry, correction to what I said above, yes it is related to the above commit but the issue appears to be that (line 454) in the other call to parseIvyDescriptorFiles(...) it's only called if project.isIncrementalBuild() is set. So therefore in the advanced section if you have "Incremental build" and "build modules as separate jobs" UNCHECKED, it appears parseIvyDescriptorFiles() would never be called. I can confirm if you simply check "Incremental build", dependencies now get calculated and downstream jobs start triggering. However I'm not sure why you'd really want to check this option if you don't 'build modules as separate jobs'?

            tbingaman Timothy Bingaman
            jkiddo Jens Villadsen
            Votes:
            3 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: