concourse/concourse

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

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 37 minutes ago
Added to GitGenius on May 28th, 2022
Created on April 19th, 2014
Open Issues & Pull Requests: 83 (-1)
GitHub issues: Enabled
Number of forks: 902
Total Stargazers: 7,898 (+0)
Total Subscribers: 138 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1671.1 days
Mean response time: 1389.9 days
90th percentile: 2266.1 days
Tracked items: 961

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 80% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 6% of issues opened in the past year have been closed. Three people close 98% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 55
New in 7 days: 2
Closed in 7 days: 1
Avg open age: 1,396 days
Stale 30+ days: 46
Stale 90+ days: 41

Recent activity

Opened in 7 days: 2
Closed in 7 days: 1
Comments in 7 days: 7
Events in 7 days: 15

Top labels

  • bug (798)
  • enhancement (452)
  • web-ui (246)
  • wontfix (178)
  • accepted (110)
  • help wanted (102)
  • release/documented (69)
  • fly (64)

Detailed Description

Concourse is a container-based automation system written in Go that serves primarily as a CI/CD platform but is designed to scale to any kind of automation pipeline. The system is built around strong opinions regarding idempotency, immutability, declarative configuration, stateless workers, and reproducible builds. Pipelines in Concourse are defined entirely through declarative YAML files rather than graphical interfaces, with most operations performed through the accompanying fly CLI tool. The project is distributed as a single binary available on the releases page, with additional supported formats including Docker images, Kubernetes Helm charts, and BOSH releases.

The codebase is classified across multiple domains reflecting its broad scope: deployment, continuous delivery, deployment automation, CI/CD pipeline automation, containers, build systems, orchestration, task orchestration, declarative syntax, microservices, continuous integration, concurrency, testing, workflow, cloud-native, and resource management. This classification breadth demonstrates that Concourse extends beyond traditional CI/CD into general-purpose automation orchestration.

The project includes an ambitious roadmap toward version 10, which aims to address multi-branch and pull-request driven workflows through features like set_pipeline steps, variable sources for credentials, pipeline archiving, instanced pipelines, static and dynamic across steps, projects, load_var and get_var steps, and prototypes for resources, var sources, and notifiers. Several of these features have already reached experimental status in releases ranging from v5.8.0 through v7.4.0, while others remain in RFC or planning stages. The README explicitly calls for community volunteers to help parallelize development of these orthogonal features.

Installation and quick start are straightforward, with Concourse running at localhost:8080 by default using test credentials. The system emphasizes portability through self-contained pipeline files that move easily between Concourse instances. Documentation is centralized at concourse-ci.org, with additional learning resources including a getting started tutorial, example pipelines from the Concourse team's own infrastructure, and community engagement through GitHub discussions and Discord. The project maintains a public project board tracking ongoing work and actively encourages contributions through documented contributing guidelines.