Pipelines are the essential tool in Spinnaker for controlling how to deploy your application. A pipeline is composed of a series of stages that can be combined in almost any order, which makes pipelines flexible, consistent, and repeatable.
You can configure your pipelines to run entirely automatically or require manual intervention to ensure that everything is working as expected. Similarly, pipelines can either be automatically triggered by a wide range of external inputs, including other pipelines, or be manually triggered.
This guide explains how to configure and control pipelines, including creating, adding triggers to, or disabling pipelines.
After you create your pipeline, add stages to specify the actions that your pipeline will perform.
Make sure that you are editing the Configuration stage of your pipeline.
For further information on how triggers work, see the documentation on pipeline triggers .
The first step in any pipeline is Configuration, where you can set up pipeline triggers and parameters. Each stage specifies an action the pipeline will take once it’s configured.
You can add as many stages as your pipeline needs, in any order that makes sense for you.
From the Pipelines tab, click Start Manual Execution on the pipeline you want to run. Spinnaker then shows you a confirmation dialog, where you can add any necessary parameters.
You can create a deep link to the confirmation dialog for any pipeline by adding
startManualExecution parameter to the URL for an application’s pipelines
view. The parameter’s value can be either the pipeline name or its ID.
To prepopulate pipeline parameter values in the dialog, just include them as parameters in the URL.
These links would open the dialog automatically:
These links would open the dialog automatically, and pre-populate the region
Disabling a pipeline prevents any triggers from firing, as well as preventing users from running it manually.
In order to re-enable your disabled pipeline, select Pipeline Actions and choose Enable.
Warning: The JSON you write here is not validated – Edit as JSON essentially allows you to modify the pipeline via a free-form textbox. Be careful! It’s very easy to break the pipeline, although you can restore from revision history to roll back any changes.
Spinnaker represents pipelines as JSON behind the scenes. Any changes you make to your pipeline using the UI are converted to JSON when Spinnaker saves the pipeline.
When you use the Edit as JSON feature, you are directly editing the payload. Edit as JSON allows you to set pipeline fields or properties not exposed by the UI.
In order to edit your pipeline as JSON:
Each time you save your pipeline, the current version is added to revision history. You can use revision history to diff two versions of a pipeline or to restore an older version of a pipeline.
Note: If you are using Minio or Redis as your storage service , you won’t be able to use revision history because neither supports it.
This pulls up a window that shows a JSON representation of your current pipeline. From there, you can see all previously saved versions via the drop-down menu in the upper left corner.
You can compare any version of your pipeline to either the version before it or the current pipeline.
Locking a pipeline prevents all users from modifying the pipeline using the Spinnaker UI. You can still update a locked pipeline via the API.