Go to file
Alex Suraci ef73d0830c Revert "docker-compose: break worker/web dependency"
this breaks downgrade tests; the worker can't unregister in time, since
the web node just goes away immediately, and workers give up when all
web nodes are unreachable, assuming the cluster is being destroyed.

as a result, the check container ends up sticking around on a stalled
worker, and the check eventually times out. a better solution might be
to have checking not attempt to use a container that's on a stalled
worker, but let's not block the pipeline on that in the meantime.

This reverts commit 3a5690d3bb.
2020-06-23 13:32:19 -04:00
.github issue template: reference CONTRIBUTING.md 2020-06-19 13:19:03 -04:00
atc Merge pull request #5729 from tlwr/master 2020-06-23 11:12:43 -04:00
cmd Merge branch 'release/6.1.x' 2020-05-12 17:15:20 -04:00
fly fly: fix logging in to teams as an admin 2020-06-10 17:30:45 -04:00
go-concourse moving ListAllJobs from team to client.go 2020-06-19 15:22:32 +02:00
hack hack: add opencensus agent when jaeger is enabled 2020-06-11 17:45:40 -04:00
release-notes Merge branch 'master' into bug-5535-partial-match-version 2020-06-22 17:27:45 -04:00
screenshots add 2x scaled screenshot for hidpi laptops 2018-09-19 10:36:30 -04:00
skymarshal fly: behavior: add validation for empty auth config 2020-05-20 17:50:47 +02:00
testflight testflight: fix race in set-pipeline 2020-06-23 09:18:40 +01:00
topgun Merge pull request #5511 from concourse/issue/5473 2020-06-10 15:25:22 -04:00
tracing atc: test parent span is propagated to children 2020-06-08 16:35:04 -04:00
tsa [#5082] Increase tsa/client keepalive timeout 2020-05-05 15:42:52 -05:00
vars vars: use go std err wrapping 2020-03-04 10:18:05 -05:00
web Merge pull request #5760 from concourse/archived-ui 2020-06-22 17:07:13 -04:00
worker Merge pull request #5646 from concourse/fix-containerd-start-flake 2020-06-16 10:00:16 -04:00
.dockerignore flesh out CONTRIBUTING.md 2018-09-25 14:18:48 -04:00
.env run watsjs/testflight against prebuilt Concourse 2018-10-01 17:10:35 -04:00
.gitignore worker: rename backend to runtime 2020-05-13 11:44:04 -04:00
CODE_OF_CONDUCT.md move important docs to root 2018-11-20 11:17:20 -05:00
CONTRIBUTING.md clarify example job instructions in CONTRIBUTING.md 2020-05-17 18:54:52 -04:00
Dockerfile Dockerfile: set key env vars after generating keys 2020-04-22 11:52:35 -04:00
LICENSE.md re-init 2018-09-18 15:26:17 -04:00
NOTICE.md say "Present" in NOTICE.md 2019-04-09 16:08:20 -04:00
README.md Changing "$target" to "ci" in the readme 2020-05-21 15:42:03 -04:00
docker-compose.yml Revert "docker-compose: break worker/web dependency" 2020-06-23 13:32:19 -04:00
go.mod atc: rate limit number of checks per second 2020-06-08 18:00:45 -04:00
go.sum atc: rate limit number of checks per second 2020-06-08 18:00:45 -04:00
package.json web: behaviour: bump @mdi/svg 4.5.95 -> 5.0.45 2020-04-02 19:59:42 +01:00
tools.go Add tools.go to keep track of tool versions 2019-04-08 15:57:27 -04:00
versions.go concourse/#3819 using zstd to streamIn/Out between workers 2019-06-24 23:08:10 -04:00
webpack.config.js web: babel-ify javascript bundle 2020-02-28 09:56:22 -05:00
yarn.lock build(deps): bump https-proxy-agent from 2.2.2 to 2.2.4 2020-04-16 14:22:39 +00:00

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 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
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 ci 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.