From 09f3747676b971a4dc6d268e5feb0d31ead46caa Mon Sep 17 00:00:00 2001 From: Daniel Spangenberg Date: Thu, 5 Jul 2018 10:04:32 +0200 Subject: [PATCH] azure-terraform: custom vnet resource group (#3323) If you specify custom vnet using `tectonic_azure_external_vnet_id` and this belongs to a different resource group than where massters and workers are located, Kubernetes Services of type LoadBalancer will fail. Support for setting custom resource group for vnet in cloud config was added in Kubernetes 1.6 using `vnetResourceGroup`. This will add the `vnetResourceGroup` to the cloud config if `tectonic_azure_external_vnet_id` is set. Signed-off-by: Daniel Spangenberg --- modules/azure/vnet/outputs.tf | 4 ++++ platforms/azure/main.tf | 1 + 2 files changed, 5 insertions(+) diff --git a/modules/azure/vnet/outputs.tf b/modules/azure/vnet/outputs.tf index 5b9d7aca99..ae2e683947 100644 --- a/modules/azure/vnet/outputs.tf +++ b/modules/azure/vnet/outputs.tf @@ -14,6 +14,10 @@ output "worker_subnet_name" { value = "${var.external_vnet_id == "" ? element(concat(azurerm_subnet.worker_subnet.*.name, list("")), 0) : replace(var.external_vnet_id, var.const_id_to_group_name_regex, "$2")}" } +output "vnet_resource_group" { + value = "${var.external_vnet_id == "" ? "" : replace(var.external_vnet_id, var.const_id_to_group_name_regex, "$1")}" +} + # TODO: Allow user to provide their own network output "etcd_cidr" { value = "${element(concat(azurerm_subnet.master_subnet.*.address_prefix, list("")), 0)}" diff --git a/platforms/azure/main.tf b/platforms/azure/main.tf index 986b1f2382..e326fa82d4 100644 --- a/platforms/azure/main.tf +++ b/platforms/azure/main.tf @@ -96,6 +96,7 @@ data "null_data_source" "cloud_provider" { "subscriptionId" = "${data.azurerm_client_config.current.subscription_id}" "tenantId" = "${data.azurerm_client_config.current.tenant_id}" "vnetName" = "${module.vnet.vnet_id}" + "vnetResourceGroup" = "${module.vnet.vnet_resource_group}" } }