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

Join project not triggered correctly when passing SCM info downstream via downstream-ext plugin

    XMLWordPrintable

Details

    Description

      Hi,

      I'm seeing some strange issues when using the Join and Downstream-ext plugin. I've attached a screenshot of my job setup.

      My perforce depot looks something like this:

      \\source\root
      	\\source\root\root.cpp
      	\\source\root\folderA
      		source\root\folderA\fileA.cpp
      	\\source\root\folderB
      		source\root\folderB\fileB.cpp
      

      If I modify fileA.cpp and check it in, the build process happens like this:

      1) JobA detects the change, builds, finishes and triggers a build of JobB.
      2) JobB builds and this in turn triggers its downstream projects: JobB1, JobB2.
      3) JobB1 builds because fileA.cpp is modified which is in JobB1's Perforce view (//source/root/folderA).
      4) JobB2 doesn't build because no changes are detected.
      5) JobC is then triggered.
      

      This is all working as expected, which is great.

      This isn't working as expected though...I modify root.cpp and check it in, the build process happens like this:

      1) JobA detects the change, builds, finishes and triggers a build of JobB.
      2) JobB builds and in turn triggers its downstream projects: JobB1, JobB2.
      3) JobB1 doesn't build because root.cpp is outside of JobB1's view (//source/root/folderA)
      3) JobB2 doesn't build because root.cpp is outside of JobB2's view (//source/root/folderB)
      4) At this point JobC is NOT triggered when I believe it should be! JobC is the Join project specified in JobB.
      

      So it seems that JobC will only be triggered if either JobB1 or JobB2 is triggered. This seems wrong to me and I think it's a bug in either of the plugins.

      Has anyone else seen this issue? Is there something wrong with my project setup by any chance?

      Regards,
      Tom.

      Attachments

        Activity

          tfields Thomas Fields added a comment -

          Thanks for the update wolfs.

          The reason I kept asking was because I couldn't get your workaround to work properly - maybe I setup my jobs wrong - I'll provide the details shortly.

          Although it's not ideal I wouldn't mind building my own version of the join plugin and Jenkins for that matter - I really need a fix for this issue.

          Thanks Tom

          tfields Thomas Fields added a comment - Thanks for the update wolfs. The reason I kept asking was because I couldn't get your workaround to work properly - maybe I setup my jobs wrong - I'll provide the details shortly. Although it's not ideal I wouldn't mind building my own version of the join plugin and Jenkins for that matter - I really need a fix for this issue. Thanks Tom
          tfields Thomas Fields added a comment -

          Just going over some of my old issues - did you manage to make the change to the join plugin and Jenkins core?

          tfields Thomas Fields added a comment - Just going over some of my old issues - did you manage to make the change to the join plugin and Jenkins core?
          tfields Thomas Fields added a comment -

          Are we any closer to getting this released?

          tfields Thomas Fields added a comment - Are we any closer to getting this released?
          wolfs Stefan Wolf added a comment -

          Sorry, I had no time to do something about this. Are you interested in contributing?

          wolfs Stefan Wolf added a comment - Sorry, I had no time to do something about this. Are you interested in contributing?
          tfields Thomas Fields added a comment -

          I wouldn't be adverse to contributing but my time is also very limited. I'm sure someone with a firmer grasp on how this all works would be in a better position to fix it though.

          tfields Thomas Fields added a comment - I wouldn't be adverse to contributing but my time is also very limited. I'm sure someone with a firmer grasp on how this all works would be in a better position to fix it though.

          People

            wolfs Stefan Wolf
            tfields Thomas Fields
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: