Skip to content

ace-han/coordinator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jenkins Coordinator Plugin Build Status

About

Coordinator is a Jenkins plugin to let the user create master job to include other ordinary jobs as build steps.

Build steps(job dependencies) could be categorized into serial/parallel patterns. And we believe these two patterns should cover almost every generic scenario along with breaking/non-breaking options.

Rationale

Jenkins has various ways to configure jobs execution order, such as built-in trigger Build after other projects are built, post-build action Build other projects and plenty of plugins. However, if you want to leverage Jenkins not only as a CI tool, but a sophisticated deployment platform, you will still miss the fine-grained build steps control seen in other product such as BuildForge.

Getting started

  1. Divide the whole deployment process into several parts by its nature, create separate jobs respectively, such as Maven build and packaging, transfer via SSH, database script run, static content update, some Redis commands;
  2. Create a new job of type Coordinator Project. ,include those jobs defined in step 1, specify the execution order, group some of them under same tree node to parallel run;
  3. Trigger the master job, select which steps to run and start. Then you can monitor the over status within the single page.

Detail configuration walk through: http://www.tothenew.com/blog/jenkins-coordinator-plugin/

Demo

http://jenkins.unendedquest.com/view/Coordinators/

Serial/Parallel: Direct children of this kind of node will be executed sequentially/concurrently.

Breaking/Non-Breaking: Any failure on direct children of this kind of node will break/not break the whole build.

The UI configuration as below

UI Serial Parallel
Breaking(default)
Non-Breaking

Author

Ace Han

Development

Licence

MIT

References

https://wiki.jenkins-ci.org/display/JENKINS/Coordinator