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.
Alex Suraci d61d5dab80
Merge pull request #3830 from concourse/feature/3811-task-cache
16 hours ago
.github stop auto-labeling 'triage' 1 month ago
atc Merge pull request #3830 from concourse/feature/3811-task-cache 16 hours ago
ci ci: build fly with cgo on Darwin 1 day ago
cmd/concourse --external-garden-address -> --external-garden-url 1 week ago
examples Rename Parallel to InParallel and nest yaml configuration 1 month ago
fly Merge pull request #3801 from cappyzawa/feature/get-team 1 week ago
go-concourse Config => Team 2 weeks ago
hack package mdi svg icons 1 month ago
screenshots add 2x scaled screenshot for hidpi laptops 8 months ago
skymarshal web - add autocomplete off to password on login 1 day ago
testflight Update rename logic and add testflight test 1 month ago
topgun topgun/k8s: update worklifecycle tests to be more succint 2 weeks ago
tsa Update tls & ssh config 4 weeks ago
web web: fixed login wats tests 1 day ago
worker Add tools.go to keep track of tool versions 1 month ago
.dockerignore flesh out CONTRIBUTING.md 7 months ago
.env run watsjs/testflight against prebuilt Concourse 7 months ago
.gitignore ignore idea files 1 week ago
CODE_OF_CONDUCT.md move important docs to root 6 months ago
CONTRIBUTING.md Merge pull request #3870 from concourse/issue/3748 5 days ago
Dockerfile ci: rework how we use Docker Compose in CI 2 months ago
LICENSE.md re-init 8 months ago
NOTICE.md say "Present" in NOTICE.md 1 month ago
README.md README: include a link to the public GH Project board 5 months ago
docker-compose.yml minor naming changes 2 weeks ago
go.mod Merge branch 'cache-cred-mgr-lookups' of https://github.com/ralekseenkov/concourse into ralekseenkov-cache-cred-mgr-lookups 3 weeks ago
go.sum Merge branch 'cache-cred-mgr-lookups' of https://github.com/ralekseenkov/concourse into ralekseenkov-cache-cred-mgr-lookups 3 weeks ago
package.json web: fix ambiguous benchmark module name 6 days ago
tools.go Add tools.go to keep track of tool versions 1 month ago
versions.go atc: permanent unique version history for base types 3 months ago
yarn.lock ci, web: add elm benchmarking 1 week ago

README.md

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.

Installation

Concourse is distributed as a single concourse binary, available on the Downloads 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 https://concourse-ci.org/docker-compose.yml
$ docker-compose up
Creating docs_concourse-db_1 ... done
Creating docs_concourse_1    ... done

Concourse will be running at 127.0.0.1:8080. 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 http://127.0.0.1:8080 -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:

resources:
- name: booklit
  type: git
  source: {uri: "https://github.com/vito/booklit"}

jobs:
- name: unit
  plan:
  - 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

Contributing

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.