Skip to content

Commit f613087

Browse files
authored
Add in anyOf for properties that are ipv4 and ipv6 (#4122)
* Add in anyOf for properties that are ipv4 and v6
1 parent 0705726 commit f613087

File tree

9 files changed

+84
-3
lines changed

9 files changed

+84
-3
lines changed

scripts/update_schemas_format.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ def _create_cidr_patch(type_name: str, ref: str, resolver: RefResolver, format:
4040
if type_name in [
4141
"AWS::SecurityHub::Insight",
4242
"AWS::EC2::IPAMPool",
43+
"AWS::EC2::PrefixList",
4344
]:
4445
return []
4546

@@ -283,6 +284,36 @@ def _create_patch(value: dict[str, str], ref: str, resolver: RefResolver):
283284
path="/properties/Arn",
284285
),
285286
],
287+
"AWS::EC2::IPAMPool": [
288+
Patch(
289+
values={
290+
"anyOf": [
291+
{
292+
"format": "ipv4-network",
293+
},
294+
{
295+
"format": "ipv6-network",
296+
},
297+
]
298+
},
299+
path="/definitions/Cidr",
300+
),
301+
],
302+
"AWS::EC2::PrefixList": [
303+
Patch(
304+
values={
305+
"anyOf": [
306+
{
307+
"format": "ipv4-network",
308+
},
309+
{
310+
"format": "ipv6-network",
311+
},
312+
]
313+
},
314+
path="/definitions/Entry/properties/Cidr",
315+
),
316+
],
286317
}
287318

288319

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[
2+
{
3+
"op": "add",
4+
"path": "/definitions/AnalysisTemplateArtifacts/properties/RoleArn/format",
5+
"value": "AWS::IAM::Role.Arn"
6+
}
7+
]

src/cfnlint/data/schemas/patches/extensions/all/aws_cleanrooms_membership/format.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
[
2+
{
3+
"op": "add",
4+
"path": "/definitions/MembershipProtectedJobResultConfiguration/properties/RoleArn/format",
5+
"value": "AWS::IAM::Role.Arn"
6+
},
27
{
38
"op": "add",
49
"path": "/definitions/MembershipProtectedQueryResultConfiguration/properties/RoleArn/format",
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
[
2+
{
3+
"op": "add",
4+
"path": "/definitions/Cidr/anyOf",
5+
"value": [
6+
{
7+
"format": "ipv4-network"
8+
},
9+
{
10+
"format": "ipv6-network"
11+
}
12+
]
13+
}
14+
]
Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
11
[
22
{
33
"op": "add",
4-
"path": "/definitions/Entry/properties/Cidr/format",
5-
"value": "ipv4-network"
4+
"path": "/definitions/Entry/properties/Cidr/anyOf",
5+
"value": [
6+
{
7+
"format": "ipv4-network"
8+
},
9+
{
10+
"format": "ipv6-network"
11+
}
12+
]
613
}
714
]

src/cfnlint/data/schemas/providers/us_east_1/aws-cleanrooms-analysistemplate.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@
171171
"$ref": "#/definitions/AnalysisTemplateArtifact"
172172
},
173173
"RoleArn": {
174+
"format": "AWS::IAM::Role.Arn",
174175
"maxLength": 512,
175176
"minLength": 32,
176177
"type": "string"

src/cfnlint/data/schemas/providers/us_east_1/aws-cleanrooms-membership.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@
9696
"$ref": "#/definitions/MembershipProtectedJobOutputConfiguration"
9797
},
9898
"RoleArn": {
99+
"format": "AWS::IAM::Role.Arn",
99100
"maxLength": 512,
100101
"minLength": 32,
101102
"pattern": "arn:aws:iam::[\\w]+:role/[\\w+=./@-]+",

src/cfnlint/data/schemas/providers/us_east_1/aws-ec2-ipampool.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@
1212
],
1313
"definitions": {
1414
"Cidr": {
15+
"anyOf": [
16+
{
17+
"format": "ipv4-network"
18+
},
19+
{
20+
"format": "ipv6-network"
21+
}
22+
],
1523
"type": "string"
1624
},
1725
"ProvisionedCidr": {

src/cfnlint/data/schemas/providers/us_east_1/aws-ec2-prefixlist.json

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,14 @@
55
"additionalProperties": false,
66
"properties": {
77
"Cidr": {
8-
"format": "ipv4-network",
8+
"anyOf": [
9+
{
10+
"format": "ipv4-network"
11+
},
12+
{
13+
"format": "ipv6-network"
14+
}
15+
],
916
"maxLength": 46,
1017
"minLength": 1,
1118
"type": "string"

0 commit comments

Comments
 (0)