cfndk 0.0.2 → 0.0.3

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.
data/sample/db/db.yaml ADDED
@@ -0,0 +1,136 @@
1
+ AWSTemplateFormatVersion: '2010-09-09'
2
+ Description: DB Stack
3
+ Parameters:
4
+ # ------------------------------------------------------------#
5
+ # Input Parameters
6
+ # ------------------------------------------------------------#
7
+ VpcName:
8
+ Type: String
9
+ Environment:
10
+ Type: String
11
+ MySQLMajorVersion:
12
+ Type: String
13
+ Default: "5.7"
14
+ AllowedValues: [ "5.5", "5.6", "5.7" ]
15
+ DBInstanceClass:
16
+ Type: String
17
+ Default: "db.m4.large"
18
+ DBInstanceStorageSize:
19
+ Type: String
20
+ Default: "30"
21
+ DBInstanceStorageType:
22
+ Type: String
23
+ Default: "gp2"
24
+ DBName:
25
+ Type: String
26
+ Default: "db"
27
+ DBRestore:
28
+ Default: "false"
29
+ Type: String
30
+ AllowedValues: [ "true", "false" ]
31
+ DBSnapshotId:
32
+ Type: String
33
+ DBMasterUserName:
34
+ Type: String
35
+ Default: "dbuser"
36
+ NoEcho: true
37
+ MinLength: 1
38
+ MaxLength: 16
39
+ AllowedPattern: "[a-zA-Z][a-zA-Z0-9]*"
40
+ ConstraintDescription: "must begin with a letter and contain only alphanumeric characters."
41
+ DBPassword:
42
+ Default: "dbpassword"
43
+ NoEcho: true
44
+ Type: String
45
+ MinLength: 8
46
+ MaxLength: 41
47
+ AllowedPattern: "[a-zA-Z0-9]*"
48
+ ConstraintDescription: "must contain only alphanumeric characters."
49
+ MultiAZ:
50
+ Default: "false"
51
+ Type: String
52
+ AllowedValues: [ "true", "false" ]
53
+ CopyTagsToSnapshot:
54
+ Default: "false"
55
+ Type: String
56
+ AllowedValues: [ "true", "false" ]
57
+ OptionalPreferredBackupWindow:
58
+ Type: String
59
+ ConstraintDescription: "Must be like 18:00-18:30"
60
+ OptionalPreferredMaintenanceWindow:
61
+ Type: String
62
+ ConstraintDescription: "Must be like sat:19:00-sat:19:30"
63
+ OptionalBackupRetentionPeriod:
64
+ Type: String
65
+ ConstraintDescription: "Must be like 7"
66
+ Conditions:
67
+ IsOptionalDBRestore:
68
+ !Equals [!Ref DBRestore, 'true']
69
+ IsOptionalPreferredBackupWindow:
70
+ !Not [!Equals [!Ref OptionalPreferredBackupWindow, '']]
71
+ IsOptionalPreferredMaintenanceWindow:
72
+ !Not [!Equals [!Ref OptionalPreferredMaintenanceWindow, '']]
73
+ IsOptionalBackupRetentionPeriod:
74
+ !Not [!Equals [!Ref OptionalBackupRetentionPeriod, '']]
75
+ Resources:
76
+ DBInstance:
77
+ Type: AWS::RDS::DBInstance
78
+ Properties:
79
+ DBInstanceIdentifier: !Sub "${VpcName}-${Environment}-Db"
80
+ Engine: MySQL
81
+ EngineVersion: !Sub "${MySQLMajorVersion}.22"
82
+ DBInstanceClass: !Ref DBInstanceClass
83
+ AllocatedStorage: !Ref DBInstanceStorageSize
84
+ StorageType: !Ref DBInstanceStorageType
85
+ DBName: !Ref DBName
86
+ DBSnapshotIdentifier:
87
+ !If [IsOptionalDBRestore, !Ref DBSnapshotId, !Ref "AWS::NoValue"]
88
+ MasterUsername:
89
+ !If [IsOptionalDBRestore, "!Ref AWS::NoValue", !Ref DBMasterUserName]
90
+ MasterUserPassword:
91
+ !If [IsOptionalDBRestore, "!Ref AWS::NoValue", !Ref DBPassword]
92
+ DBSubnetGroupName: !Ref DBSubnetGroup
93
+ PubliclyAccessible: false
94
+ MultiAZ: !Ref MultiAZ
95
+ PreferredBackupWindow:
96
+ !If [IsOptionalPreferredBackupWindow, !Ref OptionalPreferredBackupWindow, !Ref "AWS::NoValue"]
97
+ PreferredMaintenanceWindow:
98
+ !If [IsOptionalPreferredMaintenanceWindow, !Ref OptionalPreferredMaintenanceWindow, !Ref "AWS::NoValue"]
99
+ AutoMinorVersionUpgrade: false
100
+ DBParameterGroupName: !Ref DBParameterGroup
101
+ VPCSecurityGroups:
102
+ - { "Fn::ImportValue": !Sub "${VpcName}-DbSg" }
103
+ CopyTagsToSnapshot: !Ref CopyTagsToSnapshot
104
+ BackupRetentionPeriod:
105
+ !If [IsOptionalBackupRetentionPeriod, !Ref OptionalBackupRetentionPeriod, !Ref "AWS::NoValue"]
106
+ Port: 3306
107
+ Tags:
108
+ - Key: Name
109
+ Value: !Sub "${VpcName}-${Environment}-Db"
110
+ DeletionPolicy: Delete
111
+ DBParameterGroup:
112
+ Type: AWS::RDS::DBParameterGroup
113
+ Properties:
114
+ Family: !Sub "MySQL${MySQLMajorVersion}"
115
+ Description: !Sub "${VpcName}-${Environment}-Db-parm"
116
+ DBSubnetGroup:
117
+ Type: "AWS::RDS::DBSubnetGroup"
118
+ Properties:
119
+ DBSubnetGroupName: !Sub "${VpcName}-${Environment}-Db-subnet"
120
+ DBSubnetGroupDescription: "Db subnet group"
121
+ SubnetIds:
122
+ - { "Fn::ImportValue": !Sub "${VpcName}-${Environment}-Private-Subnet1" }
123
+ - { "Fn::ImportValue": !Sub "${VpcName}-${Environment}-Private-Subnet2" }
124
+ Outputs:
125
+ DBInstanceID:
126
+ Value: !Ref DBInstance
127
+ Export:
128
+ Name: !Sub "${VpcName}-${Environment}-Db-id"
129
+ DBInstanceEndpoint:
130
+ Value: !GetAtt DBInstance.Endpoint.Address
131
+ Export:
132
+ Name: !Sub "${VpcName}-${Environment}-Db-endpoint"
133
+ DBName:
134
+ Value: !Ref DBName
135
+ Export:
136
+ Name: !Sub "${VpcName}-${Environment}-Db-dbname"
@@ -0,0 +1,68 @@
1
+ {
2
+ "Parameters": [
3
+ {
4
+ "ParameterKey": "VpcName",
5
+ "ParameterValue": "sample"
6
+ },
7
+ {
8
+ "ParameterKey": "Environment",
9
+ "ParameterValue": "Prod"
10
+ },
11
+ {
12
+ "ParameterKey": "MySQLMajorVersion",
13
+ "ParameterValue": "5.7"
14
+ },
15
+ {
16
+ "ParameterKey": "DBInstanceClass",
17
+ "ParameterValue": "db.t2.micro"
18
+ },
19
+ {
20
+ "ParameterKey": "DBInstanceStorageSize",
21
+ "ParameterValue": "10"
22
+ },
23
+ {
24
+ "ParameterKey": "DBInstanceStorageType",
25
+ "ParameterValue": "gp2"
26
+ },
27
+ {
28
+ "ParameterKey": "DBName",
29
+ "ParameterValue": "db"
30
+ },
31
+ {
32
+ "ParameterKey": "DBRestore",
33
+ "ParameterValue": "false"
34
+ },
35
+ {
36
+ "ParameterKey": "DBSnapshotId",
37
+ "ParameterValue": ""
38
+ },
39
+ {
40
+ "ParameterKey": "DBMasterUserName",
41
+ "ParameterValue": "dbuser"
42
+ },
43
+ {
44
+ "ParameterKey": "DBPassword",
45
+ "ParameterValue": "dbpassword"
46
+ },
47
+ {
48
+ "ParameterKey": "MultiAZ",
49
+ "ParameterValue": "false"
50
+ },
51
+ {
52
+ "ParameterKey": "CopyTagsToSnapshot",
53
+ "ParameterValue": "false"
54
+ },
55
+ {
56
+ "ParameterKey": "OptionalPreferredBackupWindow",
57
+ "ParameterValue": ""
58
+ },
59
+ {
60
+ "ParameterKey": "OptionalPreferredMaintenanceWindow",
61
+ "ParameterValue": ""
62
+ },
63
+ {
64
+ "ParameterKey": "OptionalBackupRetentionPeriod",
65
+ "ParameterValue": ""
66
+ }
67
+ ]
68
+ }
@@ -0,0 +1,8 @@
1
+ AWSTemplateFormatVersion: '2010-09-09'
2
+ Description: ELB Stack
3
+
4
+ Parameters:
5
+
6
+ Resources:
7
+
8
+ Outputs:
File without changes
@@ -0,0 +1,53 @@
1
+ AWSTemplateFormatVersion: 2010-09-09
2
+ Description: IAM EC2 Role Stack
3
+ Parameters:
4
+ WebRoleName:
5
+ Description: Name for WebRole
6
+ Type: String
7
+ WebInstanceProfileName:
8
+ Description: Name for WebInstanceProfile
9
+ Type: String
10
+ Resources:
11
+ WebRole:
12
+ Type: AWS::IAM::Role
13
+ Properties:
14
+ AssumeRolePolicyDocument:
15
+ Version: "2012-10-17"
16
+ Statement:
17
+ -
18
+ Effect: "Allow"
19
+ Principal:
20
+ Service:
21
+ - "ec2.amazonaws.com"
22
+ Action:
23
+ - "sts:AssumeRole"
24
+ Path: "/"
25
+ Policies:
26
+ -
27
+ PolicyName: "root"
28
+ PolicyDocument:
29
+ Version: "2012-10-17"
30
+ Statement:
31
+ -
32
+ Effect: "Allow"
33
+ Action: "*"
34
+ Resource: "*"
35
+ RoleName: !Ref WebRoleName
36
+ WebInstanceProfile:
37
+ Type: AWS::IAM::InstanceProfile
38
+ Properties:
39
+ Path: "/"
40
+ Roles:
41
+ - !Ref WebRole
42
+ InstanceProfileName: !Ref WebInstanceProfileName
43
+ Outputs:
44
+ WebInstanceProfile:
45
+ Description: Web Instance Profile
46
+ Value: !Ref WebRoleName
47
+ Export:
48
+ Name: !Ref WebInstanceProfileName
49
+ WebRole:
50
+ Description: WebIam Role
51
+ Value: !Ref WebRole
52
+ Export:
53
+ Name: !Ref WebRoleName
@@ -0,0 +1,12 @@
1
+ {
2
+ "Parameters": [
3
+ {
4
+ "ParameterKey": "WebRoleName",
5
+ "ParameterValue": "WebRole"
6
+ },
7
+ {
8
+ "ParameterKey": "WebInstanceProfileName",
9
+ "ParameterValue": "WebInstanceProfile"
10
+ }
11
+ ]
12
+ }
File without changes
@@ -0,0 +1,333 @@
1
+ AWSTemplateFormatVersion: '2010-09-09'
2
+ Description: Network Stack
3
+ Parameters:
4
+ VpcName:
5
+ Description: Name for this VPC
6
+ Type: String
7
+ VpcCidr:
8
+ Description: CIDR Block for the VPC
9
+ Type: String
10
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
11
+ ConstraintDescription: Must be like 192.168.0.0/24
12
+ InternalDnsName:
13
+ Description: Internal DNS name
14
+ Type: String
15
+ Environment:
16
+ Description: Name for this Environment
17
+ Type: String
18
+ PublicSubnet1Cidr:
19
+ Description: CIDR Block for the subnet
20
+ Type: String
21
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
22
+ ConstraintDescription: Must be like 192.168.0.0/24
23
+ PublicSubnet2Cidr:
24
+ Description: CIDR Block for the subnet
25
+ Type: String
26
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
27
+ ConstraintDescription: Must be like 192.168.0.0/24
28
+ WebSubnet1Cidr:
29
+ Description: CIDR Block for the subnet
30
+ Type: String
31
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
32
+ ConstraintDescription: Must be like 192.168.0.0/24
33
+ WebSubnet2Cidr:
34
+ Description: CIDR Block for the subnet
35
+ Type: String
36
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
37
+ ConstraintDescription: Must be like 192.168.0.0/24
38
+ PrivateSubnet1Cidr:
39
+ Description: CIDR Block for the subnet
40
+ Type: String
41
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
42
+ ConstraintDescription: Must be like 192.168.0.0/24
43
+ PrivateSubnet2Cidr:
44
+ Description: CIDR Block for the subnet
45
+ Type: String
46
+ AllowedPattern: '[a-zA-Z0-9]+\..+'
47
+ ConstraintDescription: Must be like 192.168.0.0/24
48
+ Resources:
49
+ Vpc:
50
+ Type: AWS::EC2::VPC
51
+ Properties:
52
+ CidrBlock: !Ref VpcCidr
53
+ EnableDnsHostnames: true
54
+ Tags:
55
+ - Key: Name
56
+ Value: !Sub ${VpcName}-VPC
57
+ Igw:
58
+ Type: AWS::EC2::InternetGateway
59
+ Properties:
60
+ Tags:
61
+ - Key: Name
62
+ Value: !Sub ${VpcName}-IGW
63
+ IgwAttachement:
64
+ Type: AWS::EC2::VPCGatewayAttachment
65
+ Properties:
66
+ InternetGatewayId: !Ref Igw
67
+ VpcId: !Ref Vpc
68
+ InternalDns:
69
+ Type: AWS::Route53::HostedZone
70
+ Properties:
71
+ HostedZoneConfig:
72
+ Comment: Internal DNS
73
+ Name: !Ref InternalDnsName
74
+ VPCs:
75
+ - VPCId: !Ref Vpc
76
+ VPCRegion: !Ref AWS::Region
77
+ HostedZoneTags:
78
+ - Key: Name
79
+ Value: InternalDns
80
+ PublicSubnet1:
81
+ Type: AWS::EC2::Subnet
82
+ Properties:
83
+ CidrBlock: !Ref PublicSubnet1Cidr
84
+ VpcId: !Ref Vpc
85
+ AvailabilityZone: !Select
86
+ - 0
87
+ - Fn::GetAZs: !Ref 'AWS::Region'
88
+ MapPublicIpOnLaunch: true
89
+ Tags:
90
+ - Key: Name
91
+ Value: !Sub ${VpcName}-${Environment}-Public-Subnet1
92
+ PublicSubnet2:
93
+ Type: AWS::EC2::Subnet
94
+ Properties:
95
+ CidrBlock: !Ref PublicSubnet2Cidr
96
+ VpcId: !Ref Vpc
97
+ AvailabilityZone: !Select
98
+ - 1
99
+ - Fn::GetAZs: !Ref 'AWS::Region'
100
+ MapPublicIpOnLaunch: true
101
+ Tags:
102
+ - Key: Name
103
+ Value: !Sub ${VpcName}-${Environment}-Public-Subnet2
104
+ WebSubnet1:
105
+ Type: AWS::EC2::Subnet
106
+ Properties:
107
+ CidrBlock: !Ref WebSubnet1Cidr
108
+ VpcId: !Ref Vpc
109
+ AvailabilityZone: !Select
110
+ - 0
111
+ - Fn::GetAZs: !Ref 'AWS::Region'
112
+ MapPublicIpOnLaunch: false
113
+ Tags:
114
+ - Key: Name
115
+ Value: !Sub ${VpcName}-${Environment}-Web-Subnet1
116
+ WebSubnet2:
117
+ Type: AWS::EC2::Subnet
118
+ Properties:
119
+ CidrBlock: !Ref WebSubnet2Cidr
120
+ VpcId: !Ref Vpc
121
+ AvailabilityZone: !Select
122
+ - 1
123
+ - Fn::GetAZs: !Ref 'AWS::Region'
124
+ MapPublicIpOnLaunch: false
125
+ Tags:
126
+ - Key: Name
127
+ Value: !Sub ${VpcName}-${Environment}-Web-Subnet2
128
+ PrivateSubnet1:
129
+ Type: AWS::EC2::Subnet
130
+ Properties:
131
+ CidrBlock: !Ref PrivateSubnet1Cidr
132
+ VpcId: !Ref Vpc
133
+ AvailabilityZone: !Select
134
+ - 0
135
+ - Fn::GetAZs: !Ref 'AWS::Region'
136
+ Tags:
137
+ - Key: Name
138
+ Value: !Sub ${VpcName}-${Environment}-Private-Subnet1
139
+ PrivateSubnet2:
140
+ Type: AWS::EC2::Subnet
141
+ Properties:
142
+ CidrBlock: !Ref PrivateSubnet2Cidr
143
+ VpcId: !Ref Vpc
144
+ AvailabilityZone: !Select
145
+ - 1
146
+ - Fn::GetAZs: !Ref 'AWS::Region'
147
+ Tags:
148
+ - Key: Name
149
+ Value: !Sub ${VpcName}-${Environment}-Private-Subnet2
150
+ PublicSubnetRT:
151
+ Type: AWS::EC2::RouteTable
152
+ Properties:
153
+ VpcId: !Ref Vpc
154
+ Tags:
155
+ - Key: Name
156
+ Value: !Sub ${VpcName}-${Environment}-Public-SubnetRT
157
+ PublicSubnetToInternetRoute:
158
+ Type: AWS::EC2::Route
159
+ Properties:
160
+ RouteTableId: !Ref PublicSubnetRT
161
+ GatewayId: !Ref Igw
162
+ DestinationCidrBlock: 0.0.0.0/0
163
+ PublicSubnetRTAssociationToPublicSubnet1:
164
+ Type: AWS::EC2::SubnetRouteTableAssociation
165
+ Properties:
166
+ RouteTableId: !Ref PublicSubnetRT
167
+ SubnetId: !Ref PublicSubnet1
168
+ PublicSubnetRTAssociationToPublicSubnet2:
169
+ Type: AWS::EC2::SubnetRouteTableAssociation
170
+ Properties:
171
+ RouteTableId: !Ref PublicSubnetRT
172
+ SubnetId: !Ref PublicSubnet2
173
+ WebSubnetRT1:
174
+ Type: AWS::EC2::RouteTable
175
+ Properties:
176
+ VpcId: !Ref Vpc
177
+ Tags:
178
+ - Key: Name
179
+ Value: !Sub ${VpcName}-${Environment}-Web-SubnetRT1
180
+ WebSubnetRT2:
181
+ Type: AWS::EC2::RouteTable
182
+ Properties:
183
+ VpcId: !Ref Vpc
184
+ Tags:
185
+ - Key: Name
186
+ Value: !Sub ${VpcName}-${Environment}-Web-SubnetRT2
187
+ WebSubnetRTAssociationToPublicSubnet1:
188
+ Type: AWS::EC2::SubnetRouteTableAssociation
189
+ Properties:
190
+ RouteTableId: !Ref WebSubnetRT1
191
+ SubnetId: !Ref WebSubnet1
192
+ WebSubnetRTAssociationToPublicSubnet2:
193
+ Type: AWS::EC2::SubnetRouteTableAssociation
194
+ Properties:
195
+ RouteTableId: !Ref WebSubnetRT2
196
+ SubnetId: !Ref WebSubnet2
197
+ PrivateSubnetRT1:
198
+ Type: AWS::EC2::RouteTable
199
+ Properties:
200
+ VpcId: !Ref Vpc
201
+ Tags:
202
+ - Key: Name
203
+ Value: !Sub ${VpcName}-${Environment}-Private-SubnetRT1
204
+ PrivateSubnetRT2:
205
+ Type: AWS::EC2::RouteTable
206
+ Properties:
207
+ VpcId: !Ref Vpc
208
+ Tags:
209
+ - Key: Name
210
+ Value: !Sub ${VpcName}-${Environment}-Private-SubnetRT2
211
+ PrivateSubnetRT1AssociationToPrivateSubnet1:
212
+ Type: AWS::EC2::SubnetRouteTableAssociation
213
+ Properties:
214
+ RouteTableId: !Ref PrivateSubnetRT1
215
+ SubnetId: !Ref PrivateSubnet1
216
+ PrivateSubnetRT2AssociationToPrivateSubnet2:
217
+ Type: AWS::EC2::SubnetRouteTableAssociation
218
+ Properties:
219
+ RouteTableId: !Ref PrivateSubnetRT2
220
+ SubnetId: !Ref PrivateSubnet2
221
+ NatEip1:
222
+ Type: AWS::EC2::EIP
223
+ Properties: {}
224
+ NatEip2:
225
+ Type: AWS::EC2::EIP
226
+ Properties: {}
227
+ NatGw1:
228
+ Type: AWS::EC2::NatGateway
229
+ Properties:
230
+ SubnetId: !Ref PublicSubnet1
231
+ AllocationId:
232
+ Fn::GetAtt:
233
+ - NatEip1
234
+ - AllocationId
235
+ Tags:
236
+ - Key: Name
237
+ Value: !Sub ${VpcName}-${Environment}-NATGW1
238
+ NatGw2:
239
+ Type: AWS::EC2::NatGateway
240
+ Properties:
241
+ SubnetId: !Ref PublicSubnet2
242
+ AllocationId:
243
+ Fn::GetAtt:
244
+ - NatEip2
245
+ - AllocationId
246
+ Tags:
247
+ - Key: Name
248
+ Value: !Sub ${VpcName}-${Environment}-NATGW2
249
+ PrivateSubnet1ToInternetRoute:
250
+ Type: AWS::EC2::Route
251
+ Properties:
252
+ RouteTableId: !Ref PrivateSubnetRT1
253
+ NatGatewayId: !Ref NatGw1
254
+ DestinationCidrBlock: 0.0.0.0/0
255
+ PrivateSubnet2ToInternetRoute:
256
+ Type: AWS::EC2::Route
257
+ Properties:
258
+ RouteTableId: !Ref PrivateSubnetRT2
259
+ NatGatewayId: !Ref NatGw2
260
+ DestinationCidrBlock: 0.0.0.0/0
261
+ WebSubnet1ToInternetRoute:
262
+ Type: AWS::EC2::Route
263
+ Properties:
264
+ RouteTableId: !Ref WebSubnetRT1
265
+ NatGatewayId: !Ref NatGw1
266
+ DestinationCidrBlock: 0.0.0.0/0
267
+ WebSubnet2ToInternetRoute:
268
+ Type: AWS::EC2::Route
269
+ Properties:
270
+ RouteTableId: !Ref WebSubnetRT2
271
+ NatGatewayId: !Ref NatGw2
272
+ DestinationCidrBlock: 0.0.0.0/0
273
+ Outputs:
274
+ VpcCidr:
275
+ Description: VPC CIDR
276
+ Value: !GetAtt Vpc.CidrBlock
277
+ Export:
278
+ Name: !Sub ${VpcName}-VpcCidr
279
+ VpcId:
280
+ Description: VPC ID
281
+ Value: !Ref Vpc
282
+ Export:
283
+ Name: !Sub ${VpcName}-VpcId
284
+ Igw:
285
+ Description: InternetGateway of this VPC
286
+ Value: !Ref Igw
287
+ Export:
288
+ Name: !Sub ${VpcName}-IGW
289
+ IgwAttachement:
290
+ Description: InternetGatewayAttachement of this VPC
291
+ Value: !Ref IgwAttachement
292
+ Export:
293
+ Name: !Sub ${VpcName}-IGW-Attachement
294
+ InternalDnsName:
295
+ Description: Internal DNS zone name
296
+ Value: !Join [ ".", [ !Ref InternalDnsName, "" ]]
297
+ Export:
298
+ Name: !Sub ${VpcName}-InternalDnsName
299
+ InternalDns:
300
+ Description: Internal DNS zone id
301
+ Value: !Ref InternalDns
302
+ Export:
303
+ Name: !Sub ${VpcName}-InternalDns
304
+ PrivateSubnet1:
305
+ Description: Private Subnet 1 Id
306
+ Value: !Ref PrivateSubnet1
307
+ Export:
308
+ Name: !Sub ${VpcName}-${Environment}-Private-Subnet1
309
+ PrivateSubnet2:
310
+ Description: Private Subnet 2 Id
311
+ Value: !Ref PrivateSubnet2
312
+ Export:
313
+ Name: !Sub ${VpcName}-${Environment}-Private-Subnet2
314
+ WebSubnet1:
315
+ Description: Web Subnet 1 Id
316
+ Value: !Ref WebSubnet1
317
+ Export:
318
+ Name: !Sub ${VpcName}-${Environment}-Web-Subnet1
319
+ WebSubnet2:
320
+ Description: Web Subnet 2 Id
321
+ Value: !Ref WebSubnet2
322
+ Export:
323
+ Name: !Sub ${VpcName}-${Environment}-Web-Subnet2
324
+ PublicSubnet1:
325
+ Description: Public Subnet 1 Id
326
+ Value: !Ref PublicSubnet1
327
+ Export:
328
+ Name: !Sub ${VpcName}-${Environment}-Public-Subnet1
329
+ PublicSubnet2:
330
+ Description: Public Subnet 2 Id
331
+ Value: !Ref PublicSubnet2
332
+ Export:
333
+ Name: !Sub ${VpcName}-${Environment}-Public-Subnet2
@@ -0,0 +1,44 @@
1
+ {
2
+ "Parameters": [
3
+ {
4
+ "ParameterKey": "VpcName",
5
+ "ParameterValue": "sample"
6
+ },
7
+ {
8
+ "ParameterKey": "VpcCidr",
9
+ "ParameterValue": "10.199.0.0/16"
10
+ },
11
+ {
12
+ "ParameterKey": "InternalDnsName",
13
+ "ParameterValue": "sample.local"
14
+ },
15
+ {
16
+ "ParameterKey": "Environment",
17
+ "ParameterValue": "Prod"
18
+ },
19
+ {
20
+ "ParameterKey": "PublicSubnet1Cidr",
21
+ "ParameterValue": "10.199.1.0/25"
22
+ },
23
+ {
24
+ "ParameterKey": "PublicSubnet2Cidr",
25
+ "ParameterValue": "10.199.1.128/25"
26
+ },
27
+ {
28
+ "ParameterKey": "WebSubnet1Cidr",
29
+ "ParameterValue": "10.199.2.0/25"
30
+ },
31
+ {
32
+ "ParameterKey": "WebSubnet2Cidr",
33
+ "ParameterValue": "10.199.2.128/25"
34
+ },
35
+ {
36
+ "ParameterKey": "PrivateSubnet1Cidr",
37
+ "ParameterValue": "10.199.3.0/25"
38
+ },
39
+ {
40
+ "ParameterKey": "PrivateSubnet2Cidr",
41
+ "ParameterValue": "10.199.3.128/25"
42
+ }
43
+ ]
44
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "Parameters": [
3
+ {
4
+ "ParameterKey": "VpcName",
5
+ "ParameterValue": "sample"
6
+ }
7
+ ]
8
+ }