This document is intended to help people get started with declarative pipelines. Things are still in a highly volatile state, but if you're looking to evaluate or help contribute bringing pipeline templates to a more stable place, this doc will help you get going.
With recent versions of halyard you can
hal config features edit --pipeline-templates true
then
hal deploy apply
In orca-local.yml
:
pipelineTemplates:
enabled: true
jinja:
enabled: true
A handlebars renderer is currently in the codebase as well, but is being replaced by Jinja, so just enable that now to avoid hassles in the future.
In settings.js
add the following to the features
map:
pipelineTemplates: true
Templates are currently only resolvable via HTTP(S). For evaluation and early development efforts, I found creating gists and linking to their raw content was the easiest way to iterate.
Here's a super barebones template (single wait stage) to get you running.
Create a template using the CLI (roer)
roer pipeline-template publish template.yml
The UI supports creating pipelines given it's enabled as described above. Just create a new pipeline and choose Create from: "Template". Choose your template and configure it using the UI.
You can use a thin spinnaker CLI to publish both a template or a configuration to create a pipeline using roer.
roer pipeline save pipeline-config.yml
If you have any questions on getting started, ask in Slack.