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

Ivy branch not considered when determining dependencies

    • Icon: Bug Bug
    • Resolution: Not A Defect
    • Icon: Minor Minor
    • ivy-plugin
    • ivy plugin 1.19 on jenkins 1.439

      All of my jobs are free-style projects using the ivy plugin to knit
      them together.

      I'm building an ivy module with different ivy branches. Builds on
      any ivy branch trigger all the downstream projects, even the ones that
      don't reference that particular branch. Is that expected behavior? I
      browsed the source, and it looks like the ivy branch is taken into
      account when determining dependencies.

      Here's a generalized example,
          ivy module Foo with branches A and B
          ivy module Bar depends on Foo branch A
      When Jenkins builds Foo branch B, it launches a downstream build of
      Bar. Bar's dependency has not actually changed because it depends on
      Foo branch A. It doesn't seem like the branch is being taken into
      account when building the dependency graph.

          [JENKINS-11724] Ivy branch not considered when determining dependencies

          John McCarthy created issue -
          Gregory Boissinot made changes -
          Assignee Original: Timothy Bingaman [ tbingaman ] New: Gregory Boissinot [ gbois ]

          John McCarthy added a comment -

          Ok, I see now how this is related to the "Use extended revision matching to filter the project dependency graph" checkbox in Manage Jenkins -> Configure System. I had this checkbox unchecked. From reading the description, this looks like the behavior I'm looking for. After enabling this setting, none of my builds triggered downstream projects. I thought the issue now might be related to revision matching because a number of my modules matching with plus revision syntax (for example, 3.2.+). However, I ran a quick test with fully qualified revisions, and the downstream builds did not trigger as expected.

          Let me know what I can do to help. Do you want me to edit this issue to reflect these findings or file an enhancement request now?

          Thanks

          John McCarthy added a comment - Ok, I see now how this is related to the "Use extended revision matching to filter the project dependency graph" checkbox in Manage Jenkins -> Configure System. I had this checkbox unchecked. From reading the description, this looks like the behavior I'm looking for. After enabling this setting, none of my builds triggered downstream projects. I thought the issue now might be related to revision matching because a number of my modules matching with plus revision syntax (for example, 3.2.+). However, I ran a quick test with fully qualified revisions, and the downstream builds did not trigger as expected. Let me know what I can do to help. Do you want me to edit this issue to reflect these findings or file an enhancement request now? Thanks
          John McCarthy made changes -
          Description Original: All of my jobs are free-style projects using the ivy plugin to knit
          them together.

          I'm building an ivy module with different ivy branches. Builds on
          any ivy branch trigger all the downstream projects, even the ones that
          don't reference that particular branch. Is that expected behavior? I
          browsed the source, and it looks like the ivy branch is taken into
          account when determining dependencies.

          Here's a generalized example,
            ivy module Foo with branches A and B
            ivy module Bar depends on Foo branch A
          When Jenkins builds Foo branch B, it launches a downstream build of
          Bar. Bar's dependency has not actually changed because it depends on
          Foo branch A. It doesn't seem like the branch is being taken into
          account when building the dependency graph.
          New: All of my jobs are free-style projects using the ivy plugin to knit
          them together.

          I'm building an ivy module with different ivy branches. Builds on
          any ivy branch trigger all the downstream projects, even the ones that
          don't reference that particular branch. Is that expected behavior? I
          browsed the source, and it looks like the ivy branch is taken into
          account when determining dependencies.

          Here's a generalized example,
              ivy module Foo with branches A and B
              ivy module Bar depends on Foo branch A
          When Jenkins builds Foo branch B, it launches a downstream build of
          Bar. Bar's dependency has not actually changed because it depends on
          Foo branch A. It doesn't seem like the branch is being taken into
          account when building the dependency graph.

          John McCarthy added a comment -

          I was able to dig into this a bit more with a debugger and found that this was a bug in my usage of ivy. I wasn't setting the ivy branch and revision in my ivy module descriptor info section. In my build, I set these using variables around the ivy publish ant target, but these variables were not tied into the module descriptor. So, the default module revision ID was being used. Sorry about that.

          Thanks again for the great plugin!

          John McCarthy added a comment - I was able to dig into this a bit more with a debugger and found that this was a bug in my usage of ivy. I wasn't setting the ivy branch and revision in my ivy module descriptor info section. In my build, I set these using variables around the ivy publish ant target, but these variables were not tied into the module descriptor. So, the default module revision ID was being used. Sorry about that. Thanks again for the great plugin!
          John McCarthy made changes -
          Fix Version/s New: current [ 10162 ]
          Resolution New: Not A Defect [ 7 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]

          John McCarthy added a comment -

          Closed as Not A Defect

          John McCarthy added a comment - Closed as Not A Defect
          John McCarthy made changes -
          Status Original: Resolved [ 5 ] New: Closed [ 6 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 141967 ] New: JNJira + In-Review [ 205476 ]

            gbois Gregory Boissinot
            jmsignup John McCarthy
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: