Concourse: CI as Code

Josh Hill and I gave a talk at LOPUG on Concourse, our beloved continuous delivery and pipelining tool. The highlights:

  • Unlike other CI systems, Concourse puts pipelines first.
  • Everyone has a pipeline of some sort – how automated and well-documented is yours?
  • A pipeline can be a CI/CD process (build → unit → integration → deploy), but can also be used to e.g. version a resource, push code to Amazon S3 or a BOSH release, and all sorts of other things.
  • Pipelines are made of three components: pipelines, resources and jobs. Any pipeline can be described with these primitives.
  • Concourse stores your entire configuration as YAML. Nothing in the UI is configurable, which means your entire pipeline can be stored under version control, and your Concourse instance can be easily rebuilt.
  • Concourse integrates beautifully with Cloud Foundry.

The slides: