• Stars
    star
    124
  • Rank 288,207 (Top 6 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Deploy and operate Concourse CI in a single command

Control Tower

asciicast

A tool for easily deploying self-healing, self-updating Concourse (and Grafana and CredHub!) in a single command.

CI build badge

TL;DR

Ensure you install the pre-requisites. After that you can download the latest Control-Tower release from Github. Users of Homebrew on macOS or Linux can also run:

$ brew install engineerbetter/tap/control-tower

Then...

AWS

$ AWS_ACCESS_KEY_ID=<access-key-id> \
  AWS_SECRET_ACCESS_KEY=<secret-access-key> \
  control-tower deploy --iaas aws <your-project-name>

GCP

$ GOOGLE_APPLICATION_CREDENTIALS=<path/to/googlecreds.json> \
  control-tower deploy --iaas gcp <your-project-name>

๐Ÿ“‹ ...then don't forget to please complete our quick 7-question survey so we can understand how and why you use Control Tower, and how we can make it better. ๐Ÿ“‹

Why Control Tower?

The goal of Control Tower is to be the world's easiest way to deploy and operate Concourse CI in production.

In just one command you can deploy a new Concourse environment for your team, on either AWS or GCP. Your Control Tower deployment will upgrade itself and self-heal, restoring the underlying VMs if needed. Using the same command-line tool you can do things like manage DNS, scale your environment, or manage firewall policy. CredHub is provided for secrets management and Grafana for viewing your Concourse metrics.

You can keep up to date on Control Tower announcements by reading the EngineerBetter Blog and by joining the discussion on our Community Slack.

Features

Feature AWS GCP
Concourse IP whitelisting + +
Credhub + +
Custom domains + +
Custom tagging BOSH only BOSH only
Custom TLS certificates + +
Database vertical scaling + +
BitBucket authentication + +
GitHub authentication + +
Microsoft authentication + +
Grafana (on port 3000) + +
Interruptable worker support + +
Letsencrypt integration + +
Namespace support + +
Region selection + +
Retrieving deployment information + +
Retrieving deployment information as shell exports + +
Retrieving deployment information in JSON + +
Retrieving director NATS cert expiration + +
Rotating director NATS cert + +
Self-Update support + +
Teardown deployment + +
Web server vertical scaling + +
Worker horizontal scaling + +
Worker type selection + N/A
Worker vertical scaling + +
Zone selection + +
Customised networking + +

Detailed Documentation

Before you start Prerequisites
Installing Control Tower Installation
Flags on all commands Global flags
Deploying a Concourse Deploy
Retrieving info from a deployment Info
Destroying a Concourse Destroy
Maintaining your Concourse Maintain
Updating Updating
Metrics Metrics
Credential Management Credhub
How much will this cost? Cost Estimation
What is it doing? - deep dive Walkthrough
Want to Contribute? Development
Having problems? Troubleshooting

More Repositories

1

concourse-up

Deprecated - used Control Tower instead
Go
204
star
2

k8s-is-not-a-paas

51
star
3

training-zero-to-hero

Labs for the Cloud Foundry Zero To Hero training course
Ruby
38
star
4

cf-plex

Issues commands to multiple Cloud Foundry instances
Go
18
star
5

bosh-concourse-setup

Deployment of a BOSH Director and Concourse from scratch on AWS
Shell
14
star
6

iac-example

HCL
13
star
7

introspection

Documentation to help us make sure we're doing the right thing
13
star
8

concourse-tasks

Re-usable and tested Concourse tasks
Shell
12
star
9

yml2env

Run a command with env vars from a YAML file
Go
9
star
10

cf-converger

Declaratively and convergantly configures mutliple Cloud Foundry instances
Java
8
star
11

ironbird

Tests Concourse tasks using a YAML DSL for Ginkgo/Gomega
Go
8
star
12

stopover

Go
6
star
13

aws-equivalent-gcp-cloud-config

BOSH Cloud Config for GCP VM types to match AWS
6
star
14

concourse-mgmt

Shell
5
star
15

scf-tutorial

HCL
4
star
16

byo-service-mesh

Bring Your Own service mesh to Cloud Foundry with Consul
Ruby
4
star
17

pcfops-docker

Docker image for general PCF Ops
Dockerfile
4
star
18

concourse-gcp-tf-bootstrap

Concourse task to make bootstrapping Terraform pipelines easy
Shell
4
star
19

cdgo-cli

cds to nested directories in either $GOPATH/src and ~/workspace
Go
3
star
20

eso-infrastructure

Shell
2
star
21

engineerbetter-hugo

Hugo-based EngineerBetter site
CSS
2
star
22

cfops-docker

Docker image for Cloud Ops
Dockerfile
2
star
23

kcf

Spike project to munge SCF and Project Eirini
Go
2
star
24

cf-terraform-image

An autoupdating image for using the cf terraform provider in Concourse
Shell
2
star
25

concourse-up-ops

Supporting files for Concourse-up
2
star
26

vault-service-broker

CF Service Broker for Hashicorp Vault
Ruby
2
star
27

fly-github-auth-task

Go
2
star
28

new-starters

Guidance for new starters
Go
2
star
29

port-checker

HTTP server that checks TCP connections
Go
1
star
30

stopover-demo

1
star
31

credhubbackup

Go
1
star
32

aws-sync

A Concourse pipeline for periodically syncing S3 buckets from different accounts
1
star
33

bosh-compiled-release-cache

Go
1
star
34

bbr-image

Dockerfile
1
star
35

tas-srt-gcp-pipeline

HCL
1
star
36

humanize-pipeline

Go
1
star
37

opa-boshrelease

Ruby
1
star
38

dmon

A tool to detect downtime on a HTTP endpoint
Go
1
star
39

k8s-course-materials

Materials to accompany the Kubernetes for Cloud Foundry users course
Shell
1
star
40

cqrs-es-microservices

Java
1
star
41

stateful-k8s-app

Ruby
1
star
42

kubecf-pipelines

HCL
1
star
43

cloud-task-batch

Java
1
star