Switch the order of gcp buildNetworks func to be more go-like

The current implementation returns error as the first parameter, 
but it is usually the last parameter.
This commit is contained in:
Seth Vargo 2016-04-10 12:32:19 -04:00
parent 418f854e83
commit 63bd4b8dd1

View File

@ -337,7 +337,7 @@ func buildDisks(d *schema.ResourceData, meta interface{}) ([]*compute.AttachedDi
return disks, nil return disks, nil
} }
func buildNetworks(d *schema.ResourceData, meta interface{}) (error, []*compute.NetworkInterface) { func buildNetworks(d *schema.ResourceData, meta interface{}) ([]*compute.NetworkInterface, error) {
// Build up the list of networks // Build up the list of networks
config := meta.(*Config) config := meta.(*Config)
@ -355,20 +355,19 @@ func buildNetworks(d *schema.ResourceData, meta interface{}) (error, []*compute.
} }
if networkName == "" && subnetworkName == "" { if networkName == "" && subnetworkName == "" {
return fmt.Errorf("network or subnetwork must be provided"), nil return nil, fmt.Errorf("network or subnetwork must be provided")
} }
if networkName != "" && subnetworkName != "" { if networkName != "" && subnetworkName != "" {
return fmt.Errorf("network or subnetwork must not both be provided"), nil return nil, fmt.Errorf("network or subnetwork must not both be provided")
} }
var networkLink, subnetworkLink string var networkLink, subnetworkLink string
if networkName != "" { if networkName != "" {
network, err := config.clientCompute.Networks.Get( network, err := config.clientCompute.Networks.Get(
config.Project, networkName).Do() project, networkName).Do()
if err != nil { if err != nil {
return fmt.Errorf( return nil, fmt.Errorf("Error referencing network '%s': %s",
"Error referencing network '%s': %s", networkName, err)
networkName, err), nil
} }
networkLink = network.SelfLink networkLink = network.SelfLink
} else { } else {
@ -378,11 +377,11 @@ func buildNetworks(d *schema.ResourceData, meta interface{}) (error, []*compute.
region = config.Region region = config.Region
} }
subnetwork, err := config.clientCompute.Subnetworks.Get( subnetwork, err := config.clientCompute.Subnetworks.Get(
config.Project, region, subnetworkName).Do() project, region, subnetworkName).Do()
if err != nil { if err != nil {
return fmt.Errorf( return nil, fmt.Errorf(
"Error referencing subnetwork '%s' in region '%s': %s", "Error referencing subnetwork '%s' in region '%s': %s",
subnetworkName, region, err), nil subnetworkName, region, err)
} }
subnetworkLink = subnetwork.SelfLink subnetworkLink = subnetwork.SelfLink
} }
@ -404,7 +403,7 @@ func buildNetworks(d *schema.ResourceData, meta interface{}) (error, []*compute.
networkInterfaces = append(networkInterfaces, &iface) networkInterfaces = append(networkInterfaces, &iface)
} }
return nil, networkInterfaces return networkInterfaces, nil
} }
func resourceComputeInstanceTemplateCreate(d *schema.ResourceData, meta interface{}) error { func resourceComputeInstanceTemplateCreate(d *schema.ResourceData, meta interface{}) error {
@ -425,7 +424,7 @@ func resourceComputeInstanceTemplateCreate(d *schema.ResourceData, meta interfac
return err return err
} }
instanceProperties.Metadata = metadata instanceProperties.Metadata = metadata
err, networks := buildNetworks(d, meta) networks, err := buildNetworks(d, meta)
if err != nil { if err != nil {
return err return err
} }