From 3cd43aca62f7a3f3bdb2809900872e3bafe83ef1 Mon Sep 17 00:00:00 2001 From: Magido Mascate Date: Mon, 11 Mar 2024 15:47:11 +0000 Subject: [PATCH] Cloudnat E-2-E Tests (#2149) * Create E2E tests for Cloud NAT --------- Co-authored-by: Magido Mascate --- modules/net-cloudnat/README.md | 25 ++++++++++--------- .../modules/net_cloudnat/examples/rules.yaml | 22 ++++++++-------- 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/modules/net-cloudnat/README.md b/modules/net-cloudnat/README.md index 9e18ff644..64ccdcc07 100644 --- a/modules/net-cloudnat/README.md +++ b/modules/net-cloudnat/README.md @@ -14,12 +14,12 @@ Simple Cloud NAT management, with optional router creation. ```hcl module "nat" { source = "./fabric/modules/net-cloudnat" - project_id = "my-project" - region = "europe-west1" + project_id = var.project_id + region = var.region name = "default" - router_network = "my-vpc" + router_network = var.vpc.self_link } -# tftest modules=1 resources=2 +# tftest modules=1 resources=2 e2e ``` ## Reserved IPs and custom rules @@ -27,20 +27,20 @@ module "nat" { ```hcl module "addresses" { source = "./fabric/modules/net-address" - project_id = "my-project" + project_id = var.project_id external_addresses = { - a1 = { region = "europe-west1" } - a2 = { region = "europe-west1" } - a3 = { region = "europe-west1" } + a1 = { region = var.region } + a2 = { region = var.region } + a3 = { region = var.region } } } module "nat" { source = "./fabric/modules/net-cloudnat" - project_id = "my-project" - region = "europe-west1" + project_id = var.project_id + region = var.region name = "nat" - router_network = "my-vpc" + router_network = var.vpc.self_link addresses = [ module.addresses.external_addresses["a1"].self_link, module.addresses.external_addresses["a3"].self_link @@ -60,8 +60,9 @@ module "nat" { } ] } -# tftest modules=2 resources=5 inventory=rules.yaml +# tftest modules=2 resources=5 inventory=rules.yaml e2e ``` + ## Variables diff --git a/tests/modules/net_cloudnat/examples/rules.yaml b/tests/modules/net_cloudnat/examples/rules.yaml index 62efd1b35..19221075c 100644 --- a/tests/modules/net_cloudnat/examples/rules.yaml +++ b/tests/modules/net_cloudnat/examples/rules.yaml @@ -16,31 +16,31 @@ values: module.addresses.google_compute_address.external["a1"]: address_type: EXTERNAL name: a1 - project: my-project - region: europe-west1 + project: project-id + region: europe-west8 module.addresses.google_compute_address.external["a2"]: address_type: EXTERNAL name: a2 - project: my-project - region: europe-west1 + project: project-id + region: europe-west8 module.addresses.google_compute_address.external["a3"]: address_type: EXTERNAL name: a3 - project: my-project - region: europe-west1 + project: project-id + region: europe-west8 module.nat.google_compute_router.router[0]: name: nat-nat - network: my-vpc - project: my-project - region: europe-west1 + network: "projects/xxx/global/networks/aaa" + project: project-id + region: europe-west8 module.nat.google_compute_router_nat.nat: enable_dynamic_port_allocation: false enable_endpoint_independent_mapping: false icmp_idle_timeout_sec: 30 name: nat nat_ip_allocate_option: MANUAL_ONLY - project: my-project - region: europe-west1 + project: project-id + region: europe-west8 router: nat-nat rules: - action: