Skip to content

Commit fea0dcb

Browse files
committed
Simpler error message
Signed-off-by: David Gageot <david@gageot.net>
1 parent 77b7734 commit fea0dcb

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

drivers/google/compute_util.go

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,11 @@ import (
1212
"github.com/docker/machine/libmachine/ssh"
1313
raw "google.golang.org/api/compute/v1"
1414

15+
"errors"
16+
1517
"golang.org/x/oauth2"
1618
"golang.org/x/oauth2/google"
19+
"google.golang.org/api/googleapi"
1720
)
1821

1922
// ComputeUtil is used to wrap the raw GCE API code and store common parameters.
@@ -380,7 +383,7 @@ func (c *ComputeUtil) waitForGlobalOp(name string) error {
380383
func (c *ComputeUtil) ip() (string, error) {
381384
instance, err := c.service.Instances.Get(c.project, c.zone, c.instanceName).Do()
382385
if err != nil {
383-
return "", err
386+
return "", unwrapGoogleError(err)
384387
}
385388

386389
nic := instance.NetworkInterfaces[0]
@@ -389,3 +392,11 @@ func (c *ComputeUtil) ip() (string, error) {
389392
}
390393
return nic.AccessConfigs[0].NatIP, nil
391394
}
395+
396+
func unwrapGoogleError(err error) error {
397+
if googleErr, ok := err.(*googleapi.Error); ok {
398+
return errors.New(googleErr.Message)
399+
}
400+
401+
return err
402+
}

0 commit comments

Comments
 (0)