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

Aborted or failed job in a phase does not immediately cause the multi-job to fail

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      I have a MultiJob with a single phase consisting of 3 child jobs. When any one of these child jobs fails (or is aborted) I would expect the MultiJob to fail and cancel all the other child jobs immediately. Instead, it waits until all child jobs complete before failing.

      I've attached a screenshot of my configuration. Am I doing it wrong, or is there a bug?

        Attachments

          Activity

          Hide
          jamlevi James Levinson added a comment -

          The killPhaseOn, introduced in 1.11, defaults to Failure, as indicated in your screenshot, so this should fail the phase after any job failure and abort the other running jobs. On my systems, I have observed this does in fact work. I am now on plugin version 1.13.

          I would also argue that the developers changed the behavior of the plugin when they selected Failure as a default and it should have been set to Never.

          Show
          jamlevi James Levinson added a comment - The killPhaseOn, introduced in 1.11, defaults to Failure, as indicated in your screenshot, so this should fail the phase after any job failure and abort the other running jobs. On my systems, I have observed this does in fact work. I am now on plugin version 1.13. I would also argue that the developers changed the behavior of the plugin when they selected Failure as a default and it should have been set to Never.
          Hide
          mcantin Mathieu Cantin added a comment -

          Yes, I have submit a pull request to fix this bug.

          Show
          mcantin Mathieu Cantin added a comment - Yes, I have submit a pull request to fix this bug.
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Mathieu Cantin
          Path:
          pom.xml
          src/main/java/com/tikal/jenkins/plugins/multijob/FileBuildParameters.java
          src/main/java/com/tikal/jenkins/plugins/multijob/LineQueue.java
          src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobBuild.java
          src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobBuilder.java
          src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobChangeLogSet.java
          src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobProject.java
          src/main/java/com/tikal/jenkins/plugins/multijob/ParserRuleFile.java
          src/main/java/com/tikal/jenkins/plugins/multijob/PhaseJobsConfig.java
          src/main/java/com/tikal/jenkins/plugins/multijob/Plugin.java
          src/main/java/com/tikal/jenkins/plugins/multijob/PredefinedBuildParameters.java
          src/main/java/com/tikal/jenkins/plugins/multijob/SubTask.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/AbstractWrapper.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/BuildState.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/ConsoleColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/JobColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/LastDurationColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/LastFailureColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/LastSuccessColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/MultiJobListViewColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/MultiJobView.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/PhaseWrapper.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/ProjectWrapper.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/StatusColumn.java
          src/main/java/com/tikal/jenkins/plugins/multijob/views/WeatherColumn.java
          src/main/resources/com/tikal/jenkins/plugins/multijob/MultiJobBuild/main.jelly
          src/main/resources/com/tikal/jenkins/plugins/multijob/MultiJobBuilder/config.jelly
          src/main/resources/com/tikal/jenkins/plugins/multijob/MultiJobProject/main.jelly
          src/main/resources/com/tikal/jenkins/plugins/multijob/PhaseJobsConfig/global.jelly
          src/main/webapp/help-abort.html
          src/main/webapp/help-addParsingRules.html
          src/main/webapp/help-condition.html
          src/main/webapp/help-maxRetry.html
          src/main/webapp/help-parseRuleChoice.html
          src/main/webapp/help-retry.html
          src/main/webapp/retry.gif
          src/test/java/com/tikal/jenkins/plugins/multijob/test/ConditionalPhaseTest.java
          src/test/java/com/tikal/jenkins/plugins/multijob/test/PhaseJobsConfigTest.java
          http://jenkins-ci.org/commit/tikal-multijob-plugin/4260fc5c317ea1328129777e0987a2fceceffd15
          Log:
          Allow retry of jobs in a phase + multiple fixes

          • Updated dependencies
          • Stopping Multi Job will also stops all downstream job JENKINS-24139
            JENKINS-22292 JENKINS-21879 JENKINS-20273 JENKINS-23161
          • Add the possibility to make a step conditional. You can define simple
            groovy expression for each job. JENKINS-23968
          • Fix NPE when a downstream job is unstable JENKINS-20846
            JENKINS-20557
          • Add retry on a failed job when a user defined condition is met. You
            can configure the number of retries per job.
          • Some fixes to match the new look of Jenkins.
          • Rename Delete to "Delete job" because there is confusion between the
            deletion of parameters and the delete of a job.
          • Allow reordering jobs in a phase
          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Mathieu Cantin Path: pom.xml src/main/java/com/tikal/jenkins/plugins/multijob/FileBuildParameters.java src/main/java/com/tikal/jenkins/plugins/multijob/LineQueue.java src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobBuild.java src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobBuilder.java src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobChangeLogSet.java src/main/java/com/tikal/jenkins/plugins/multijob/MultiJobProject.java src/main/java/com/tikal/jenkins/plugins/multijob/ParserRuleFile.java src/main/java/com/tikal/jenkins/plugins/multijob/PhaseJobsConfig.java src/main/java/com/tikal/jenkins/plugins/multijob/Plugin.java src/main/java/com/tikal/jenkins/plugins/multijob/PredefinedBuildParameters.java src/main/java/com/tikal/jenkins/plugins/multijob/SubTask.java src/main/java/com/tikal/jenkins/plugins/multijob/views/AbstractWrapper.java src/main/java/com/tikal/jenkins/plugins/multijob/views/BuildState.java src/main/java/com/tikal/jenkins/plugins/multijob/views/ConsoleColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/JobColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/LastDurationColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/LastFailureColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/LastSuccessColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/MultiJobListViewColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/MultiJobView.java src/main/java/com/tikal/jenkins/plugins/multijob/views/PhaseWrapper.java src/main/java/com/tikal/jenkins/plugins/multijob/views/ProjectWrapper.java src/main/java/com/tikal/jenkins/plugins/multijob/views/StatusColumn.java src/main/java/com/tikal/jenkins/plugins/multijob/views/WeatherColumn.java src/main/resources/com/tikal/jenkins/plugins/multijob/MultiJobBuild/main.jelly src/main/resources/com/tikal/jenkins/plugins/multijob/MultiJobBuilder/config.jelly src/main/resources/com/tikal/jenkins/plugins/multijob/MultiJobProject/main.jelly src/main/resources/com/tikal/jenkins/plugins/multijob/PhaseJobsConfig/global.jelly src/main/webapp/help-abort.html src/main/webapp/help-addParsingRules.html src/main/webapp/help-condition.html src/main/webapp/help-maxRetry.html src/main/webapp/help-parseRuleChoice.html src/main/webapp/help-retry.html src/main/webapp/retry.gif src/test/java/com/tikal/jenkins/plugins/multijob/test/ConditionalPhaseTest.java src/test/java/com/tikal/jenkins/plugins/multijob/test/PhaseJobsConfigTest.java http://jenkins-ci.org/commit/tikal-multijob-plugin/4260fc5c317ea1328129777e0987a2fceceffd15 Log: Allow retry of jobs in a phase + multiple fixes Updated dependencies Stopping Multi Job will also stops all downstream job JENKINS-24139 JENKINS-22292 JENKINS-21879 JENKINS-20273 JENKINS-23161 Add the possibility to make a step conditional. You can define simple groovy expression for each job. JENKINS-23968 Fix NPE when a downstream job is unstable JENKINS-20846 JENKINS-20557 Add retry on a failed job when a user defined condition is met. You can configure the number of retries per job. Some fixes to match the new look of Jenkins. Rename Delete to "Delete job" because there is confusion between the deletion of parameters and the delete of a job. Allow reordering jobs in a phase

            People

            Assignee:
            mcantin Mathieu Cantin
            Reporter:
            hiltonc Hilton Campbell
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: