Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
274 lines (263 sloc) 8.86 KB
jobs:
- name: deploy-cf
plan:
- in_parallel:
- get: cf-deployment
trigger: true
- get: stemcell
- get: opsfile
- get: cloud-config
- put: config
params:
manifest: cloud-config/cloud-config.yml
- put: deploy
params:
manifest: cf-deployment/cf-deployment.yml
fix: true
stemcells: [ stemcell/stemcell.tgz ]
ops_files:
- cf-deployment/operations/use-compiled-releases.yml
- cf-deployment/operations/use-latest-stemcell.yml
- opsfile/opsfile.yml
vars:
system_domain: ((domain))
- name: generate-cf-cli-login-snippet
public: false
plan:
- task: generate-snippet
config:
platform: linux
image_resource:
type: registry-image
source: {repository: starkandwayne/concourse, tag: latest}
params:
CREDHUB_CA: ((credhub_ca_cert))
CREDHUB_SERVER: ((credhub_url))
CREDHUB_CLIENT: ((credhub_username))
CREDHUB_SECRET: ((credhub_password))
prefix: ((bosh_name))/cf
api: https://api.((domain))
run:
path: /bin/bash
args:
- -ec
- |
echo "${CREDHUB_CA}" > /tmp/ca; export CREDHUB_CA_CERT=/tmp/ca
admin_password=$(bosh int <(credhub get -n "${prefix}/cf_admin_password" --output-json) --path=/value)
cat <<CONFIG
cf api --skip-ssl-validation ${api}
cf auth admin ${admin_password}
CONFIG
resources:
- name: opsfile
type: file
source:
filename: opsfile.yml
content:
- type: replace
path: /update/initial_deploy_az_update_strategy?
value: parallel
# Docker garden compatibility
- type: replace
path: /instance_groups/name=diego-cell/jobs/name=garden/properties/garden/apparmor_profile?
value: ""
- type: replace
path: /instance_groups/name=diego-cell/jobs/name=rep/properties?/set_kernel_parameters
value: false
- type: replace
path: /instance_groups/name=diego-api/jobs/name=bbs/properties?/set_kernel_parameters
value: false
- type: replace
path: /instance_groups/name=api/jobs/name=file_server/properties?/set_kernel_parameters
value: false
- type: replace
path: /instance_groups/name=diego-api/jobs/name=locket/properties?/set_kernel_parameters
value: false
# make zones configurable
- type: replace
path: /instance_groups/name=scheduler/azs
value: ((moltencore.scaling.max3.slice1.azs))
- type: replace
path: /instance_groups/name=scheduler/instances
value: ((moltencore.scaling.max3.slice1.instances))
- type: replace
path: /instance_groups/name=router/azs
value: ((moltencore.scaling.max3.slice1.azs))
- type: replace
path: /instance_groups/name=router/instances
value: ((moltencore.scaling.max3.slice1.instances))
- type: replace
path: /instance_groups/name=tcp-router/azs
value: ((moltencore.scaling.max3.slice1.azs))
- type: replace
path: /instance_groups/name=tcp-router/instances
value: ((moltencore.scaling.max3.slice1.instances))
- type: replace
path: /instance_groups/name=nats/azs
value: ((moltencore.scaling.max2.slice3.azs))
- type: replace
path: /instance_groups/name=nats/instances
value: ((moltencore.scaling.max2.slice3.instances))
- type: replace
path: /instance_groups/name=diego-api/azs
value: ((moltencore.scaling.max2.slice2.azs))
- type: replace
path: /instance_groups/name=diego-api/instances
value: ((moltencore.scaling.max2.slice2.instances))
- type: replace
path: /instance_groups/name=uaa/azs
value: ((moltencore.scaling.max2.slice3.azs))
- type: replace
path: /instance_groups/name=uaa/instances
value: ((moltencore.scaling.max2.slice3.instances))
- type: replace
path: /instance_groups/name=diego-cell/azs
value: ((moltencore.scaling.all.x2.azs))
- type: replace
path: /instance_groups/name=diego-cell/instances
value: ((moltencore.scaling.all.x2.instances))
- type: replace
path: /instance_groups/name=api/azs
value: ((moltencore.scaling.max2.slice2.azs))
- type: replace
path: /instance_groups/name=api/instances
value: ((moltencore.scaling.max2.slice2.instances))
- type: replace
path: /instance_groups/name=cc-worker/azs
value: ((moltencore.scaling.max2.slice2.azs))
- type: replace
path: /instance_groups/name=cc-worker/instances
value: ((moltencore.scaling.max2.slice2.instances))
- type: replace
path: /instance_groups/name=adapter/azs
value: ((moltencore.scaling.max2.slice3.azs))
- type: replace
path: /instance_groups/name=adapter/instances
value: ((moltencore.scaling.max2.slice3.instances))
- type: replace
path: /instance_groups/name=doppler/azs
value: ((moltencore.scaling.max2.slice3.azs))
- type: replace
path: /instance_groups/name=doppler/instances
value: ((moltencore.scaling.max2.slice3.instances))
- type: replace
path: /instance_groups/name=log-api/azs
value: ((moltencore.scaling.max2.slice3.azs))
- type: replace
path: /instance_groups/name=log-api/instances
value: ((moltencore.scaling.max2.slice3.instances))
- type: replace
path: /instance_groups/name=credhub/azs
value: ((moltencore.scaling.max2.slice3.azs))
- type: replace
path: /instance_groups/name=credhub/instances
value: ((moltencore.scaling.max2.slice3.instances))
- type: replace
path: /instance_groups/name=database/azs
value: ((moltencore.scaling.odd3.slice1.azs))
- type: replace
path: /instance_groups/name=database/instances
value: ((moltencore.scaling.odd3.slice1.instances))
- type: replace
path: /instance_groups/name=singleton-blobstore/azs
value: ((moltencore.scaling.max1.slice1.azs))
- type: replace
path: /instance_groups/name=singleton-blobstore/instances
value: ((moltencore.scaling.max1.slice1.instances))
- type: replace
path: /instance_groups/name=smoke-tests/azs
value: ((moltencore.scaling.max1.slice1.azs))
- type: replace
path: /instance_groups/name=smoke-tests/instances
value: ((moltencore.scaling.max1.slice1.instances))
- type: replace
path: /instance_groups/name=rotate-cc-database-key/azs
value: ((moltencore.scaling.max1.slice1.azs))
- type: replace
path: /instance_groups/name=rotate-cc-database-key/instances
value: ((moltencore.scaling.max1.slice1.instances))
- name: cloud-config
type: file
source:
filename: cloud-config.yml
content:
vm_extensions:
- name: cf-router-network-properties
cloud_properties:
PortBindings:
80/tcp:
- HostPort: '80'
HostIp: 0.0.0.0
443/tcp:
- HostPort: '443'
HostIp: 0.0.0.0
ports: [ 80/tcp, 443/tcp ]
- name: diego-ssh-proxy-network-properties
cloud_properties:
PortBindings:
2222/tcp:
- HostPort: '2222'
HostIp: 0.0.0.0
ports: [ 2222/tcp ]
- name: cf-tcp-router-network-properties
# TODO find a way to open port range 1024-1123
cloud_properties:
PortBindings:
1024/tcp:
- HostPort: '1024'
HostIp: 0.0.0.0
1025/tcp:
- HostPort: '1025'
HostIp: 0.0.0.0
1026/tcp:
- HostPort: '1026'
HostIp: 0.0.0.0
1027/tcp:
- HostPort: '1027'
HostIp: 0.0.0.0
ports:
- 1024/tcp
- 1025/tcp
- 1026/tcp
- 1027/tcp
- name: cf-deployment
type: git
source:
uri: https://github.com/cloudfoundry/cf-deployment.git
branch: master
tag_filter: v*
- name: deploy
type: bosh-deployment
source:
deployment: cf
target: ((bosh_environment))
client: ((bosh_client))
client_secret: ((bosh_client_secret))
ca_cert: ((bosh_ca_cert))
- name: config
type: bosh-config
source:
config: cloud
name: cf
target: ((bosh_environment))
client: ((bosh_client))
client_secret: ((bosh_client_secret))
ca_cert: ((bosh_ca_cert))
- name: stemcell
type: bosh-io-stemcell
source: { name: ((bosh_stemcell)) }
resource_types:
- name: bosh-deployment
type: docker-image
source:
repository: cloudfoundry/bosh-deployment-resource
tag: latest
- name: file
type: docker-image
source:
repository: aequitas/concourse-file-resource
tag: latest
- name: bosh-config
type: docker-image
source:
repository: cfcommunity/bosh-config-resource
You can’t perform that action at this time.