Skip to content

calebwashburn/concourse-deployment

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

concourse-deployment

A lightweight, single-vm Concourse deployment using bosh create-env (see BOSH cli docs)

This approach is intended as an easy way to get a development Concourse deployment up in the air and ready to fly!

This method can be used to create a single-vm Concourse deployment; similar to the vagrant up experience, but without the additional effort to build Vagrant boxes of each Concourse release on bosh.io.

A number of deployment scenarios ( more coming soon ) are supported by applying BOSH operations files to the base concourse.yml using bosh create-env:

  • VirtualBox
  • Google Cloud Platform
  • VMware vSphere
  • Open Stack
  • Amazon Web Services (AWS)

Requirements

Usage

Clone this repo.

git clone https://github.com/concourse/concourse-deployment.git
cd concourse-deployment

Create the Concourse VM in VirtualBox

Additional Requirements

bosh create-env concourse.yml \
  -o ./infrastructures/virtualbox.yml \
  --vars-store vbox-creds.yml \
  --state vbox-state.json \
  -v internal_cidr=192.168.50.0/24 \
  -v internal_gw=192.168.50.1 \
  -v internal_ip=192.168.50.4 \
  -v public_ip=192.168.50.4

Create the Concourse VM in Google Cloud Platform

#!/bin/bash

gcp_credentials_json=$(cat gcp.json)

bosh create-env concourse.yml \
  -o infrastructures/gcp.yml \
  --vars-store gcp-creds.yml \
  --state gcp-state.json \
  -v gcp_credentials_json="'$gcp_credentials_json'" \
  -v internal_cidr= \
  -v internal_gw= \
  -v internal_ip= \
  -v public_ip= \
  -v network= \
  -v project_id= \
  -v subnetwork= \
  -v tags=\
  -v zone=

Create the Concourse VM in VMware vSphere

bosh create-env concourse.yml \
  -o infrastructures/vsphere.yml \
  --vars-store vsphere-creds-temp.yml \
  --state vsphere-state-temp.json \
  -v vcenter_ip= \
  -v vcenter_user= \
  -v vcenter_password= \
  -v vcenter_dc= \
  -v vcenter_vms= \
  -v vcenter_templates= \
  -v vcenter_ds= \
  -v vcenter_disks= \
  -v vcenter_cluster= \
  -v vcenter_resource_pool= \
  -v network_name= \
  -v internal_cidr= \
  -v internal_gw= \
  -v internal_ip= \
  -v public_ip=

Create the Concourse VM in Open Stack

#!/bin/bash

bosh create-env concourse.yml \
  -o infrastructures/openstack.yml \
  --vars-store openstack-creds.yml \
  --state openstack-state.json \
  -v concourse_version= \
  -v concourse_sha1= \
  -v garden_runc_version= \
  -v garden_runc_sha1= \
  -v network_name= \
  -v internal_cidr= \
  -v internal_gw= \
  -v internal_ip= \
  -v public_ip= \
  -v auth_url= \
  -v az= \
  -v default_key_name= \
  -v default_security_groups= \
  -v net_id= \
  -v openstack_domain= \
  -v openstack_password= \
  -v openstack_project= \
  -v openstack_username= \
  -v private_key= \
  -v region=

Accessing your Concourse

The web server will be running at the public-ip you specified. Download the Fly CLI for your system, and target the deployed Concourse.

Create the Concourse VM in AWS

bosh create-env concourse.yml \
  -o ./infrastructures/aws.yml \
  --vars-store aws-concourse-creds.yml \
  --state aws-concourse-state.json \
  -v access_key_id=... \
  -v secret_access_key=... \
  -v region=us-east-1 \
  -v az=us-east-1b \
  -v default_key_name=concourse \
  -v default_security_groups=[concourse] \
  -v subnet_id=subnet-... \
  -v concourse_name=concourse-1 \
  -v internal_cidr=192.168.50.0/24 \
  -v internal_gw=192.168.50.1 \
  -v internal_ip=192.168.50.4 \
  -v public_ip=192.168.50.4 \
  --var-file private_key=~/Downloads/bosh.pem

Accessing your Concourse

The web server will be running at public-ip you specifid. Download the Fly CLI for your system, and target the deployed Concourse.

fly -t lite login -c http://public-ip:8080

About

A lightweight, single-vm Concourse deployment using `bosh create-env`

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published