-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathdeployments.yml
209 lines (193 loc) · 6.85 KB
/
deployments.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
## Innovation Lab Deployment Configuration
# This configuration YML is used by the python *deploy* module in the */src/* directory.
# The *deploy.deployer* script will parse this YML and pass the parameters specified into
# the appropriate **CloudFormation** template in the */templates/* directory. It will then
# call the **AWS CloudFormation API** through the **boto3** python wrapper with the
# parameterized template.
# Each block in the YML represents a distinct stack. The *template* property determines
# which **CloudFormation** template is retrieved from the */templates/* directory. The
# *parameters* property is an array of parameters corresponding to the parameters of the
# **CloudFormation** template.
## Syntax:
# StackName:
# template: <templateFile>
# parameters:
# - ParameterKey: <templateParameter>
# ParameterValue: value | !env <environmentVariable>
# - ParameterKey: <templateParameter>
# ParameterValue: value | !env <environmentVariable>
# ...
## NOTES
# 1. The order of stacks *matters*! The stacks will be provisioned in the order they are listed.
# If a stack requires resources from another stack, make sure the independent stack is deployed
# before the dependent stack!
Innolab-RepoStack:
template: repo.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: github
ParameterValue: "false"
Innolab-DocStack:
template: cloudfront.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: domainName
ParameterValue: !env DOMAIN
- ParameterKey: subdomainName
ParameterValue: documentation
- ParameterKey: certificateId
ParameterValue: !env CERTIFICATE_ID
- ParameterKey: hostedZoneId
ParameterValue: !env HOSTED_ZONE_ID
Innolab-FrontendStack-Dev:
template: cloudfront.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: domainName
ParameterValue: !env DOMAIN
- ParameterKey: subdomainName
ParameterValue: laboratory-dev
- ParameterKey: certificateId
ParameterValue: !env CERTIFICATE_ID
- ParameterKey: hostedZoneId
ParameterValue: !env HOSTED_ZONE_ID
Innolab-VPCStack-Dev:
template: vpc.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: dbKeyName
ParameterValue: innolab_tunnel_key_Dev
- ParameterKey: bastionHost
ParameterValue: "true"
- ParameterKey: domainName
ParameterValue: !env DOMAIN
- ParameterKey: hostedZoneId
ParameterValue: !env HOSTED_ZONE_ID
Innolab-Postgres-RDSStack-Dev:
template: rds.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: typeName
ParameterValue: postgres
- ParameterKey: vpcStack
ParameterValue: Innolab-VPCStack-Dev
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
Innolab-Oracle-RDSStack-Dev:
template: rds.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: typeName
ParameterValue: oracle
- ParameterKey: vpcStack
ParameterValue: Innolab-VPCStack-Dev
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
Innolab-AlationStack:
template: applications/alation.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: alationKeyName
ParameterValue: innolab_alation_key
- ParameterKey: domainName
ParameterValue: makpar-innovation.net
- ParameterKey: hostedZoneId
ParameterValue: !env HOSTED_ZONE_ID
- ParameterKey: vpcStack
ParameterValue: Innolab-VPCStack-Dev
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
Innolab-LambdaStack-Dev:
template: lambda.yml
parameters:
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
- ParameterKey: vpcStack
ParameterValue: Innolab-VPCStack-Dev
- ParameterKey: repoStack
ParameterValue: Innolab-RepoStack
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
Innolab-Doc-PipelineStack:
template: pipelines/documentation.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: domainName
ParameterValue: !env DOMAIN
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
- ParameterKey: repoStack
ParameterValue: Innolab-RepoStack
Innolab-Frontend-PipelineStack-Dev:
template: pipelines/cloudfront-web.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: domainName
ParameterValue: !env DOMAIN
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
- ParameterKey: repoStack
ParameterValue: Innolab-RepoStack
Innolab-Lambda-PipelineStack-Dev:
template: pipelines/lambda.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: iamStack
ParameterValue: Innolab-IAMStack
- ParameterKey: repoStack
ParameterValue: Innolab-RepoStack
Innolab-MigrationStack:
template: applications/migration.yml
parameters:
- ParameterKey: applicationName
ParameterValue: !env APPLICATION
- ParameterKey: environmentName
ParameterValue: !env ENVIRONMENT
- ParameterKey: domainName
ParameterValue: !env DOMAIN
- ParameterKey: hostedZoneId
ParameterValue: !env HOSTED_ZONE_ID
- ParameterKey: clientKeyName
ParameterValue: innolab_migration_client
- ParameterKey: dbSourceUsername
ParameterValue: !env ORACLE_RDS_USERNAME
- ParameterKey: dbSourcePassword
ParameterValue: !env ORACLE_RDS_PASSWORD
- ParameterKey: dbSourceEngine
ParameterValue: oracle
- ParameterKey: dbTargetUsername
ParameterValue: !env POSTGRES_RDS_USERNAME
- ParameterKey: dbTargetPassword
ParameterValue: !env POSTGRES_RDS_PASSWORD
- ParameterKey: dbTargetEngine
ParameterValue: postgres
- ParameterKey: targetStack
ParameterValue: Innolab-Postgres-RDSStack-Dev
- ParameterKey: sourceStack
ParameterValue: Innolab-Oracle-RDSStack-Dev
- ParameterKey: vpcStack
ParameterValue: Innolab-VPCStack-Dev