kite 0.2.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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