Skip to content

Commit fcb8bb5

Browse files
committed
templates/aws-stack.yml: Organise ArmInstances into groups.
To get around Cloudformation's `!Or` 10 parameter limit.
1 parent 444b520 commit fcb8bb5

File tree

1 file changed

+15
-8
lines changed

1 file changed

+15
-8
lines changed

templates/aws-stack.yml

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -580,17 +580,24 @@ Conditions:
580580
UseLinuxAgents:
581581
!Equals [ !Ref InstanceOperatingSystem, "linux" ]
582582

583+
# Unfortunately, Cloudformation's !Or intrinsic function only accepts
584+
# between 2 and 10 arguments. To get around this, we're grouping the
585+
# instance families in sub-conditionals. At least this doesn't force us
586+
# into using a Custom Resource.
583587
UsingArmInstances:
584588
!Or
585589
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "a1" ]
586-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c6g" ]
587-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c6gd" ]
588-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c6gn" ]
589-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c7g" ]
590-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "m6g" ]
591-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "m6gd" ]
592-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "r6g" ]
593-
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "r6gd" ]
590+
- !Or
591+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c6g" ]
592+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c6gd" ]
593+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c6gn" ]
594+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "c7g" ]
595+
- !Or
596+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "m6g" ]
597+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "m6gd" ]
598+
- !Or
599+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "r6g" ]
600+
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "r6gd" ]
594601
- !Equals [ !Select [ 0, !Split [ ".", !Ref InstanceType ] ], "t4g" ]
595602

596603
Mappings:

0 commit comments

Comments
 (0)