Skip to content

Commit b998d62

Browse files
CloudFormation Template Schema upgrade (#298)
https://github.com/aws-cloudformation/cloudformation-template-schema/tree/main Co-authored-by: kddejong <[email protected]> Co-authored-by: Kevin DeJong <[email protected]>
1 parent 790e5b5 commit b998d62

File tree

128 files changed

+48723
-8551
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

128 files changed

+48723
-8551
lines changed

server/schema/resources.schema.json

Lines changed: 7468 additions & 6655 deletions
Large diffs are not rendered by default.

server/schema/resources/aws-apigatewayv2-route.json

Lines changed: 66 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,13 @@
11
{
22
"typeName": "AWS::ApiGatewayV2::Route",
33
"description": "Resource Type definition for AWS::ApiGatewayV2::Route",
4+
"sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigatewayv2",
45
"additionalProperties": false,
56
"properties": {
6-
"Target": {
7-
"type": "string",
8-
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
9-
},
107
"RouteResponseSelectionExpression": {
118
"type": "string",
129
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
1310
},
14-
"AuthorizerId": {
15-
"type": "string",
16-
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
17-
},
1811
"RequestModels": {
1912
"type": "object",
2013
"markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption"
@@ -54,6 +47,30 @@
5447
},
5548
"RequestParameters": {
5649
"type": "object",
50+
"items": {
51+
"$ref": "#/definitions/ParameterConstraints"
52+
},
53+
"markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption"
54+
},
55+
"Target": {
56+
"type": "string",
57+
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
58+
},
59+
"AuthorizerId": {
60+
"type": "string",
61+
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
62+
}
63+
},
64+
"definitions": {
65+
"ParameterConstraints": {
66+
"type": "object",
67+
"additionalProperties": false,
68+
"properties": {
69+
"Required": {
70+
"type": "boolean",
71+
"markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption"
72+
}
73+
},
5774
"markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption"
5875
}
5976
},
@@ -65,13 +82,51 @@
6582
"/properties/ApiId"
6683
],
6784
"primaryIdentifier": [
68-
"/properties/Id"
85+
"/properties/ApiId",
86+
"/properties/RouteId"
6987
],
7088
"readOnlyProperties": [
71-
"/properties/Id"
89+
"/properties/RouteId"
90+
],
91+
"writeOnlyProperties": [
92+
"/properties/AuthorizerId",
93+
"/properties/RequestParameters"
7294
],
95+
"tagging": {
96+
"taggable": false
97+
},
98+
"handlers": {
99+
"create": {
100+
"permissions": [
101+
"apigateway:POST"
102+
]
103+
},
104+
"update": {
105+
"permissions": [
106+
"apigateway:PATCH",
107+
"apigateway:GET",
108+
"apigateway:PUT"
109+
]
110+
},
111+
"read": {
112+
"permissions": [
113+
"apigateway:GET"
114+
]
115+
},
116+
"delete": {
117+
"permissions": [
118+
"apigateway:GET",
119+
"apigateway:DELETE"
120+
]
121+
},
122+
"list": {
123+
"permissions": [
124+
"apigateway:GET"
125+
]
126+
}
127+
},
73128
"attributes": {
74-
"Id": {
129+
"RouteId": {
75130
"type": "string",
76131
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
77132
}
Lines changed: 229 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
{
2+
"typeName": "AWS::AppConfig::Extension",
3+
"description": "Resource Type definition for AWS::AppConfig::Extension",
4+
"sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
5+
"properties": {
6+
"Name": {
7+
"description": "Name of the extension.",
8+
"type": "string",
9+
"markdownDescription": "Name of the extension.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement"
10+
},
11+
"Description": {
12+
"description": "Description of the extension.",
13+
"type": "string",
14+
"markdownDescription": "Description of the extension.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
15+
},
16+
"Actions": {
17+
"type": "object",
18+
"patternProperties": {
19+
"^.+$": {
20+
"$ref": "#/definitions/Actions"
21+
}
22+
},
23+
"additionalProperties": false,
24+
"markdownDescription": "\n\n---\n\nRequired: Yes \nUpdate requires: No interruption"
25+
},
26+
"Parameters": {
27+
"type": "object",
28+
"patternProperties": {
29+
"^.+$": {
30+
"$ref": "#/definitions/Parameter"
31+
}
32+
},
33+
"additionalProperties": false,
34+
"markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption"
35+
},
36+
"LatestVersionNumber": {
37+
"type": "integer",
38+
"markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption"
39+
},
40+
"Tags": {
41+
"description": "An array of key-value tags to apply to this resource.",
42+
"type": "array",
43+
"uniqueItems": false,
44+
"insertionOrder": false,
45+
"items": {
46+
"$ref": "#/definitions/Tag"
47+
},
48+
"markdownDescription": "An array of key-value tags to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement"
49+
}
50+
},
51+
"definitions": {
52+
"Tag": {
53+
"description": "A key-value pair to associate with a resource.",
54+
"type": "object",
55+
"properties": {
56+
"Key": {
57+
"type": "string",
58+
"description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
59+
"minLength": 1,
60+
"maxLength": 128,
61+
"markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption"
62+
},
63+
"Value": {
64+
"type": "string",
65+
"description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.",
66+
"minLength": 0,
67+
"maxLength": 256,
68+
"markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption"
69+
}
70+
},
71+
"required": [
72+
"Key",
73+
"Value"
74+
],
75+
"additionalProperties": false,
76+
"markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption"
77+
},
78+
"Actions": {
79+
"description": "A list of actions for an extension to take at a specific action point.",
80+
"uniqueItems": true,
81+
"type": "array",
82+
"insertionOrder": false,
83+
"items": {
84+
"$ref": "#/definitions/Action"
85+
},
86+
"markdownDescription": "A list of actions for an extension to take at a specific action point.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption"
87+
},
88+
"Action": {
89+
"description": "An action for an extension to take at a specific action point.",
90+
"type": "object",
91+
"properties": {
92+
"Name": {
93+
"type": "string",
94+
"description": "The name of the extension action.",
95+
"minLength": 1,
96+
"maxLength": 128,
97+
"markdownDescription": "The name of the extension action.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption"
98+
},
99+
"Description": {
100+
"type": "string",
101+
"description": "The description of the extension Action.",
102+
"minLength": 0,
103+
"maxLength": 1024,
104+
"markdownDescription": "The description of the extension Action.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption"
105+
},
106+
"Uri": {
107+
"type": "string",
108+
"description": "The URI of the extension action.",
109+
"minLength": 1,
110+
"maxLength": 2048,
111+
"markdownDescription": "The URI of the extension action.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption"
112+
},
113+
"RoleArn": {
114+
"type": "string",
115+
"description": "The ARN of the role for invoking the extension action.",
116+
"minLength": 20,
117+
"maxLength": 2048,
118+
"markdownDescription": "The ARN of the role for invoking the extension action.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption"
119+
}
120+
},
121+
"required": [
122+
"Name",
123+
"Uri"
124+
],
125+
"additionalProperties": false,
126+
"markdownDescription": "An action for an extension to take at a specific action point.\n\n---\n\nRequired: No \nUpdate requires: No interruption"
127+
},
128+
"Parameter": {
129+
"description": "A parameter for the extension to send to a specific action.",
130+
"type": "object",
131+
"properties": {
132+
"Description": {
133+
"type": "string",
134+
"description": "The description of the extension Parameter.",
135+
"minLength": 0,
136+
"maxLength": 1024,
137+
"markdownDescription": "The description of the extension Parameter.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption"
138+
},
139+
"Required": {
140+
"type": "boolean",
141+
"markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption"
142+
}
143+
},
144+
"required": [
145+
"Required"
146+
],
147+
"additionalProperties": false,
148+
"markdownDescription": "A parameter for the extension to send to a specific action.\n\n---\n\nRequired: No \nUpdate requires: No interruption"
149+
}
150+
},
151+
"additionalProperties": false,
152+
"required": [
153+
"Name",
154+
"Actions"
155+
],
156+
"createOnlyProperties": [
157+
"/properties/Name",
158+
"/properties/Tags",
159+
"/properties/Tags/*/Key",
160+
"/properties/Tags/*/Value"
161+
],
162+
"readOnlyProperties": [
163+
"/properties/Id",
164+
"/properties/Arn",
165+
"/properties/VersionNumber"
166+
],
167+
"writeOnlyProperties": [
168+
"/properties/LatestVersionNumber",
169+
"/properties/Tags",
170+
"/properties/Tags/*/Key",
171+
"/properties/Tags/*/Value"
172+
],
173+
"primaryIdentifier": [
174+
"/properties/Id"
175+
],
176+
"tagging": {
177+
"taggable": true,
178+
"tagOnCreate": true,
179+
"tagUpdatable": true,
180+
"cloudFormationSystemTags": true,
181+
"tagProperty": "/properties/Tags"
182+
},
183+
"handlers": {
184+
"create": {
185+
"permissions": [
186+
"appconfig:CreateExtension",
187+
"appconfig:TagResource",
188+
"iam:PassRole"
189+
]
190+
},
191+
"read": {
192+
"permissions": [
193+
"appconfig:GetExtension"
194+
]
195+
},
196+
"update": {
197+
"permissions": [
198+
"appconfig:UpdateExtension",
199+
"appconfig:TagResource",
200+
"appconfig:UntagResource"
201+
]
202+
},
203+
"delete": {
204+
"permissions": [
205+
"appconfig:DeleteExtension",
206+
"appconfig:UntagResource"
207+
]
208+
},
209+
"list": {
210+
"permissions": [
211+
"appconfig:ListExtensions"
212+
]
213+
}
214+
},
215+
"attributes": {
216+
"Id": {
217+
"type": "string",
218+
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
219+
},
220+
"Arn": {
221+
"type": "string",
222+
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
223+
},
224+
"VersionNumber": {
225+
"type": "integer",
226+
"markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption"
227+
}
228+
}
229+
}

0 commit comments

Comments
 (0)