You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Izabela Gomes fc56cf89ab
Merge pull request #5054 from concourse/fix-put-step
2 hours ago
.github don't mark milestoned issues as stale 2 months ago
atc Merge pull request #5054 from concourse/fix-put-step 2 hours ago
cmd handle help error in concourse cmd properly 2 months ago
fly Merge pull request #4092 from joshzarrabi/master 1 day ago
go-concourse Start refactor of get_step 2 weeks ago
hack contributing: add jaeger override to support tracing feature 1 day ago
release-notes release-notes: fix typos 1 day ago
screenshots add 2x scaled screenshot for hidpi laptops 1 year ago
skymarshal Merge pull request #4684 from AnianZ/microsoft-login 1 month ago
testflight fix hooks_test 2 weeks ago
topgun atc/topgun: format go files 2 weeks ago
tracing add tracing package 1 day ago
tsa Merge pull request #3936 from cycloidio/gl_3551 5 days ago
vars Addressed the review comment of "unknow var source error". 1 month ago
web web: while dragging in flight, every pipeline card of that team will be disabled 1 week ago
worker worker/backend: format imports 2 days ago
.dockerignore flesh out 1 year ago
.env run watsjs/testflight against prebuilt Concourse 1 year ago
.gitignore ignore idea files 8 months ago move important docs to root 1 year ago contributing: fix typo 1 day ago
Dockerfile bump containerd and its dependencies 1 month ago re-init 1 year ago say "Present" in 9 months ago update link to new helm chart location 1 week ago
docker-compose.yml web: add cluster name to docker-compose.yml 9 months ago
go.mod go.mod: bump `lib/pq` to 1.3.0 1 day ago
go.sum go.mod: bump `lib/pq` to 1.3.0 1 day ago
package.json web: upgrade dependencies 3 months ago
tools.go Add tools.go to keep track of tool versions 9 months ago
versions.go concourse/#3819 using zstd to streamIn/Out between workers 7 months ago
yarn.lock web: upgrade dependencies 3 months ago

Concourse: the continuous thing-doer.

Concourse is an automation system written in Go. It is most commonly used for CI/CD, and is built to scale to any kind of automation pipeline, from simple to complex.

booklit pipeline

Concourse is very opinionated about a few things: idempotency, immutability, declarative config, stateless workers, and reproducible builds.


Concourse is distributed as a single concourse binary, available on the Releases page.

If you want to just kick the tires, jump ahead to the Quick Start.

In addition to the concourse binary, there are a few other supported formats. Consult their GitHub repos for more information:

Quick Start

$ wget
$ docker-compose up
Creating docs_concourse-db_1 ... done
Creating docs_concourse_1    ... done

Concourse will be running at You can log in with the username/password as test/test.

Next, install fly by downloading it from the web UI and target your local Concourse as the test user:

$ fly -t ci login -c -u test -p test
logging in to team 'main'

target saved

Configuring a Pipeline

There is no GUI for configuring Concourse. Instead, pipelines are configured as declarative YAML files:

- name: booklit
  type: git
  source: {uri: ""}

- name: unit
  - get: booklit
    trigger: true
  - task: test
    file: booklit/ci/test.yml

Most operations are done via the accompanying fly CLI. If you've got Concourse installed, try saving the above example as booklit.yml, target your Concourse instance, and then run:

fly -t $target set-pipeline -p booklit -c booklit.yml

These pipeline files are self-contained, maximizing portability from one Concourse instance to the next.

Learn More


Our user base is basically everyone that develops software (and wants it to work).

It's a lot of work, and we need your help! If you're interested, check out our contributing docs.