Examples of Open Source Projects using Concourse?

tl;dr: Are there any examples of Concourse being used for building / testing open source projects on Github?

Details:

I found Concourse to be amazing for all kinds of internal things – from running business processes and workflows to orchestrating data science models to providing continuous integration, continuous builds, and continuous delivery for our code.

Now I need to provide CI/CD coverage for an open source project, hosted on GitHub, and I am contemplating just using our existing internal Concourse infrastructure for that.

We want to be able to do things like running builds and tests on open PRs, running unit tests, deploying to staging environments and running integration tests, and producing releases – all the normal things we would do internally, still securely, but now out in the open.

Are there any good examples of people using concourse for this kind of thing, or would we be better off using some other common tool for this (Build Kite, Circle CI, and friends)?

PS I realize that concourse building itself is a great example in itself (https://ci.concourse-ci.org/). :wink: I wonder if there are more.

At EngineerBetter we also use Concourse to build various docker images and OSS tools (most notably our Control Tower tool for deploying Concourse). You can see our Concourse at https://ci.engineerbetter.com/

For making pipelines secure the options you should keep in mind are:

  • public which can be set at the job level and makes that job publicly viewable including the build output. An example is this build. Notice how you can see the output of each step. We consider it a bug to leak secrets in any of these outputs.
  • fly expose-pipeline which can be set on any pipeline to make its general structure viewable without revealing any job details. An example is this pipeline. Notice how you get an unauthorized message if you click on any job.
  • Roles for team auth

There are built-in Concourse resource types for interacting with git and github releases. There’s also a number of custom resource types for doing PR related things.

Some other public Concii I know of:

2 Likes

This is very useful and informative, thank you.

1 Like