kite 0.2.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +130 -66
  3. data/LICENSE.md +202 -0
  4. data/README.md +35 -11
  5. data/bin/concourse/out +16 -20
  6. data/docs/kite-concourse-resource.md +45 -0
  7. data/kite.gemspec +1 -0
  8. data/lib/kite.rb +3 -1
  9. data/lib/kite/cloud.rb +1 -0
  10. data/lib/kite/core.rb +8 -2
  11. data/lib/kite/generate.rb +12 -46
  12. data/lib/kite/helpers.rb +0 -72
  13. data/lib/kite/helpers/concourse.rb +3 -2
  14. data/lib/kite/module.rb +76 -0
  15. data/lib/kite/terraform.rb +45 -0
  16. data/lib/kite/version.rb +1 -1
  17. data/tpl/aws/environment/main.tf.tt +5 -0
  18. data/tpl/aws/environment/s3.tf.tt +13 -0
  19. data/tpl/gcp/environment/gcs.tf.tt +18 -0
  20. data/tpl/gcp/environment/main.tf.tt +5 -0
  21. data/tpl/gcp/environment/outputs.tf.tt +5 -0
  22. data/tpl/service/%output_path%/pipelines/review.yml.tt +55 -37
  23. data/tpl/service/%output_path%/pipelines/tasks/create-pull-requests-tag.yml.tt +1 -1
  24. data/tpl/service/%output_path%/pipelines/tasks/create-repository-tag.yml.tt +1 -1
  25. data/tpl/service/%output_path%/pipelines/tasks/run-unit.yml.tt +7 -0
  26. data/tpl/service/Makefile.tt +11 -7
  27. data/tpl/service/docs/getting-started.md +73 -0
  28. data/tpl/service/docs/service.md +101 -0
  29. data/tpl/skel/Gemfile.tt +0 -9
  30. data/tpl/skel/config/cloud.yml +11 -66
  31. metadata +29 -88
  32. data/lib/kite/render.rb +0 -116
  33. data/tpl/aws/README.md +0 -52
  34. data/tpl/aws/bin/base/bootstrap.sh +0 -35
  35. data/tpl/aws/bin/base/cleanup.sh.tt +0 -19
  36. data/tpl/aws/bin/base/set-env.sh.tt +0 -7
  37. data/tpl/aws/bin/base/setup-tunnel.sh.tt +0 -4
  38. data/tpl/aws/bin/bosh-install.sh.tt +0 -23
  39. data/tpl/aws/bin/concourse-deploy.sh.tt +0 -14
  40. data/tpl/aws/bin/ingress-deploy.sh.tt +0 -7
  41. data/tpl/aws/bin/ingress-update.sh.tt +0 -7
  42. data/tpl/aws/bin/kops-delete.sh.erb +0 -5
  43. data/tpl/aws/bin/kops-deploy.sh.erb +0 -11
  44. data/tpl/aws/bin/oauth-deploy.sh.tt +0 -17
  45. data/tpl/aws/bin/prometheus-deploy.sh.tt +0 -23
  46. data/tpl/aws/bin/vault-deploy.sh.tt +0 -10
  47. data/tpl/aws/bosh-vars.yml.erb +0 -12
  48. data/tpl/aws/config/oauth.yml +0 -59
  49. data/tpl/aws/deployments/bosh/bosh.yml +0 -144
  50. data/tpl/aws/deployments/bosh/cloud-config.yml.tt +0 -86
  51. data/tpl/aws/deployments/bosh/cpi.yml +0 -98
  52. data/tpl/aws/deployments/bosh/jumpbox-user.yml +0 -27
  53. data/tpl/aws/deployments/concourse/concourse.yml.tt +0 -98
  54. data/tpl/aws/deployments/ingress/ingress.yml.erb +0 -78
  55. data/tpl/aws/deployments/oauth/oauth.yml.tt +0 -95
  56. data/tpl/aws/deployments/prometheus/monitor-bosh.yml +0 -518
  57. data/tpl/aws/deployments/prometheus/monitor-kubernetes.yml +0 -30
  58. data/tpl/aws/deployments/prometheus/prometheus.yml.tt +0 -184
  59. data/tpl/aws/deployments/vault/vault.yml.erb +0 -38
  60. data/tpl/aws/docs/bosh.md +0 -31
  61. data/tpl/aws/docs/concourse.md +0 -41
  62. data/tpl/aws/docs/ingress.md +0 -14
  63. data/tpl/aws/docs/kops.md +0 -35
  64. data/tpl/aws/docs/oauth.md +0 -24
  65. data/tpl/aws/docs/prometheus.md +0 -31
  66. data/tpl/aws/docs/vault.md +0 -35
  67. data/tpl/aws/terraform/kite_bucket.tf +0 -8
  68. data/tpl/aws/terraform/main.tf.tt +0 -36
  69. data/tpl/aws/terraform/network.tf.tt +0 -252
  70. data/tpl/aws/terraform/outputs.tf +0 -19
  71. data/tpl/aws/terraform/terraform.tfvars.tt +0 -21
  72. data/tpl/aws/terraform/variables.tf +0 -73
  73. data/tpl/gcp/README.md +0 -54
  74. data/tpl/gcp/bin/base/bootstrap.sh +0 -35
  75. data/tpl/gcp/bin/base/cleanup.sh.tt +0 -20
  76. data/tpl/gcp/bin/base/set-env.sh.tt +0 -10
  77. data/tpl/gcp/bin/base/setup-tunnel.sh.tt +0 -13
  78. data/tpl/gcp/bin/bosh-install.sh.tt +0 -22
  79. data/tpl/gcp/bin/concourse-deploy.sh.tt +0 -14
  80. data/tpl/gcp/bin/ingress-deploy.sh.tt +0 -7
  81. data/tpl/gcp/bin/ingress-update.sh.tt +0 -7
  82. data/tpl/gcp/bin/oauth-deploy.sh.tt +0 -19
  83. data/tpl/gcp/bin/prometheus-deploy.sh.tt +0 -23
  84. data/tpl/gcp/bin/vault-deploy.sh.tt +0 -10
  85. data/tpl/gcp/bosh-vars.yml.erb +0 -9
  86. data/tpl/gcp/config/oauth.yml +0 -59
  87. data/tpl/gcp/deployments/bosh/bosh.yml +0 -144
  88. data/tpl/gcp/deployments/bosh/cloud-config.yml.tt +0 -73
  89. data/tpl/gcp/deployments/bosh/cpi.yml +0 -69
  90. data/tpl/gcp/deployments/bosh/jumpbox-user.yml +0 -27
  91. data/tpl/gcp/deployments/concourse/concourse.yml.tt +0 -104
  92. data/tpl/gcp/deployments/concourse/test/test-credentials.yml +0 -3
  93. data/tpl/gcp/deployments/concourse/test/test-pipeline.yml +0 -24
  94. data/tpl/gcp/deployments/ingress/ingress.yml.erb +0 -111
  95. data/tpl/gcp/deployments/oauth/oauth.yml.tt +0 -95
  96. data/tpl/gcp/deployments/prometheus/monitor-bosh.yml +0 -518
  97. data/tpl/gcp/deployments/prometheus/monitor-kubernetes.yml +0 -30
  98. data/tpl/gcp/deployments/prometheus/prometheus.yml +0 -183
  99. data/tpl/gcp/deployments/vault/vault.yml.erb +0 -37
  100. data/tpl/gcp/docs/bosh.md +0 -36
  101. data/tpl/gcp/docs/concourse.md +0 -41
  102. data/tpl/gcp/docs/ingress.md +0 -12
  103. data/tpl/gcp/docs/oauth.md +0 -24
  104. data/tpl/gcp/docs/prometheus.md +0 -27
  105. data/tpl/gcp/docs/vault.md +0 -36
  106. data/tpl/gcp/terraform/gcs.tf.tt +0 -18
  107. data/tpl/gcp/terraform/main.tf +0 -70
  108. data/tpl/gcp/terraform/network.tf +0 -52
  109. data/tpl/gcp/terraform/outputs.tf +0 -7
  110. data/tpl/gcp/terraform/terraform.tfvars.tt +0 -15
  111. data/tpl/gcp/terraform/variables.tf +0 -37
  112. data/tpl/service/%output_path%/pipelines/tasks/helm-deploy.yml.tt +0 -22
  113. data/tpl/service/%output_path%/pipelines/tasks/run-master-tests.yml.tt +0 -12
  114. data/tpl/service/%output_path%/pipelines/tasks/run-pr-tests.yml.tt +0 -12
  115. data/tpl/skel/docs/index.md.tt +0 -0
  116. data/tpl/skel/docs/quickstart.md.tt +0 -0
