From 9c095d66e1a3b5a2d4a6914536f6a460374ca3d8 Mon Sep 17 00:00:00 2001 From: Steven Eschinger Date: Mon, 18 Jul 2016 05:20:18 -0400 Subject: [PATCH] azurerm: fix vault_certificates in vm/scale_set (#7681) When setting the certificate_url and certificate_store values in os_profile_secrets / vault_certificates for a Windows VM in AzureRM, I was getting the following error: ``` [DEBUG] Error setting Virtual Machine Storage OS Profile Secrets: &errors.errorString{s:"Invalid address to set: []string{\"os_profile_secrets\", \"0\", \"vault_certificates\"}"} ``` This seems to resolve the issue. --- builtin/providers/azurerm/resource_arm_virtual_machine.go | 4 ++-- .../azurerm/resource_arm_virtual_machine_scale_set.go | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/builtin/providers/azurerm/resource_arm_virtual_machine.go b/builtin/providers/azurerm/resource_arm_virtual_machine.go index 64d9ac83a3..e2b26584d5 100644 --- a/builtin/providers/azurerm/resource_arm_virtual_machine.go +++ b/builtin/providers/azurerm/resource_arm_virtual_machine.go @@ -339,7 +339,7 @@ func resourceArmVirtualMachine() *schema.Resource { }, "vault_certificates": { - Type: schema.TypeSet, + Type: schema.TypeList, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ @@ -908,7 +908,7 @@ func expandAzureRmVirtualMachineOsProfileSecrets(d *schema.ResourceData) *[]comp } if v := config["vault_certificates"]; v != nil { - certsConfig := v.(*schema.Set).List() + certsConfig := v.([]interface{}) certs := make([]compute.VaultCertificate, 0, len(certsConfig)) for _, certConfig := range certsConfig { config := certConfig.(map[string]interface{}) diff --git a/builtin/providers/azurerm/resource_arm_virtual_machine_scale_set.go b/builtin/providers/azurerm/resource_arm_virtual_machine_scale_set.go index abf87fb664..d8de1226a6 100644 --- a/builtin/providers/azurerm/resource_arm_virtual_machine_scale_set.go +++ b/builtin/providers/azurerm/resource_arm_virtual_machine_scale_set.go @@ -111,7 +111,7 @@ func resourceArmVirtualMachineScaleSet() *schema.Resource { }, "vault_certificates": &schema.Schema{ - Type: schema.TypeSet, + Type: schema.TypeList, Optional: true, Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ @@ -1063,7 +1063,7 @@ func expandAzureRmVirtualMachineScaleSetOsProfileSecrets(d *schema.ResourceData) } if v := config["vault_certificates"]; v != nil { - certsConfig := v.(*schema.Set).List() + certsConfig := v.([]interface{}) certs := make([]compute.VaultCertificate, 0, len(certsConfig)) for _, certConfig := range certsConfig { config := certConfig.(map[string]interface{})