From d300a089150c24fee9c60bf35b8d97e013bf4939 Mon Sep 17 00:00:00 2001 From: Adam Reese Date: Tue, 21 Jun 2016 16:01:00 -0700 Subject: [PATCH] fix(tunnel): display friendly error on connect issues Fixes: #686 --- pkg/kube/tunnel.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkg/kube/tunnel.go b/pkg/kube/tunnel.go index 747a7efcd..f9636f015 100644 --- a/pkg/kube/tunnel.go +++ b/pkg/kube/tunnel.go @@ -66,16 +66,17 @@ func (c *Client) ForwardPort(namespace, podName string, remote int) (*Tunnel, er return nil, err } + errChan := make(chan error) go func() { - if err := pf.ForwardPorts(); err != nil { - fmt.Printf("Error forwarding ports: %v\n", err) - } + errChan <- pf.ForwardPorts() }() - // wait for listeners to start - <-pf.Ready - - return t, nil + select { + case err = <-errChan: + return t, fmt.Errorf("Error forwarding ports: %v\n", err) + case <-pf.Ready: + return t, nil + } } func getAvailablePort() (int, error) {