Spinnaker Training Series #3: Create Pipelines

Ethan Rogers, resident Spinnaker expert, explains how to create pipelines to deploy applications with Spinnaker.

A Transcript of the video is available below:

Ethan: What’s up guys this is Ethan, your Spinnaker expert. Thanks for joining us for another instalment of our Spinnaker training series, where we teach you how to use Spinnaker and get the most out of it. Today we are going to be talking about how to create and build pipelines within Spinnaker to deploy your application.
So the first thing that we are going to do in Spinnaker, in the Spinnaker UI is we are going to jump over to our pipeline section. Now once this loads will see a bunch of pipelines but today we are just going to create a new one. So the first thing we are going to do is we are going to click this create button right here and give our pipeline a name. This name should probably be something meaningful like, Deploy to production. So we will call ours, ‘Deploy to staging,’ now the next thing we are going to do is click create. What that’s going to do is go ahead and create the pipeline and drop you into this section where you can build your pipeline. Now if you have watched one of the previous videos you already know that Spinnaker is made up of a series of stages that we can build to compose these pipelines. So I will go over a couple of the options we have in this configuration section. The first one is automated triggers.
A trigger can be any point in your software development process, whether that is a push to Github, Jenkins, successfully building one of your artefacts or some Docker image getting pushed to your Docker registry. We can also have parameters, and parameters are really great for dynamic configuration. It is important though for parameters to have some default value that's same, that will make up the majority of cases. So when your pipeline executes by some trigger, you know for sure that your pipeline is going to do what you want it to do. These parameters can be overwritten at runtime if executed manually. So the first thing that we are going to do today is we are going to add a stage by clicking this ‘add stage button’ and we will select a manual execution stage, the manual judgment stage I am sorry. So a manual judgment stage is going to give a user the ability to cancel the pipeline at some point throughout its life or continue on with the pipeline. Now this is really useful if you have some type of promotion strategy that requires authorization for your pipeline.
Now, we are going to add another stage that is dependent on this stage, so if the execution is stopped via this manual judgment we won’t progress for the down allayer but if it is, we will pick up these next stages. So what we are going to do is add a new stage. This stage will be a wait stage and this stage is really just for the demo purposes and what this stage will do is will wait 30 seconds. Now, one of the really cool things about Spinnaker is that we can do these stages in parallel. So what we will do is we will jump back over to this manual judgment stage and we will just add another stage and you can see here that this graph shows that once the manual judgment succeeds we are going to progress onto these two other stages and you can see that this depends on section here. It depends on the out string stage called the manual judgment and we will just add another wait stage here. So you can see that with building these pipelines in Spinnaker you can kind of build out the deployment flows that fit your needs and really give you the power and flexibility to kind of model whatever you want.
I hope this has been a useful video for you in helping understand how Spinnaker pipelines work. Be sure to watch other videos in these series as we explain the different stages and different types of things that you can do with pipelines.
Thanks for watching.