Skip to content

Commit b86e8bd

Browse files
authored
fix: only add ECR Public perms in aws partition (#8709)
ECR Public doesn't exist in all partitions, so filter it out when creating clusters elsewhere.
1 parent dd211b5 commit b86e8bd

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

pkg/cfn/builder/auto_mode.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ func AddAutoModeResources(clusterTemplate *gfn.Template, permissionsBoundary api
4242
}
4343
clusterTemplate.Resources[resourceName] = resource
4444
}
45+
for key, condition := range template.Conditions {
46+
clusterTemplate.Conditions[key] = condition
47+
}
4548
for key, output := range template.Outputs {
4649
clusterTemplate.Outputs[key] = output
4750
}

pkg/cfn/builder/roles/auto-mode-node-role.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
AWSTemplateFormatVersion: '2010-09-09'
22
Description: 'Amazon EKS Karpenter NodeRole'
3+
Conditions:
4+
IsAWSPartition: !Equals [!Ref "AWS::Partition", "aws"]
35
Resources:
46
AutoModeNodeRole:
57
Type: AWS::IAM::Role
@@ -18,7 +20,7 @@ Resources:
1820
- sts:AssumeRole
1921
ManagedPolicyArns:
2022
- !Sub "arn:${AWS::Partition}:iam::aws:policy/AmazonEC2ContainerRegistryPullOnly"
21-
- !Sub "arn:${AWS::Partition}:iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly"
23+
- !If [IsAWSPartition, !Sub "arn:${AWS::Partition}:iam::aws:policy/AmazonElasticContainerRegistryPublicReadOnly", !Ref "AWS::NoValue"]
2224
- !Sub "arn:${AWS::Partition}:iam::aws:policy/AmazonEKSWorkerNodeMinimalPolicy"
2325

2426
Outputs:

0 commit comments

Comments
 (0)