Fixed void Azure network config bug.

This commit is contained in:
aznashwan 2015-06-30 02:12:12 +03:00
parent bc06deace2
commit 5ff6598e65
3 changed files with 16 additions and 4 deletions

View File

@ -4,6 +4,7 @@ import (
"fmt" "fmt"
"log" "log"
"github.com/Azure/azure-sdk-for-go/management"
"github.com/Azure/azure-sdk-for-go/management/virtualnetwork" "github.com/Azure/azure-sdk-for-go/management/virtualnetwork"
"github.com/hashicorp/terraform/helper/schema" "github.com/hashicorp/terraform/helper/schema"
) )
@ -46,7 +47,12 @@ func resourceAzureDnsServerCreate(d *schema.ResourceData, meta interface{}) erro
defer azureClient.mutex.Unlock() defer azureClient.mutex.Unlock()
netConf, err := vnetClient.GetVirtualNetworkConfiguration() netConf, err := vnetClient.GetVirtualNetworkConfiguration()
if err != nil { if err != nil {
return fmt.Errorf("Failed to get the current network configuration from Azure: %s", err) if management.IsResourceNotFoundError(err) {
// if no network configuration exists yet; create one now:
netConf = virtualnetwork.NetworkConfiguration{}
} else {
return fmt.Errorf("Failed to get the current network configuration from Azure: %s", err)
}
} }
log.Println("[DEBUG] Adding new DNS server definition to Azure.") log.Println("[DEBUG] Adding new DNS server definition to Azure.")

View File

@ -4,6 +4,7 @@ import (
"fmt" "fmt"
"log" "log"
"github.com/Azure/azure-sdk-for-go/management"
"github.com/Azure/azure-sdk-for-go/management/virtualnetwork" "github.com/Azure/azure-sdk-for-go/management/virtualnetwork"
"github.com/hashicorp/terraform/helper/schema" "github.com/hashicorp/terraform/helper/schema"
) )
@ -54,7 +55,12 @@ func resourceAzureLocalNetworkConnectionCreate(d *schema.ResourceData, meta inte
defer azureClient.mutex.Unlock() defer azureClient.mutex.Unlock()
netConf, err := vnetClient.GetVirtualNetworkConfiguration() netConf, err := vnetClient.GetVirtualNetworkConfiguration()
if err != nil { if err != nil {
return fmt.Errorf("Failed to get the current network configuration from Azure: %s", err) if management.IsResourceNotFoundError(err) {
// if no network config exists yet; create a new one now:
netConf = virtualnetwork.NetworkConfiguration{}
} else {
return fmt.Errorf("Failed to get the current network configuration from Azure: %s", err)
}
} }
// get provided configuration: // get provided configuration:

View File

@ -3,7 +3,6 @@ package azure
import ( import (
"fmt" "fmt"
"log" "log"
"strings"
"github.com/Azure/azure-sdk-for-go/management" "github.com/Azure/azure-sdk-for-go/management"
"github.com/Azure/azure-sdk-for-go/management/virtualnetwork" "github.com/Azure/azure-sdk-for-go/management/virtualnetwork"
@ -88,7 +87,8 @@ func resourceAzureVirtualNetworkCreate(d *schema.ResourceData, meta interface{})
nc, err := vnetClient.GetVirtualNetworkConfiguration() nc, err := vnetClient.GetVirtualNetworkConfiguration()
if err != nil { if err != nil {
if strings.Contains(err.Error(), "ResourceNotFound") { if management.IsResourceNotFoundError(err) {
// if no network config exists yet; create a new one now:
nc = virtualnetwork.NetworkConfiguration{} nc = virtualnetwork.NetworkConfiguration{}
} else { } else {
return fmt.Errorf(virtualNetworkRetrievalError, err) return fmt.Errorf(virtualNetworkRetrievalError, err)