@@ -1,19 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # Remove existing BOSH deployments
4
- bosh -e <%= @values['bosh']['name'] %> -d concourse deld
5
-
6
- # Destroy BOSH director
7
- bosh delete-env deployments/bosh/bosh.yml \
8
- --state=config/state.json \
9
- --vars-store=config/creds.yml \
10
- --vars-file=config/bosh-vars.yml \
11
- --var-file private_key=<%= @values['kite']['private_key_path'] %> \
12
- -o deployments/bosh/cpi.yml \
13
- -o deployments/bosh/jumpbox-user.yml
14
-
15
- # Destroy Terraform-generated infrastructure
16
- pushd terraform && terraform destroy && popd
17
-
18
- # Remove files generated by kite
19
- rm -rf terraform deployments docs config/{creds.yml,bosh-vars.yml,jumpbox.key} bin/*.sh
@@ -1,7 +0,0 @@
1
-
2
- BASTION_IP="$(terraform output -state=terraform/terraform.tfstate bastion_ip)"
3
-
4
- export BASTION_IP
5
- export BOSH_ALL_PROXY=socks5://localhost:5000
6
- export BOSH_CLIENT=admin
7
- export BOSH_CLIENT_SECRET=`bosh int ./config/creds.yml --path /admin_password`
@@ -1,4 +0,0 @@
1
- BASTION_IP="$(terraform output -state=terraform/terraform.tfstate bastion_ip)"
2
- ssh -4 -D 5000 -fNC ubuntu@$BASTION_IP -i <%= @values['kite']['private_key_path'] %>
3
-
4
- export BOSH_ALL_PROXY=socks5://localhost:5000
@@ -1,23 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- # Create a new BOSH environment with Director
6
- bosh create-env deployments/bosh/bosh.yml \
7
- --state=config/state.json \
8
- --vars-store=config/creds.yml \
9
- --vars-file=config/bosh-vars.yml \
10
- --var-file private_key=<%= @values['kite']['private_key_path'] %> \
11
- -o deployments/bosh/cpi.yml \
12
- -o deployments/bosh/jumpbox-user.yml
13
-
14
- # Configure alias for the new environment
15
- bosh alias-env <%= @values['bosh']['name'] %> \
16
- -e <%= @values['bosh']['static_ip'] %> \
17
- --ca-cert <(bosh int ./config/creds.yml --path /director_ssl/ca)
18
-
19
- bosh -e <%= @values['bosh']['name'] %> ucc deployments/bosh/cloud-config.yml
20
-
21
- # Get jumpbox user key
22
- bosh int config/creds.yml --path /jumpbox_ssh/private_key > config/jumpbox.key
23
- chmod 600 config/jumpbox.key
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- # Upload necessary stemcells and releases
6
- bosh -e <%= @values['bosh']['name'] %> upload-stemcell https://bosh.io/d/stemcells/bosh-aws-xen-hvm-ubuntu-trusty-go_agent
7
- bosh -e <%= @values['bosh']['name'] %> upload-release https://bosh.io/d/github.com/concourse/concourse
8
- bosh -e <%= @values['bosh']['name'] %> upload-release https://bosh.io/d/github.com/cloudfoundry-incubator/garden-runc-release
9
-
10
- # Deploy Concourse
11
- bosh -e <%= @values['bosh']['name'] %> -d concourse \
12
- deploy deployments/concourse/concourse.yml \
13
- -v vault_token=$1 \
14
- --vars-store config/creds.yml
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- bosh -e <%= @values['bosh']['name'] %> upload-release https://github.com/cloudfoundry-community/nginx-release/releases/download/v1.12.1/nginx-1.12.1.tgz
6
-
7
- bosh -e <%= @values['bosh']['name'] %> -d ingress deploy deployments/ingress/ingress.yml
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- kite render manifest ingress --cloud aws
6
-
7
- bosh -e <%= @values['bosh']['name'] %> -d ingress deploy deployments/ingress/ingress.yml
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- export KOPS_STATE_STORE=s3://<%= @values['kite']['bucket_name'] %>
4
-
5
- kops delete cluster <%= @values['aws']['kops_address'] %> --yes
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set NAME=<%= @values['k8s']['cluster_address'] %>
4
- set KOPS_STATE_STORE=s3://<%= @values['kite']['bucket_name'] %>
5
-
6
- kops create cluster \
7
- --zones <%= @values['aws']['zone'] %> \
8
- --ssh-public-key <%= @values['kite']['public_key_path'] %> \
9
- $NAME
10
-
11
- kops update cluster $NAME --yes
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- # Upload necessary stemcells and releases
6
- bosh -e <%= @values['bosh']['name'] %> upload-stemcell \
7
- https://bosh.io/d/stemcells/bosh-aws-xen-hvm-ubuntu-trusty-go_agent
8
-
9
- bosh -e <%= @values['bosh']['name'] %> upload-release \
10
- https://bosh.io/d/github.com/cloudfoundry/uaa-release
11
-
12
- # Deploy Concourse
13
- bosh -e <%= @values['bosh']['name'] %> -d oauth deploy \
14
- deployments/oauth/oauth.yml \
15
- --vars-store config/creds.yml \
16
- -o config/oauth.yml \
17
- && ./bin/ingress-update.sh
@@ -1,23 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- # Upload necessary stemcells and releases
6
- bosh -e <%= @values['bosh']['name'] %> upload-stemcell https://bosh.io/d/stemcells/bosh-aws-xen-hvm-ubuntu-trusty-go_agent
7
-
8
- # Extract BOSH Director's SSL certificate
9
- bosh int ./config/creds.yml --path /director_ssl/certificate > bosh.ca
10
-
11
- # Deploy Prometheus
12
- bosh -e <%= @values['bosh']['name'] %> -d prometheus \
13
- deploy deployments/prometheus/prometheus.yml \
14
- --vars-store config/creds.yml \
15
- -o deployments/prometheus/monitor-kubernetes.yml \
16
- --vars-file config/bosh-vars.yml \
17
- --var-file kubernetes_kubeconfig=<%= @values['k8s']['config_path'] %> \
18
- -o deployments/prometheus/monitor-bosh.yml \
19
- -v bosh_url=<%= @values['bosh']['static_ip'] %> \
20
- -v bosh_username=admin \
21
- -v bosh_password=`bosh int ./config/creds.yml --path /admin_password` \
22
- --var-file bosh_ca_cert=bosh.ca \
23
- -v metrics_environment=kite
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -xe
4
-
5
- # Upload necessary stemcells and releases
6
- bosh -e <%= @values['bosh']['name'] %> upload-stemcell https://bosh.io/d/stemcells/bosh-aws-xen-hvm-ubuntu-trusty-go_agent
7
- bosh -e <%= @values['bosh']['name'] %> upload-release https://bosh.io/d/github.com/cloudfoundry-community/vault-boshrelease
8
-
9
- # Deploy Vault
10
- bosh -e <%= @values['bosh']['name'] %> -d vault deploy deployments/vault/vault.yml
@@ -1,12 +0,0 @@
1
- director_name: <%= @values['bosh']['name'] %>
2
- internal_cidr: <%= @values['aws']['private_subnet']['network'] %>
3
- internal_gw: <%= @values['aws']['private_subnet']['gateway'] %>
4
- internal_ip: <%= @values['bosh']['static_ip'] %>
5
- access_key_id: <%= @values['aws']['access_key'] %>
6
- secret_access_key: <%= @values['aws']['secret_key'] %>
7
- region: <%= @values['aws']['region'] %>
8
- az: <%= @values['aws']['zone'] %>
9
- default_key_name: <%= @values['kite']['keypair_name'] %>
10
- default_security_groups: [<%= @tf_output['security_group_id'] %>]
11
- subnet_id: <%= @tf_output['platform_subnet_id'] %>
12
- kubernetes_apiserver: <%= @values['aws']['kops_api_server_address'] %>
@@ -1,59 +0,0 @@
1
- # Groups
2
- - type: replace
3
- path: /instance_groups/name=uaa/jobs/name=uaa/properties/uaa/scim?/groups?
4
- value: { }
5
- # sysops: For automation stuff
6
-
7
- # Users
8
- - type: replace
9
- path: /instance_groups/name=uaa/jobs/name=uaa/properties/uaa/scim?/users?
10
- value: [ ]
11
- # - email: sysops@example.com
12
- # password: changeme
13
- # name: sysops
14
- # firstName: Sys
15
- # lastName: Ops
16
- # origin: uaa
17
- # groups:
18
- # - sysops
19
-
20
- # OAuth clients
21
- - type: replace
22
- path: /instance_groups/name=uaa/jobs/name=uaa/properties/uaa/clients?
23
- value: { }
24
- # some-app:
25
- # app-icon: 0000000000000000000000000000000000000000000000000000000000000000
26
- # app-launch-url: http://myapppage.com
27
- # authorities: test_resource.test_action
28
- # authorized-grant-types: authorization_code,client_credentials,refresh_token
29
- # autoapprove:
30
- # - test_resource.test_action
31
- # - test_resource.other_action
32
- # id: app
33
- # override: true
34
- # redirect-uri: http://login.example.com
35
- # scope: test_resource.test_action,test_resource.other_action
36
- # secret: app-secret
37
- # show-on-homepage: true
38
-
39
- # UAA theming
40
- - type: replace
41
- path: /instance_groups/name=uaa/jobs/name=uaa/properties/login/branding?
42
- value: { }
43
- # banner:
44
- # backgroundColor: "#eeeeee"
45
- # link: "https://example.com/logo.png"
46
- # text: "Hello!"
47
- # textColor: "#333333"
48
- # company_name: "Company Name"
49
- # footer_legal_text: "© 2017. Company Name. All right reserved."
50
-
51
- # Email notifications
52
- - type: replace
53
- path: /instance_groups/name=uaa/jobs/name=uaa/properties/login/smtp?
54
- value: { }
55
- # auth: false
56
- # from_address: hello@example.com
57
- # host: localhost
58
- # port: 2525
59
- # starttls: false
@@ -1,144 +0,0 @@
1
- ---
2
- name: bosh
3
-
4
- releases:
5
- - name: bosh
6
- version: "263"
7
- url: https://s3.amazonaws.com/bosh-compiled-release-tarballs/bosh-263-ubuntu-trusty-3445.7-20170901-012146-902840377-20170901012153.tgz?versionId=89a.ZxB3Jc_gl6s4YESlL41xNOfoJKrO
8
- sha1: cc71c2ee6992071b1e1f6ae9f2119c03a42521c5
9
-
10
- resource_pools:
11
- - name: vms
12
- network: default
13
- env:
14
- bosh:
15
- password: '*'
16
- mbus:
17
- cert: ((mbus_bootstrap_ssl))
18
-
19
- disk_pools:
20
- - name: disks
21
- disk_size: 32_768
22
-
23
- networks:
24
- - name: default
25
- type: manual
26
- subnets:
27
- - range: ((internal_cidr))
28
- gateway: ((internal_gw))
29
- static: [((internal_ip))]
30
- dns: [8.8.8.8]
31
-
32
- instance_groups:
33
- - name: bosh
34
- instances: 1
35
- jobs:
36
- - {name: nats, release: bosh}
37
- - {name: postgres-9.4, release: bosh}
38
- - {name: blobstore, release: bosh}
39
- - {name: director, release: bosh}
40
- - {name: health_monitor, release: bosh}
41
- resource_pool: vms
42
- persistent_disk_pool: disks
43
- networks:
44
- - name: default
45
- static_ips: [((internal_ip))]
46
- properties:
47
- nats:
48
- address: 127.0.0.1
49
- user: nats
50
- password: ((nats_password))
51
- postgres: &db
52
- listen_address: 127.0.0.1
53
- host: 127.0.0.1
54
- user: postgres
55
- password: ((postgres_password))
56
- database: bosh
57
- adapter: postgres
58
- blobstore:
59
- address: ((internal_ip))
60
- port: 25250
61
- provider: dav
62
- director:
63
- user: director
64
- password: ((blobstore_director_password))
65
- agent:
66
- user: agent
67
- password: ((blobstore_agent_password))
68
- director:
69
- address: 127.0.0.1
70
- name: ((director_name))
71
- db: *db
72
- flush_arp: true
73
- enable_post_deploy: true
74
- generate_vm_passwords: true
75
- enable_dedicated_status_worker: true
76
- enable_nats_delivered_templates: true
77
- workers: 4
78
- events:
79
- record_events: true
80
- ssl:
81
- key: ((director_ssl.private_key))
82
- cert: ((director_ssl.certificate))
83
- user_management:
84
- provider: local
85
- local:
86
- users:
87
- - name: admin
88
- password: ((admin_password))
89
- - name: hm
90
- password: ((hm_password))
91
- hm:
92
- director_account:
93
- user: hm
94
- password: ((hm_password))
95
- ca_cert: ((director_ssl.ca))
96
- resurrector_enabled: true
97
- ntp: &ntp
98
- - time1.google.com
99
- - time2.google.com
100
- - time3.google.com
101
- - time4.google.com
102
- agent:
103
- mbus: nats://nats:((nats_password))@((internal_ip)):4222
104
-
105
- cloud_provider:
106
- mbus: https://mbus:((mbus_bootstrap_password))@((internal_ip)):6868
107
- cert: ((mbus_bootstrap_ssl))
108
- properties:
109
- agent: {mbus: "https://mbus:((mbus_bootstrap_password))@0.0.0.0:6868"}
110
- blobstore: {provider: local, path: /var/vcap/micro_bosh/data/cache}
111
- ntp: *ntp
112
-
113
- variables:
114
- - name: admin_password
115
- type: password
116
- - name: blobstore_director_password
117
- type: password
118
- - name: blobstore_agent_password
119
- type: password
120
- - name: hm_password
121
- type: password
122
- - name: mbus_bootstrap_password
123
- type: password
124
- - name: nats_password
125
- type: password
126
- - name: postgres_password
127
- type: password
128
- - name: default_ca
129
- type: certificate
130
- options:
131
- is_ca: true
132
- common_name: ca
133
- - name: mbus_bootstrap_ssl
134
- type: certificate
135
- options:
136
- ca: default_ca
137
- common_name: ((internal_ip))
138
- alternative_names: [((internal_ip))]
139
- - name: director_ssl
140
- type: certificate
141
- options:
142
- ca: default_ca
143
- common_name: ((internal_ip))
144
- alternative_names: [((internal_ip))]
@@ -1,86 +0,0 @@
1
- ---
2
- azs:
3
- - name: z1
4
- cloud_properties: {availability_zone: <%= @values['aws']['zone'] %>}
5
-
6
- vm_types:
7
- - name: concourse_standalone
8
- cloud_properties:
9
- instance_type: m3.large
10
- ephemeral_disk: {size: 5000, type: gp2}
11
- security_groups: [concourse-sg, bosh_sg]
12
- - name: concourse_web
13
- cloud_properties:
14
- instance_type: m3.medium
15
- ephemeral_disk: {size: 3000, type: gp2}
16
- security_groups: [concourse-sg, bosh_sg]
17
- - name: concourse_db
18
- cloud_properties:
19
- instance_type: m3.medium
20
- ephemeral_disk: {size: 3000, type: gp2}
21
- security_groups: [bosh_sg]
22
- - name: concourse_worker
23
- cloud_properties:
24
- instance_type: m3.large
25
- ephemeral_disk: {size: 30000, type: gp2}
26
- security_groups: [bosh_sg]
27
- - name: default
28
- cloud_properties:
29
- instance_type: t2.micro
30
- ephemeral_disk: {size: 3000, type: gp2}
31
- security_groups: [bosh_sg]
32
- - name: large
33
- cloud_properties:
34
- instance_type: m3.large
35
- ephemeral_disk: {size: 5000, type: gp2}
36
- security_groups: [bosh_sg]
37
- - name: vault-default
38
- cloud_properties:
39
- instance_type: t2.micro
40
- ephemeral_disk: {size: 3000, type: gp2}
41
- security_groups: [vault-sg, bosh_sg]
42
- - name: ingress_default
43
- cloud_properties:
44
- instance_type: t2.micro
45
- ephemeral_disk: {size: 3000, type: gp2}
46
- security_groups: [ingress-sg, bosh_sg]
47
-
48
- disk_types:
49
- - name: default
50
- disk_size: 3000
51
- cloud_properties: {type: gp2}
52
- - name: large
53
- disk_size: 50_000
54
- cloud_properties: {type: gp2}
55
-
56
- networks:
57
- - name: platform_dmz
58
- type: manual
59
- subnets:
60
- - az: z1
61
- range: <%= @values['aws']['public_subnet']['network'] %>
62
- gateway: <%= @values['aws']['public_subnet']['gateway'] %>
63
- reserved: [<%= ip_range(@public_subnet, (1..10)) %>] # Reserved range for the gateway, BOSH Director etc
64
- # static: [<%= ip_range(@public_subnet, (11..16)) %>] # Static IP range for Vault, Concourse web panel, nginx etc
65
- dns: [<%= @public_subnet[8].to_s %>]
66
- cloud_properties: {subnet: <%= @tf_output['dmz_subnet_id'] %>}
67
-
68
- - name: platform_net
69
- type: manual
70
- subnets:
71
- - az: z1
72
- range: <%= @values['aws']['private_subnet']['network'] %>
73
- gateway: <%= @values['aws']['private_subnet']['gateway'] %>
74
- reserved: [<%= ip_range(@private_subnet, (1..10)) %>] # Reserved range for the gateway, BOSH Director etc
75
- static: [<%= ip_range(@private_subnet, (11..20)) %>] # Static IP range for Vault, Concourse web panel, nginx etc
76
- dns: [<%= @private_subnet[8].to_s %>]
77
- cloud_properties: {subnet: <%= @tf_output['platform_subnet_id'] %>}
78
- - name: vip
79
- type: vip
80
-
81
- compilation:
82
- workers: 5
83
- reuse_compilation_vms: true
84
- az: z1
85
- vm_type: large
86
- network: platform_net