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

Exclusive execution plugin isn't compatible with multi-configuration projects tied to slaves

    Details

    • Similar Issues:

      Description

      Steps to repro:

      1) Install https://wiki.jenkins-ci.org/display/JENKINS/Exclusive+Execution+Plugin
      2) Create a multi-configuration project
      3) Configure the project from step 2, in the "Configuration Matrix section" click "Add axis".
      4) Choose "Slaves".
      5) At this point you might be bitten by https://issues.jenkins-ci.org/browse/JENKINS-9689 - see comments for the workaround
      6) Choose at least 2 build servers (ie. master and slave).
      7) Build the project from step 2.

      The project is dispatched to both the master and slave build servers, but neither ever complete.

      Slave's console output says:
      09:47:13 [ExclusiveBuildWrapper] Executing on slavePC1
      09:47:13 [ExclusiveBuildWrapper] Putting Jenkins in shutdown mode...

      Master's console output says:
      09:47:13 [ExclusiveBuildWrapper] Executing on master
      09:47:13 [ExclusiveBuildWrapper] Putting Jenkins in shutdown mode...

      The system never exits from this state.

        Attachments

          Issue Links

            Activity

            Hide
            abigos Andy Bigos added a comment -

            Hi,

            I have a similar request to Tom's. I'm using a matrix project and the Elastic Axes plugin to run a job on all the slaves with a particular label. The job is a housekeeping job and I want to ensure that no other jobs are running while it runs. The Exclusive Execution plugin would be ideal for this if multi-configuration projects were supported. Do you have any plans to add the support?

            Ta
            Andy

            Show
            abigos Andy Bigos added a comment - Hi, I have a similar request to Tom's. I'm using a matrix project and the Elastic Axes plugin to run a job on all the slaves with a particular label. The job is a housekeeping job and I want to ensure that no other jobs are running while it runs. The Exclusive Execution plugin would be ideal for this if multi-configuration projects were supported. Do you have any plans to add the support? Ta Andy
            Hide
            tfields Thomas Fields added a comment -

            Hi Marco,

            Did you manage to find the time to modify the plugin to support my needs?

            Cheers,
            Tom.

            Show
            tfields Thomas Fields added a comment - Hi Marco, Did you manage to find the time to modify the plugin to support my needs? Cheers, Tom.
            Hide
            tfields Thomas Fields added a comment -

            Hi Marco,

            Thanks for your reply. I needed a plugin that basically lets me run the same job on the master and all slave nodes when no other jobs are running. In my case, the job I want to run forces Perforce to sync a new development SDK, which can't happen mid build for obvious reasons.

            Updating the plugin would be great or if you could suggest an alternative plugin to use that would also be very useful.

            Thanks,
            Tom.

            Show
            tfields Thomas Fields added a comment - Hi Marco, Thanks for your reply. I needed a plugin that basically lets me run the same job on the master and all slave nodes when no other jobs are running. In my case, the job I want to run forces Perforce to sync a new development SDK, which can't happen mid build for obvious reasons. Updating the plugin would be great or if you could suggest an alternative plugin to use that would also be very useful. Thanks, Tom.
            Hide
            mambu Marco Ambu added a comment -

            Hi, this plugin was developed to run a backup script when no other jobs were running. So it wasn't designed to take into account multiple builds in slaves. I'll need some time to take a look into that to see if the plugin can be modified to suit your needs.
            I cannot suggest any workaround because I don't know your needs.

            Show
            mambu Marco Ambu added a comment - Hi, this plugin was developed to run a backup script when no other jobs were running. So it wasn't designed to take into account multiple builds in slaves. I'll need some time to take a look into that to see if the plugin can be modified to suit your needs. I cannot suggest any workaround because I don't know your needs.
            Hide
            tfields Thomas Fields added a comment -

            Hi Marco, Is there anyway the plugin can be updated to fix the problem? Failing that, do you know of any other plugin/idea I can use to handle my use case?

            Thanks, Tom.

            Show
            tfields Thomas Fields added a comment - Hi Marco, Is there anyway the plugin can be updated to fix the problem? Failing that, do you know of any other plugin/idea I can use to handle my use case? Thanks, Tom.
            Hide
            mambu Marco Ambu added a comment -

            Hi, yes you are right, it is not compatible, because you assigned the 'same' job to two different hosts.
            The way the plugin works is to wait until all job are finished and then if the only job is the one that should run 'exclusively' then it starts.

            Show
            mambu Marco Ambu added a comment - Hi, yes you are right, it is not compatible, because you assigned the 'same' job to two different hosts. The way the plugin works is to wait until all job are finished and then if the only job is the one that should run 'exclusively' then it starts.

              People

              • Assignee:
                mambu Marco Ambu
                Reporter:
                tfields Thomas Fields
              • Votes:
                1 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated: