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.
- checksums.yaml +5 -5
- data/CHANGELOG.md +130 -66
- data/LICENSE.md +202 -0
- data/README.md +35 -11
- data/bin/concourse/out +16 -20
- data/docs/kite-concourse-resource.md +45 -0
- data/kite.gemspec +1 -0
- data/lib/kite.rb +3 -1
- data/lib/kite/cloud.rb +1 -0
- data/lib/kite/core.rb +8 -2
- data/lib/kite/generate.rb +12 -46
- data/lib/kite/helpers.rb +0 -72
- data/lib/kite/helpers/concourse.rb +3 -2
- data/lib/kite/module.rb +76 -0
- data/lib/kite/terraform.rb +45 -0
- data/lib/kite/version.rb +1 -1
- data/tpl/aws/environment/main.tf.tt +5 -0
- data/tpl/aws/environment/s3.tf.tt +13 -0
- data/tpl/gcp/environment/gcs.tf.tt +18 -0
- data/tpl/gcp/environment/main.tf.tt +5 -0
- data/tpl/gcp/environment/outputs.tf.tt +5 -0
- data/tpl/service/%output_path%/pipelines/review.yml.tt +55 -37
- data/tpl/service/%output_path%/pipelines/tasks/create-pull-requests-tag.yml.tt +1 -1
- data/tpl/service/%output_path%/pipelines/tasks/create-repository-tag.yml.tt +1 -1
- data/tpl/service/%output_path%/pipelines/tasks/run-unit.yml.tt +7 -0
- data/tpl/service/Makefile.tt +11 -7
- data/tpl/service/docs/getting-started.md +73 -0
- data/tpl/service/docs/service.md +101 -0
- data/tpl/skel/Gemfile.tt +0 -9
- data/tpl/skel/config/cloud.yml +11 -66
- metadata +29 -88
- data/lib/kite/render.rb +0 -116
- data/tpl/aws/README.md +0 -52
- data/tpl/aws/bin/base/bootstrap.sh +0 -35
- data/tpl/aws/bin/base/cleanup.sh.tt +0 -19
- data/tpl/aws/bin/base/set-env.sh.tt +0 -7
- data/tpl/aws/bin/base/setup-tunnel.sh.tt +0 -4
- data/tpl/aws/bin/bosh-install.sh.tt +0 -23
- data/tpl/aws/bin/concourse-deploy.sh.tt +0 -14
- data/tpl/aws/bin/ingress-deploy.sh.tt +0 -7
- data/tpl/aws/bin/ingress-update.sh.tt +0 -7
- data/tpl/aws/bin/kops-delete.sh.erb +0 -5
- data/tpl/aws/bin/kops-deploy.sh.erb +0 -11
- data/tpl/aws/bin/oauth-deploy.sh.tt +0 -17
- data/tpl/aws/bin/prometheus-deploy.sh.tt +0 -23
- data/tpl/aws/bin/vault-deploy.sh.tt +0 -10
- data/tpl/aws/bosh-vars.yml.erb +0 -12
- data/tpl/aws/config/oauth.yml +0 -59
- data/tpl/aws/deployments/bosh/bosh.yml +0 -144
- data/tpl/aws/deployments/bosh/cloud-config.yml.tt +0 -86
- data/tpl/aws/deployments/bosh/cpi.yml +0 -98
- data/tpl/aws/deployments/bosh/jumpbox-user.yml +0 -27
- data/tpl/aws/deployments/concourse/concourse.yml.tt +0 -98
- data/tpl/aws/deployments/ingress/ingress.yml.erb +0 -78
- data/tpl/aws/deployments/oauth/oauth.yml.tt +0 -95
- data/tpl/aws/deployments/prometheus/monitor-bosh.yml +0 -518
- data/tpl/aws/deployments/prometheus/monitor-kubernetes.yml +0 -30
- data/tpl/aws/deployments/prometheus/prometheus.yml.tt +0 -184
- data/tpl/aws/deployments/vault/vault.yml.erb +0 -38
- data/tpl/aws/docs/bosh.md +0 -31
- data/tpl/aws/docs/concourse.md +0 -41
- data/tpl/aws/docs/ingress.md +0 -14
- data/tpl/aws/docs/kops.md +0 -35
- data/tpl/aws/docs/oauth.md +0 -24
- data/tpl/aws/docs/prometheus.md +0 -31
- data/tpl/aws/docs/vault.md +0 -35
- data/tpl/aws/terraform/kite_bucket.tf +0 -8
- data/tpl/aws/terraform/main.tf.tt +0 -36
- data/tpl/aws/terraform/network.tf.tt +0 -252
- data/tpl/aws/terraform/outputs.tf +0 -19
- data/tpl/aws/terraform/terraform.tfvars.tt +0 -21
- data/tpl/aws/terraform/variables.tf +0 -73
- data/tpl/gcp/README.md +0 -54
- data/tpl/gcp/bin/base/bootstrap.sh +0 -35
- data/tpl/gcp/bin/base/cleanup.sh.tt +0 -20
- data/tpl/gcp/bin/base/set-env.sh.tt +0 -10
- data/tpl/gcp/bin/base/setup-tunnel.sh.tt +0 -13
- data/tpl/gcp/bin/bosh-install.sh.tt +0 -22
- data/tpl/gcp/bin/concourse-deploy.sh.tt +0 -14
- data/tpl/gcp/bin/ingress-deploy.sh.tt +0 -7
- data/tpl/gcp/bin/ingress-update.sh.tt +0 -7
- data/tpl/gcp/bin/oauth-deploy.sh.tt +0 -19
- data/tpl/gcp/bin/prometheus-deploy.sh.tt +0 -23
- data/tpl/gcp/bin/vault-deploy.sh.tt +0 -10
- data/tpl/gcp/bosh-vars.yml.erb +0 -9
- data/tpl/gcp/config/oauth.yml +0 -59
- data/tpl/gcp/deployments/bosh/bosh.yml +0 -144
- data/tpl/gcp/deployments/bosh/cloud-config.yml.tt +0 -73
- data/tpl/gcp/deployments/bosh/cpi.yml +0 -69
- data/tpl/gcp/deployments/bosh/jumpbox-user.yml +0 -27
- data/tpl/gcp/deployments/concourse/concourse.yml.tt +0 -104
- data/tpl/gcp/deployments/concourse/test/test-credentials.yml +0 -3
- data/tpl/gcp/deployments/concourse/test/test-pipeline.yml +0 -24
- data/tpl/gcp/deployments/ingress/ingress.yml.erb +0 -111
- data/tpl/gcp/deployments/oauth/oauth.yml.tt +0 -95
- data/tpl/gcp/deployments/prometheus/monitor-bosh.yml +0 -518
- data/tpl/gcp/deployments/prometheus/monitor-kubernetes.yml +0 -30
- data/tpl/gcp/deployments/prometheus/prometheus.yml +0 -183
- data/tpl/gcp/deployments/vault/vault.yml.erb +0 -37
- data/tpl/gcp/docs/bosh.md +0 -36
- data/tpl/gcp/docs/concourse.md +0 -41
- data/tpl/gcp/docs/ingress.md +0 -12
- data/tpl/gcp/docs/oauth.md +0 -24
- data/tpl/gcp/docs/prometheus.md +0 -27
- data/tpl/gcp/docs/vault.md +0 -36
- data/tpl/gcp/terraform/gcs.tf.tt +0 -18
- data/tpl/gcp/terraform/main.tf +0 -70
- data/tpl/gcp/terraform/network.tf +0 -52
- data/tpl/gcp/terraform/outputs.tf +0 -7
- data/tpl/gcp/terraform/terraform.tfvars.tt +0 -15
- data/tpl/gcp/terraform/variables.tf +0 -37
- data/tpl/service/%output_path%/pipelines/tasks/helm-deploy.yml.tt +0 -22
- data/tpl/service/%output_path%/pipelines/tasks/run-master-tests.yml.tt +0 -12
- data/tpl/service/%output_path%/pipelines/tasks/run-pr-tests.yml.tt +0 -12
- data/tpl/skel/docs/index.md.tt +0 -0
- data/tpl/skel/docs/quickstart.md.tt +0 -0
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# Specify the provider and access details
|
|
2
|
-
provider "aws" {
|
|
3
|
-
region = "${var.region}"
|
|
4
|
-
access_key = "${var.access_key}"
|
|
5
|
-
secret_key = "${var.secret_key}"
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
resource "aws_key_pair" "platform_key" {
|
|
9
|
-
key_name = "${var.keypair_name}"
|
|
10
|
-
public_key = "${file("${var.public_key}")}"
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
resource "aws_instance" "bastion" {
|
|
14
|
-
ami = "${lookup(var.aws_amis, var.region)}"
|
|
15
|
-
instance_type = "t2.small"
|
|
16
|
-
key_name = "${var.keypair_name}"
|
|
17
|
-
|
|
18
|
-
vpc_security_group_ids = ["${aws_security_group.bastion_sg.id}"]
|
|
19
|
-
subnet_id = <%= "\"#{conditional_subnet_id(@values)}\"" %>
|
|
20
|
-
associate_public_ip_address = true
|
|
21
|
-
|
|
22
|
-
tags {
|
|
23
|
-
Name = "bastion"
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
connection {
|
|
27
|
-
user = "ubuntu"
|
|
28
|
-
private_key = "${file(var.private_key)}"
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
provisioner "remote-exec" {
|
|
32
|
-
inline = [
|
|
33
|
-
"curl -fsSL get.docker.com | sh"
|
|
34
|
-
]
|
|
35
|
-
}
|
|
36
|
-
}
|
|
@@ -1,252 +0,0 @@
|
|
|
1
|
-
<% if @values['aws']['vpc_id'].empty? %>
|
|
2
|
-
# Create a VPC to launch our instances into
|
|
3
|
-
resource "aws_vpc" "platform" {
|
|
4
|
-
cidr_block = "${var.vpc_cidr_block}"
|
|
5
|
-
|
|
6
|
-
tags {
|
|
7
|
-
Name = "${var.vpc_name}"
|
|
8
|
-
Component = "kite-platform"
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
# DMZ subnet
|
|
13
|
-
resource "aws_subnet" "platform_dmz" {
|
|
14
|
-
vpc_id = "${aws_vpc.platform.id}"
|
|
15
|
-
availability_zone = "${var.availability_zone}"
|
|
16
|
-
cidr_block = "${var.public_subnet_cidr}"
|
|
17
|
-
map_public_ip_on_launch = false
|
|
18
|
-
tags {
|
|
19
|
-
Name = "${var.public_subnet_name}"
|
|
20
|
-
Component = "kite-platform"
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
# Create an internet gateway to give our subnet access to the outside world
|
|
25
|
-
resource "aws_internet_gateway" "platform" {
|
|
26
|
-
vpc_id = "${aws_vpc.platform.id}"
|
|
27
|
-
tags {
|
|
28
|
-
Name = "platform-gateway"
|
|
29
|
-
Component = "kite-platform"
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
# Grant the VPC internet access on its main route table
|
|
34
|
-
resource "aws_route" "internet_access" {
|
|
35
|
-
route_table_id = "${aws_vpc.platform.main_route_table_id}"
|
|
36
|
-
destination_cidr_block = "0.0.0.0/0"
|
|
37
|
-
gateway_id = "${aws_internet_gateway.platform.id}"
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
<% end %>
|
|
41
|
-
|
|
42
|
-
<% if !@values['aws']['vpc_id'].empty? && @values['aws']['public_subnet']['id'].empty? %>
|
|
43
|
-
# DMZ subnet
|
|
44
|
-
resource "aws_subnet" "platform_dmz" {
|
|
45
|
-
vpc_id = "${var.vpc_id}"
|
|
46
|
-
availability_zone = "${var.availability_zone}"
|
|
47
|
-
cidr_block = "${var.public_subnet_cidr}"
|
|
48
|
-
map_public_ip_on_launch = false
|
|
49
|
-
tags {
|
|
50
|
-
Name = "${var.public_subnet_name}"
|
|
51
|
-
Component = "kite-platform"
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
<% end %>
|
|
55
|
-
|
|
56
|
-
# Private subnet
|
|
57
|
-
resource "aws_subnet" "platform_net" {
|
|
58
|
-
vpc_id = <%= "\"#{conditional_vpc_id(@values)}\"" %>
|
|
59
|
-
availability_zone = "${var.availability_zone}"
|
|
60
|
-
cidr_block = "${var.private_subnet_cidr}"
|
|
61
|
-
map_public_ip_on_launch = false
|
|
62
|
-
tags {
|
|
63
|
-
Name = "${var.private_subnet_name}"
|
|
64
|
-
Component = "kite-platform"
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
# Create a custom route table for the private subnet
|
|
69
|
-
resource "aws_route_table" "private_route" {
|
|
70
|
-
vpc_id = <%= "\"#{conditional_vpc_id(@values)}\"" %>
|
|
71
|
-
|
|
72
|
-
route {
|
|
73
|
-
cidr_block = "0.0.0.0/0"
|
|
74
|
-
nat_gateway_id = "${aws_nat_gateway.nat_gateway.id}"
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
tags {
|
|
78
|
-
Name = "platform-route"
|
|
79
|
-
Component = "kite-platform"
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
# Allocate an Elastic IP for NAT gateway
|
|
84
|
-
resource "aws_eip" "nat_ip" {
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
# Create a NAT gateway to forward the traffic for BOSH
|
|
88
|
-
resource "aws_nat_gateway" "nat_gateway" {
|
|
89
|
-
allocation_id = "${aws_eip.nat_ip.id}"
|
|
90
|
-
subnet_id = <%= "\"#{conditional_subnet_id(@values)}\"" %>
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
# Associate custom route table with private subnet
|
|
94
|
-
resource "aws_route_table_association" "private_route" {
|
|
95
|
-
subnet_id = "${aws_subnet.platform_net.id}"
|
|
96
|
-
route_table_id = "${aws_route_table.private_route.id}"
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
# The default security group
|
|
100
|
-
resource "aws_security_group" "bastion_sg" {
|
|
101
|
-
name = "bastion_sg"
|
|
102
|
-
description = "Bastion security group"
|
|
103
|
-
vpc_id = <%= "\"#{conditional_vpc_id(@values)}\"" %>
|
|
104
|
-
tags {
|
|
105
|
-
Name = "bastion-sg"
|
|
106
|
-
Component = "bosh-director"
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
ingress {
|
|
110
|
-
from_port = 22
|
|
111
|
-
to_port = 22
|
|
112
|
-
protocol = "tcp"
|
|
113
|
-
cidr_blocks = [
|
|
114
|
-
"0.0.0.0/0"]
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
egress {
|
|
118
|
-
from_port = 0
|
|
119
|
-
to_port = 0
|
|
120
|
-
protocol = "-1"
|
|
121
|
-
cidr_blocks = [
|
|
122
|
-
"0.0.0.0/0"]
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
# The default security group
|
|
127
|
-
resource "aws_security_group" "bosh_sg" {
|
|
128
|
-
name = "bosh_sg"
|
|
129
|
-
description = "Default BOSH security group"
|
|
130
|
-
vpc_id = <%= "\"#{conditional_vpc_id(@values)}\"" %>
|
|
131
|
-
tags {
|
|
132
|
-
Name = "bosh-sg"
|
|
133
|
-
Component = "bosh-director"
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
# inbound access rules
|
|
137
|
-
ingress {
|
|
138
|
-
from_port = 6868
|
|
139
|
-
to_port = 6868
|
|
140
|
-
protocol = "tcp"
|
|
141
|
-
cidr_blocks = [
|
|
142
|
-
"0.0.0.0/0"]
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
ingress {
|
|
146
|
-
from_port = 25555
|
|
147
|
-
to_port = 25555
|
|
148
|
-
protocol = "tcp"
|
|
149
|
-
cidr_blocks = [
|
|
150
|
-
"0.0.0.0/0"]
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
ingress {
|
|
154
|
-
from_port = 22
|
|
155
|
-
to_port = 22
|
|
156
|
-
protocol = "tcp"
|
|
157
|
-
cidr_blocks = [
|
|
158
|
-
"0.0.0.0/0"]
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
ingress {
|
|
162
|
-
from_port = 0
|
|
163
|
-
to_port = 65535
|
|
164
|
-
protocol = "tcp"
|
|
165
|
-
self = true
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
ingress {
|
|
169
|
-
from_port = 0
|
|
170
|
-
to_port = 65535
|
|
171
|
-
protocol = "udp"
|
|
172
|
-
self = true
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
# outbound internet access
|
|
176
|
-
egress {
|
|
177
|
-
from_port = 0
|
|
178
|
-
to_port = 0
|
|
179
|
-
protocol = "-1"
|
|
180
|
-
cidr_blocks = [
|
|
181
|
-
"0.0.0.0/0"]
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
# Create an Ingress security group
|
|
186
|
-
resource "aws_security_group" "ingress_sg" {
|
|
187
|
-
name = "ingress-sg"
|
|
188
|
-
description = "Ingress security group"
|
|
189
|
-
vpc_id = <%= "\"#{conditional_vpc_id(@values)}\"" %>
|
|
190
|
-
tags {
|
|
191
|
-
Name = "ingress-sg"
|
|
192
|
-
Component = "ingress"
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
# outbound internet access
|
|
196
|
-
egress {
|
|
197
|
-
from_port = 0
|
|
198
|
-
to_port = 0
|
|
199
|
-
protocol = "-1"
|
|
200
|
-
cidr_blocks = ["0.0.0.0/0"]
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
# inbound HTTP access
|
|
204
|
-
ingress {
|
|
205
|
-
from_port = 80
|
|
206
|
-
to_port = 80
|
|
207
|
-
protocol = "tcp"
|
|
208
|
-
cidr_blocks = ["0.0.0.0/0"]
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
# Create a Concourse security group
|
|
213
|
-
resource "aws_security_group" "concourse_sg" {
|
|
214
|
-
name = "concourse-sg"
|
|
215
|
-
description = "Concourse security group"
|
|
216
|
-
vpc_id = <%= "\"#{conditional_vpc_id(@values)}\"" %>
|
|
217
|
-
tags {
|
|
218
|
-
Name = "concourse-sg"
|
|
219
|
-
Component = "concourse"
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
# outbound internet access
|
|
223
|
-
egress {
|
|
224
|
-
from_port = 0
|
|
225
|
-
to_port = 0
|
|
226
|
-
protocol = "-1"
|
|
227
|
-
cidr_blocks = ["0.0.0.0/0"]
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
# inbound connections from ELB
|
|
231
|
-
ingress {
|
|
232
|
-
from_port = 8080
|
|
233
|
-
to_port = 8080
|
|
234
|
-
protocol = "tcp"
|
|
235
|
-
cidr_blocks = ["0.0.0.0/0"]
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
ingress {
|
|
239
|
-
from_port = 8080
|
|
240
|
-
to_port = 8080
|
|
241
|
-
protocol = "tcp"
|
|
242
|
-
cidr_blocks = [
|
|
243
|
-
"0.0.0.0/0"]
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
ingress {
|
|
247
|
-
from_port = 2222
|
|
248
|
-
to_port = 2222
|
|
249
|
-
protocol = "tcp"
|
|
250
|
-
cidr_blocks = ["0.0.0.0/0"]
|
|
251
|
-
}
|
|
252
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
output "security_group_id" {
|
|
2
|
-
value = "${aws_security_group.bosh_sg.id}"
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
output "platform_subnet_id" {
|
|
6
|
-
value = "${aws_subnet.platform_net.id}"
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
output "dmz_subnet_id" {
|
|
10
|
-
value = "${aws_subnet.platform_dmz.id}"
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
output "bastion_ip" {
|
|
14
|
-
value = "${aws_instance.bastion.public_ip}"
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
output "gateway_ip" {
|
|
18
|
-
value = "${aws_nat_gateway.nat_gateway.private_ip}"
|
|
19
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# Credentials
|
|
2
|
-
access_key = "<%= @values['aws']['access_key'] %>"
|
|
3
|
-
secret_key = "<%= @values['aws']['secret_key'] %>"
|
|
4
|
-
region = "<%= @values['aws']['region'] %>"
|
|
5
|
-
availability_zone = "<%= @values['aws']['zone'] %>"
|
|
6
|
-
|
|
7
|
-
# Network Config
|
|
8
|
-
vpc_cidr_block = "<%= @values['aws']['vpc_cidr_block'] %>"
|
|
9
|
-
vpc_name = "<%= @values['aws']['vpc_name'] %>"
|
|
10
|
-
vpc_id = "<%= @values['aws']['vpc_id'] %>"
|
|
11
|
-
public_subnet_name = "<%= @values['aws']['public_subnet']['name'] %>"
|
|
12
|
-
public_subnet_cidr = "<%= @values['aws']['public_subnet']['network'] %>"
|
|
13
|
-
public_subnet_id = "<%= @values['aws']['public_subnet']['id'] %>"
|
|
14
|
-
private_subnet_name = "<%= @values['aws']['private_subnet']['name'] %>"
|
|
15
|
-
private_subnet_cidr = "<%= @values['aws']['private_subnet']['network'] %>"
|
|
16
|
-
|
|
17
|
-
# Kite config
|
|
18
|
-
keypair_name = "<%= @values['kite']['keypair_name'] %>"
|
|
19
|
-
bucket_name = "<%= @values['kite']['bucket_name'] %>"
|
|
20
|
-
public_key = "<%= @values['kite']['public_key_path'] %>"
|
|
21
|
-
private_key = "<%= @values['kite']['private_key_path'] %>"
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
variable "access_key" {
|
|
2
|
-
type = "string"
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
variable "secret_key" {
|
|
6
|
-
type = "string"
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
variable "public_key" {
|
|
10
|
-
type = "string"
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
variable "private_key" {
|
|
14
|
-
type = "string"
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
variable "keypair_name" {
|
|
18
|
-
type = "string"
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
variable "bucket_name" {
|
|
22
|
-
type = "string"
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
variable "region" {
|
|
26
|
-
type = "string"
|
|
27
|
-
default = "eu-central-1"
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
variable "availability_zone" {
|
|
31
|
-
type = "string"
|
|
32
|
-
default = "eu-central-1a"
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
variable "vpc_cidr_block" {
|
|
36
|
-
type = "string"
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
variable "vpc_name" {
|
|
40
|
-
type = "string"
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
variable "vpc_id" {
|
|
44
|
-
type = "string"
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
variable "public_subnet_cidr" {
|
|
48
|
-
type = "string"
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
variable "public_subnet_id" {
|
|
52
|
-
type = "string"
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
variable "public_subnet_name" {
|
|
56
|
-
type = "string"
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
variable "private_subnet_cidr" {
|
|
60
|
-
type = "string"
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
variable "private_subnet_name" {
|
|
64
|
-
type = "string"
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
variable "aws_amis" {
|
|
68
|
-
default = {
|
|
69
|
-
us-east-1 = "ami-1d4e7a66"
|
|
70
|
-
eu-central-1 = "ami-958128fa"
|
|
71
|
-
eu-west-1 = "ami-785db401"
|
|
72
|
-
}
|
|
73
|
-
}
|
data/tpl/gcp/README.md
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
# GCP Cloud
|
|
2
|
-
|
|
3
|
-
## Setup
|
|
4
|
-
|
|
5
|
-
### Prerequisites
|
|
6
|
-
Set path to your service account credentials:
|
|
7
|
-
```
|
|
8
|
-
export GOOGLE_CREDENTIALS=*~/credentials/service-account.json*
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
### Setup the basic infrastructure and bastion
|
|
12
|
-
Apply terraform code
|
|
13
|
-
```
|
|
14
|
-
pushd terraform && terraform init && terraform apply && popd
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
[Note]
|
|
18
|
-
To destroy Bastion later, use `terraform destroy -target google_compute_instance.bastion`
|
|
19
|
-
|
|
20
|
-
### Setup BOSH
|
|
21
|
-
Render BOSH manifest and related files
|
|
22
|
-
```
|
|
23
|
-
kite render manifest bosh --cloud gcp
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Prepare BOSH environment using instructions from [docs/bosh.md](docs/bosh.md)
|
|
27
|
-
|
|
28
|
-
### Setup INGRESS
|
|
29
|
-
Render Ingress manifest and related files
|
|
30
|
-
```
|
|
31
|
-
kite render manifest ingress --cloud gcp
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
Follow instructions from [docs/ingress.md](docs/ingress.md) to deploy Ingress
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
### Setup VAULT
|
|
38
|
-
Render Vault deployment
|
|
39
|
-
```
|
|
40
|
-
kite render manifest vault --cloud gcp
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
Follow instructions from [docs/vault.md](docs/vault.md) to deploy Vault
|
|
44
|
-
|
|
45
|
-
### Setup CONCOURSE
|
|
46
|
-
[Note]
|
|
47
|
-
To expose concourse publicly, you must create first (manually) a virtual IP in GCP and create a DNS A entry for the hostname for this IP. Set the IP into config/cloud.yml (concourse.vip).
|
|
48
|
-
|
|
49
|
-
Render Concourse manifest
|
|
50
|
-
```
|
|
51
|
-
kite render manifest concourse --cloud gcp
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
Follow instructions from [docs/concourse.md](docs/concourse.md) to deploy Concourse
|