From ae2e4dc3ad12d995c60dac8947b3c7e5f5c96d04 Mon Sep 17 00:00:00 2001 From: Ludovico Magnocavallo Date: Fri, 12 Jun 2020 12:07:28 +0200 Subject: [PATCH] interpolate vpc name in routes --- .gitignore | 1 + CHANGELOG.md | 2 ++ modules/net-vpc/main.tf | 10 +++++----- tests/modules/net_vpc/test_plan.py | 2 +- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 24b82fc31..150023ac4 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ backend.tf backend-config.hcl credentials.json key.json +terraform-ls.tf diff --git a/CHANGELOG.md b/CHANGELOG.md index 35908468b..14b376234 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +- **incompatible change** routes in the `net-vpc` module now interpolate the VPC name to ensure uniqueness, upgrading from a previous version will drop and recreate routes + ## [2.0.0] - 2020-06-11 - new `data-solutions` section and `cmek-via-centralized-kms` example diff --git a/modules/net-vpc/main.tf b/modules/net-vpc/main.tf index 87d68df37..3c21f467d 100644 --- a/modules/net-vpc/main.tf +++ b/modules/net-vpc/main.tf @@ -154,7 +154,7 @@ resource "google_compute_route" "gateway" { for_each = local.routes_gateway project = var.project_id network = google_compute_network.network.name - name = each.key + name = "${var.name}-${each.key}" description = "Terraform-managed." dest_range = each.value.dest_range priority = each.value.priority @@ -166,7 +166,7 @@ resource "google_compute_route" "ilb" { for_each = local.routes_ilb project = var.project_id network = google_compute_network.network.name - name = each.key + name = "${var.name}-${each.key}" description = "Terraform-managed." dest_range = each.value.dest_range priority = each.value.priority @@ -178,7 +178,7 @@ resource "google_compute_route" "instance" { for_each = local.routes_instance project = var.project_id network = google_compute_network.network.name - name = each.key + name = "${var.name}-${each.key}" description = "Terraform-managed." dest_range = each.value.dest_range priority = each.value.priority @@ -192,7 +192,7 @@ resource "google_compute_route" "ip" { for_each = local.routes_ip project = var.project_id network = google_compute_network.network.name - name = each.key + name = "${var.name}-${each.key}" description = "Terraform-managed." dest_range = each.value.dest_range priority = each.value.priority @@ -204,7 +204,7 @@ resource "google_compute_route" "vpn_tunnel" { for_each = local.routes_vpn_tunnel project = var.project_id network = google_compute_network.network.name - name = each.key + name = "${var.name}-${each.key}" description = "Terraform-managed." dest_range = each.value.dest_range priority = each.value.priority diff --git a/tests/modules/net_vpc/test_plan.py b/tests/modules/net_vpc/test_plan.py index fc2852caa..23607ca74 100644 --- a/tests/modules/net_vpc/test_plan.py +++ b/tests/modules/net_vpc/test_plan.py @@ -86,5 +86,5 @@ def test_vpc_routes(plan_runner): _, resources = plan_runner(FIXTURES_DIR, routes=_var_routes) assert len(resources) == 3 resource = [r for r in resources if r['values'] - ['name'] == 'next-hop-test'][0] + ['name'] == 'my-vpc-next-hop-test'][0] assert resource['values']['next_hop_%s' % next_hop_type]