When creating a new Concourse pipeline, it's best practice to start by using an existing template.
- Should be the same name as the GitHub repo containing the source code that it's building
- Although the pipeline is a YAML file, it should not have a
.yml
file extension
- All lowercase
- No underscores or spaces.... use hyphens
- No ampersands
- Try to keep names short
- Pipelines should be ordered by
- Groups
- Jobs
- Resources
- Resource
- Groups must have an
All
that contains all jobs in the pipeline
- No inline comments
- Try to avoid bespoke
config
andrun
commands in your tasks where possible. The preferred option is to put it in a task in Concourse Resource and call it usingfile
. This means it can be reused in other pipelines and makes your pipeline cleaner and easier to read and maintain.
- Only use an approved icon for your
Resources
. Currently, these are:- bitbucket - used for S3 release buckets (the name is misleading but it's the only bucket icon available)
- docker - used for Docker images
- folder-zip - used for
maven-repository
- github-circle - used for GitHub repos
- human - used for accessibility testing
- iframe - used for
taf-source
- package-variant-closed - used for releases
- slack - used for
notify-slack
- source-merge - used for analysing pull-requests
- tag - used for
release-tag
- timer - used for
time
resources - xml - used for XML files such as pom.xml