Coder Social home page Coder Social logo

jenkinsci / build-pipeline-plugin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from geoffbullen/build-pipeline-plugin

118.0 121.0 162.0 1.64 MB

Build Pipeline Plugin

Home Page: https://plugins.jenkins.io/build-pipeline-plugin/

License: MIT License

Groovy 0.86% Java 74.58% HTML 0.53% JavaScript 19.84% CSS 4.19%
adopt-this-plugin

build-pipeline-plugin's Introduction

Build Pipeline Plugin

Summary

This plugin provides a Build Pipeline View of upstream and downstream connected jobs that typically form a build pipeline. In addition, it offers the ability to define manual triggers for jobs that require intervention prior to execution (e.g., an approval process outisde of Jenkins).

WARNING: The current version of this plugin may not be safe to use. Please review the following warnings before use:

Overview

Continuous Integration has become a widely adopted practice in modern software development. Jenkins and Hudson are great tools for supporting Continuous Integration.

Taking it to the next level: Continous Integration can become the centerpeice of your deployment pipeline, orchestrating the promotion of a version of software through quality gates and into production. By extending the concepts of CI you can create a chain of jobs, each one subjecting your build to quality assurance steps. These QA steps may be a combination of manual and automated steps. Once a build has passed all of these, it can be automatically deployed into production.

In order to better support this process, we have developed the Build Pipeline Plugin. This gives the ability to form a chain of jobs based on their upstream and downstream dependencies. Downstream jobs may, as per the default behaviors, be triggered automatically, or by a suitable authorized user manually triggering it.

You can also see a history of pipelines in a view, the current status, and where each version got to in the chain based on it revision number in VCS.

Screenshots

The Pipeline View

Configuration

View Configuration

  1. Install the plugin using the Jenkins Plugin Manager and restart.
  2. Create a view of the new type, Build Pipeline View. You will then be redirected directly to the configuration page.
  3. The table below outlines each interesting parameters controls:

Job Configuration

  1. Navigate to the Job Configuration page.
  2. Scroll down to the Post-build Actions section.
    1. For an Automated downstream build step: To add a build step that will trigger automatically upon the successful completion of the previous one:
      1. Select the Build other projects check-box.
      2. Enter the name(s) of the downstream projects in the Projects to build field. (n.b. Multiple projects can be specified by using comma, like "abc, def".).
    2. For a Manually Triggered downstream build step: To add a build step that will wait for a manual trigger:
      1. Select the Build Pipeline Plugin -> Manually Execution Downstream Project check-box.
      2. Enter the name(s) of the downstream projects in the Downstream Project Names field. (n.b. Multiple projects can be specified by using comma, like "abc, def".).
  3. Click Save.

Automatic & Manual Downstream Build Steps

The Build Pipeline Plugin handles teh creation of multiple automatic or manually triggered downstream build steps on the same project.

Upgrading from Release 1.0.0

When upgrading from 1.0.0 to 1.1.x some of the previous view and job configuration fields have been removed. You may notice some errors appearing in the Jenkins log:

WARNING: Skipping a non-existen field downstreamProjectName com.thoughtworks.xstream.converters.reflection.NonExistentFieldException: No such field au.com.centrumsystems.hudson.plugin.buildpipeline.trigger.BuildPipelineTrigger.downstreamProjectName

This is because the configuration files refer to old fields that may no longer exist. In order to correct these issues, go to the Job Configuration page, confirm that all of the details are correct, and click on the Save button.

More on Pipelines

The canonical reference for pipelines in the book Continuous Delivery.

Chapter 5 of the book, which describes how deployment pipelines work, is available for free.

Building the Project

Dependencies

Targets

  $ mvn clean install

Installing Plugin Locally

  1. Build the project to produce target/build-pipeline-plugin.hpi
  2. Remove any installation of the build-pipeline-plugin in $user.home/.jenkins/plugins/
  3. Copy target/build-pipeline-plugin.hpi to $user.home/.jenkins/plugins/
  4. Start/Restart Jenkins

Continuous Integration

After a pull request is accepted, it is run through a Jenkins job hosted on CloudBees.

build-pipeline-plugin's People

Contributors

christ66 avatar dalvizu avatar dohbedoh avatar geoffbullen avatar heincouwet avatar ingorichter avatar jamesforsee avatar jglick avatar jpederzolli avatar kohsuke avatar kostyasha avatar liweing avatar ljohnston avatar marco-miller avatar markewaite avatar mattmoor avatar mscata avatar ndeloof avatar patbos avatar pintos avatar piotrdytkowski avatar rdesgroppes avatar recena avatar sghill avatar shinstudio avatar tetradeus avatar tomakehurst avatar tomykaira avatar varmas2 avatar yoichi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.