• Icon: New Feature New Feature
    • Resolution: Unresolved
    • Icon: Minor Minor
    • matrix-project-plugin
    • None

      Please add an option to Skip building on offline nodes, as it is possible in Elastic Axis

          [JENKINS-29380] Skip building on offline nodes

          Craig Ringer added a comment -

          This came from http://stackoverflow.com/q/7891709/398670 which describes a workaround for it with some Groovy, too.

          An option like this would be a real plus. It's frustrating to have one offline node block a matrix build completely, and I'd love to be able to make them skippable instead. Yes, that means the ppc64 RPMs won't get built, but ... oh well, I'd rather have the x86_64 ones completed so the test jobs can fire.

          The alternative seems to be to use generated template builds instead of matrix builds. So each chain of build tasks is independent, and runs only if the relevant build worker is available. ppc64 test => ppc64 test => ppc64 package => ppc64 packagetest => ppc64 packagepublish, etc. Rather than parameterizing each build. That works, but largely prevents the use of the Jenkins UI instead of a yaml build plugin and scripting.

          Craig Ringer added a comment - This came from http://stackoverflow.com/q/7891709/398670 which describes a workaround for it with some Groovy, too. An option like this would be a real plus. It's frustrating to have one offline node block a matrix build completely, and I'd love to be able to make them skippable instead. Yes, that means the ppc64 RPMs won't get built, but ... oh well, I'd rather have the x86_64 ones completed so the test jobs can fire. The alternative seems to be to use generated template builds instead of matrix builds. So each chain of build tasks is independent, and runs only if the relevant build worker is available. ppc64 test => ppc64 test => ppc64 package => ppc64 packagetest => ppc64 packagepublish, etc. Rather than parameterizing each build. That works, but largely prevents the use of the Jenkins UI instead of a yaml build plugin and scripting.

          I work with matrix build tightly as well and this issue is really serious, because all the build pipeline (for all matrix configurations) hangs if at least one node gets offline.
          On my opinion, as a user, in the best case I would expect a timeout parameter and a checkbox with 2 options:

          • fail the build if the node is offline more than <timeout> sec.
          • skip the build if the node is offline more than <timeout> sec.
            And if the timeout value is not set, the default behaviour is to wait infinitely as it works currently.

          Alexander Samoylov added a comment - I work with matrix build tightly as well and this issue is really serious, because all the build pipeline (for all matrix configurations) hangs if at least one node gets offline. On my opinion, as a user, in the best case I would expect a timeout parameter and a checkbox with 2 options: fail the build if the node is offline more than <timeout> sec. skip the build if the node is offline more than <timeout> sec. And if the timeout value is not set, the default behaviour is to wait infinitely as it works currently.

          liyatikal added a comment -

          I need another option - Skip the build on a specific node if it's offline, run the rest of configurations

          liyatikal added a comment - I need another option - Skip the build on a specific node if it's offline, run the rest of configurations

          Martin Habets added a comment -

          I have this issue as well. Any of the solutions voiced would work for me.

           

          Martin Habets added a comment - I have this issue as well. Any of the solutions voiced would work for me.  

          The matrix build is fine, but sometimes some nodes are offline due to maintenance or hardware defects. In this case and especially if parallelising is not possible, the jobs for the offline nodes blocks the process in the queue.

          So i agree with Martin and any solution or workaround hint would be very fine.

          Lars Biermanski added a comment - The matrix build is fine, but sometimes some nodes are offline due to maintenance or hardware defects. In this case and especially if parallelising is not possible, the jobs for the offline nodes blocks the process in the queue. So i agree with Martin and any solution or workaround hint would be very fine.

            kohsuke Kohsuke Kawaguchi
            nmanos Noam Manos
            Votes:
            12 Vote for this issue
            Watchers:
            11 Start watching this issue

              Created:
              Updated: