Skip to content
Damien Coraboeuf edited this page Mar 27, 2017 · 28 revisions

Seed Jenkins plug-in

The Seed project aims to help automating the generation and management of pipelines for branches of a project in Jenkins.

Quick links:

Before diving into the documentation, you can also watch the following video material:

The Seed plug-in allows a separation a responsibilities:

Overview teams

  • the Jenkins team designs and tests pipeline libraries...
  • the development teams use and configure those pipeline libraries for their projects.

Its behaviour is illustrated by the diagram below:

Implementation overview

  • having an initial Seed job to generate/update Project seed jobs
  • each project is hold in its own folder
  • the Project seed job is used to generate/update one Branch seed job for a given branch
  • each branch is hold in its own folder
  • the Branch seed job is used to generate/update the pipeline for the branch

Those jobs can be triggered automatically when some events are received on some connectors. Three connectors are supported by default: GitHub WebHooks, BitBucket WebHooks and HTTP. Other can be added using extensions.

Note that the names and contents of the different levels of seed jobs can be configured to suit your needs.

See the following sections for more information:

This documentation is suitable for the versions 1.x and 2.x of the Seed plug-in. For the migration from the versions 0.x, please look at this [link](Migration from 0.x).

Clone this wiki locally