Skip to content
concoursePublic

About

Concourse is a container-based automation system written in Go. It's mostly used for CI/CD.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

7.9k stars

Watchers

136 watching

Forks

Latest commit

 

History

28,403 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Concourse: the continuous thing-doer

Discord Unit Tests Contributors Help Wanted

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.

registry-image 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 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 https://concourse-ci.org/docker-compose.yml
$ docker-compose up -d
Creating docs_concourse-db_1 ... done
Creating docs_concourse_1    ... done

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

Next, install fly by downloading it from the web UI at http://localhost:8080/download-fly and target your local Concourse as the test user:

$ fly -t ci login -c http://localhost:8080 -u test -p test
logging in to team 'main'

target saved

You can follow our Getting Started Tutorial to learn how to write Concourse pipelines.

Configuring a Pipeline

Concourse has no GUI for configuration. Instead, pipelines are defined in declarative YAML files:

resources:
- name: examples
  type: git
  source:
    uri: https://github.com/concourse/examples

jobs:
- name: hello-world
  plan:
  - get: examples
    trigger: true
  - task: hello
    file: examples/tasks/hello-world.yml

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

fly -t ci set-pipeline -p hello-world -c hello-world.yml

These pipeline files are self-contained, making them easily portable between Concourse instances.

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.

About

Concourse is a container-based automation system written in Go. It's mostly used for CI/CD.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

7.9k stars

Watchers

136 watching

Forks

Releases

Sponsor this project

Used by

Contributors

Languages