Skip to content

Commit 22b37ad

Browse files
authored
allow eks_public_access_cidrs to be optionally set in nebari-config.yaml (#2963)
2 parents d92b1c1 + 7296c03 commit 22b37ad

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

src/_nebari/stages/infrastructure/__init__.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,7 @@ class AWSInputVars(schema.Base):
170170
Literal["private", "public", "public_and_private"]
171171
] = "public"
172172
eks_kms_arn: Optional[str] = None
173+
eks_public_access_cidrs: Optional[List[str]] = ["0.0.0.0/0"]
173174
node_groups: List[AWSNodeGroupInputVars]
174175
availability_zones: List[str]
175176
vpc_cidr_block: str
@@ -327,7 +328,7 @@ def _check_input(cls, data: Any) -> Any:
327328
):
328329
raise ValueError(
329330
f"\nInvalid `kubernetes-version` provided: {data['kubernetes_version']}.\nPlease select from one of the following supported Kubernetes versions: {available_kubernetes_versions} or omit flag to use latest Kubernetes version available."
330-
)
331+
) # noqa
331332

332333
# check if instances are valid
333334
available_instances = google_cloud.instances(data["region"])
@@ -457,6 +458,7 @@ class AmazonWebServicesProvider(schema.Base):
457458
eks_endpoint_access: Optional[
458459
Literal["private", "public", "public_and_private"]
459460
] = "public"
461+
eks_public_access_cidrs: Optional[List[str]] = ["0.0.0.0/0"]
460462
eks_kms_arn: Optional[str] = None
461463
existing_subnet_ids: Optional[List[str]] = None
462464
existing_security_group_id: Optional[str] = None
@@ -526,7 +528,7 @@ def _check_input(cls, data: Any) -> Any:
526528
or available_kms_keys[key_id[0]].Arn != data["eks_kms_arn"]
527529
):
528530
raise ValueError(
529-
f"Amazon Web Services KMS Key with ARN {data['eks_kms_arn']} not one of available/enabled keys={[v.Arn for v in available_kms_keys.values() if v.KeyManager=='CUSTOMER' and v.KeySpec=='SYMMETRIC_DEFAULT']}"
531+
f"Amazon Web Services KMS Key with ARN {data['eks_kms_arn']} not one of available/enabled keys={ [v.Arn for v in available_kms_keys.values() if v.KeyManager == 'CUSTOMER' and v.KeySpec == 'SYMMETRIC_DEFAULT']}"
530532
)
531533
key_id = key_id[0]
532534
# Raise error if key is not a customer managed key
@@ -835,6 +837,7 @@ def input_vars(self, stage_outputs: Dict[str, Dict[str, Any]]):
835837
name=self.config.escaped_project_name,
836838
environment=self.config.namespace,
837839
eks_endpoint_access=self.config.amazon_web_services.eks_endpoint_access,
840+
eks_public_access_cidrs=self.config.amazon_web_services.eks_public_access_cidrs,
838841
eks_kms_arn=self.config.amazon_web_services.eks_kms_arn,
839842
existing_subnet_ids=self.config.amazon_web_services.existing_subnet_ids,
840843
existing_security_group_id=self.config.amazon_web_services.existing_security_group_id,

src/_nebari/stages/infrastructure/template/aws/modules/kubernetes/main.tf

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,13 @@ resource "aws_eks_cluster" "main" {
88
vpc_config {
99
security_group_ids = var.cluster_security_groups
1010
subnet_ids = var.cluster_subnets
11+
# ignored because this is set through the eks_endpoint_access variable
1112
#trivy:ignore:AVD-AWS-0040
1213
endpoint_public_access = var.endpoint_public_access
1314
endpoint_private_access = var.endpoint_private_access
14-
public_access_cidrs = var.public_access_cidrs
15+
# ignored because this is set through the eks_public_access_cidrs variable
16+
#trivy:ignore:AVD-AWS-0041
17+
public_access_cidrs = var.public_access_cidrs
1518
}
1619

1720
# Only set encryption_config if eks_kms_arn is not null

0 commit comments

Comments
 (0)