Multijob1.31Minimum Jenkins requirement: 1.625.3ID: jenkins-multijob-plugin
View Multijob on the plugin site for more information.
Older versions of this plugin may not be safe to use. Please review the following warnings before using an older version:
When to use it
- If you'd like to stop the mess with downstream / upstream jobs chains definitions
- When you want to add full hierarchy of Jenkins jobs that will be executed in sequence or in parallel
- Add context to your buildflow implementing parameter inheritance from the MultiJob to all its Phases and Jobs. Phases are sequential, whilst jobs inside each Phase are parallel
How to use it
After installing this plugin you will be able to do the following:
- When creating new Jenkins jobs you will have an option to create MultiJob project.
- In the build section, this job can define phases that contain one or more jobs.
- All jobs that belong to one phase will be executed in parallel (if there are enough executors on the node)
- All jobs in phase 2 will be executed only after the jobs in phase 1 are completed etc.
Phases are used to execute many jobs in parallel, whilst Phases are sequential.
For example you can have a common complement in phase 1, dependent components in phase 2, a deployment in phase 3 and so on and so forth.
Example plugin configuration
For example we create a MultiJob project called jenkins-multijob-inherent that contains 3 multijob phases:
This job manages the building and deployment of the Tikal multijob plugin at phase 1.
Afterwards it downloads the snapshot version of jenkins and packs it again with Tikal multijob plugin that was created at phase 1.
Finally at phase 3, it deploys the jenkins together with the multijob plugin to a deployment machine and executes selenium tests, to check the product and shutdown jenkins.
MultiJob Phases definition screenshot:
You can also see an hierarchical view of the multijob project:
Since version 1.11:
1. control build success criteria based on job status:
2. Disable a job within a phase - the use case is when you want to exclude a specific job from executing during a specific execution (well, if you wanted to remove completely -> you would just remove it...).
* Configure multiple SCM's in parent job for multiple change polling - to be continued
1.30 (May 1, 2018)
Fixing a bug that was retrying twice the number specified for maxretries field.
1.29 (Mar. 1, 2018)
[JENKINS-49328] Prevent inappropriate serialization of MultiJobBuildSubBuild.build.
1.28 (Sep. 1, 2017)
- Revert "[JENKINS-38850] - Add migration logic for actions loaded from the disk"
Add MultiJobOverview lastSuccess and lastFailure functionality for same job multiple times in same Multijob
Add Alias to Console output of Multijobs; Fix Alias NullPointerException problems
- Added Alias for Subjobs in MultijobViews (partly)
- Started Adding MultiJobBuild View Recursive Multijob table
- Added Alias for Subjobs in MultijobViews (partly)
1.27 (Aug. 4, 2017)
- Fix resume job permission issue.
1.26 (Jul. 8, 2017)
- Fix SECURITY-437
1.25 (June 13, 2017)
1.24 (Mar. 15, 2017)
- Introducing Vizsla
- Fix issue JENKINS-37351
- Add BuildOn column to MultiJob view
- Reshape MultiJob specific configuration
1.23 (Oct. 9, 2016)
- Rollback eztemplate support sue to No Class found errors - resolved JENKINS-37300
1.22 (Aug. 9, 2016)
- Serialization performance improvement - thanks to doy
- Fix a long line of Security issues introduced in Jenkins 2.0 JENKINS-36124 - Thanks to cohencil
- Fix NPE JENKINS-31643 & JENKINS-31527 - thanks to ashaybatwal
- copyartifact plugin as an optional dependency - thanks to sshelomentsev
- Support for NOT_BUILT build result - thanks to signed8bit
- Execution type for multiple jobs in a phase: parallel or sequentially - thanks to once again sshelomentsev + oleg-nenashev
- Start FindBugs fixes.
- MultiJob now supports EZ-templates - thanks to arpitgold
1.18 (Sep. 9, 2015)
- Fix NPE introduced in 1.17
1.17 (Sep. 7, 2015)
- TO BE CONTINUED ...
- Fix the MULTIJOB accumulation logic - thanks to rrialq
- Re arranging column, in same as viewed with Jenkins - thanks to Arpit Nagar
- Added phase variables - thanks to rrialq more info here
- Apply the BuildFilter to the MultiJobBuildSelector - thanks to sschuberth
- Integration with Copy Artifact Plugin -> the Copy Artifact Plugin look for an artifact from that job's build which was part of the current MultiJobBuild more info here - thanks to rsennewald
- Avoid checking sub-jobs when sub-job is triggered anyway ... - thanks to rrialq
- Fix the polling method, making it more Jenkins API - friendly - thanks to rrialq
1.16 (Dec 4, 2014)
- Add support for relative paths with the Cloudbees Folder plugin - a pull request we had to merge into the new code line many thanks to: imakowski
- Fix JENKINS-25636 - multijob does not finish if phase contains same job multiple times
1.15 (Nov. 6, 2014)
- Fix JENKINS-25452 - due to Build on SCM feature release in 1.14 Change implementation of "Build Only If SCMChanges" to be check just if it's configure ]
1.14 (Nov. 3, 2014)
- Fix JENKINS-24139, JENKINS-22292, JENKINS-21879, JENKINS-20273, JENKINS-23161 - Jenkins doesent abort "child builds" on cancelation - Many thanks to Mathieu Cantin for the PR
- Run build only if there is an SCM change (int eh child job) - thanks to rrialq
- Switch the MultiJob plugin to use the config-customWorkspace jelly tag - thanks to mattmoor
1.13 (Mar. 1, 2014)
- Fix JENKINS-21649 & JENKINS-21798 - high CPU usage since 1.11 -> special thanks to Nicolas Morey-Chaisemartin
- Add "Disable Project" button to MultiJob view
1.12 (Feb. 9, 2014)
- Fixed JENKINS-21646 thanks to Dominik Bartholdi: fix ClassCastException with Maven Project & Multi configuration project
- Fixed JENKINS-21709 & JENKINS-21675 thanks to Nicolas Morey-Chaisemartin - fix jobBaseUrl in MultiJobView so that links to jobs will be under this view
- Support CloudBees Folder plugin - thanks to imakowski
1.11 (Jan. 26, 2014)
- Support the ability to determine the Multijob state based on a failure of one of the jobs in that phase (see screenshot above)
- Fixed JENKINS-21713 - "MultiJob Plugin does continue phase before current phase succeeded"MultiJob Plugin does continue phase before current phase succeeded
- Support the ability to disable a certain job (useful when you want to disable a certain job just in a specific execution)
- UI improvements in - fix MultiJob display during execution
- Some internal / implementation improvementsSupport the ability to determine the Multijob state based on a failure of one of the jobs in that phase (see screenshot above)
1.10 (Oct. 5, 2013)
- Fixed JENKINS-17576 - Conditional buildstep unable to launch MultiJob :: thanks imod[Dominik Bartholdi] community contributor
- Fixed JENKINS-16870 - Jenkins cant display multijob view graphically if the multijob phase is wrapped in a conditional buildstep & again thanks imod[Dominik Bartholdi] community contributer
- Fixed JENKINS-19015 - Multijob plugin throws CancellationException
- Fixed JENKINS-18611 - Sometimes multijob is set as succeeded without running any downstream jobs when running in parallel - added a warning in the log for parallel job execution [ in red ... ]
- Fixed JENKINS-17810 - Multijob hierarchy is not shown when jobs inside of the phases are "Monitor an external job" - Fixed
- Fixed JENKINS-18571 - clicking on build now button fires build twice for specific jobs - Fixed
Fixed JENKINS-18361 - Provide build report API support- Issue fixed by dkichler [Dave Kichler] community contributor
We were holding back the 1.10 release for a new feature which although the long wait didn't make it into 1.10 we hope to release multi-scm support in the 1.11 release - sorry for the long delay on this, we learned it is a bigger effort than we anticipated ...
1.9 (Apr. 11, 2013)
- Fixed JENKINS-15648 - Multi Job plugins stops when sub job fails or aborted also when the "Mark phase as successful" is set as always continue
- Fixed JENKINS-17068 - Subprojects aren't stop when stopping multijob project
- Fixed JENKINS-17070 - Missing times with multiconfiguration projects
- Fixed JENKINS-17254 - Multijob view last succes / last failure columns shows status instead of #of days/hours since
- Fixed JENKINS-17284 - Jenkins cant display multijob view graphically if a job in phase not exists
- Fixed JENKINS-17153 - Dependency on parameterized-trigger should not be optional?
- Fixed JENKINS-16048 - MultiJob Detailed Table is missing when non valid MultiJob phase exits
- Fixed JENKINS-14604 / JENKINS-13078 - Multijob Plugin looses a hierarchical view at the multijob project page when it has upstream project(s)
- Fixed JENKINS-17535 - Provide env vars detailing triggered builds (thanks Kiall Mac Innes)
1.6 & 1.7 (Nov. 9, 2012)
- Fixed JENKINS-15760
- Fix backward compatibility issues
1.5 (Aug 4, 2012)
- Fix custom workspace parameter JENKINS-13576
- Fix choice parameter default value JENKINS-14074
- Fix corrupted multijob view when a multijob is a phase in another multijob JENKINS-14604
- Support NodeLabel Parameter Plugin JENKINS-14599
- Untracked bug fixes
- Fix for display in console and first fallback for job status [ thanks to: Andreas Kuhtz ]
1.2 & 1.3
- Fixed location of balls [ thanks to: Andreas Kuhtz ] in MultiJob view
- Fixed Delete/Rename of subjob
- Add configuration for MultiJob view
- Changes to fit last (1.465) jenkins version, following API changes
- Initial release