From 983f285373d7c22249e0255b9a2f2bd09ac15c1a Mon Sep 17 00:00:00 2001 From: Dan Sosedoff Date: Thu, 14 Jan 2016 21:14:45 -0600 Subject: [PATCH] Point db to local tunnel if ssh is enabled --- pkg/client/client.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/client/client.go b/pkg/client/client.go index 2857b11..1829376 100644 --- a/pkg/client/client.go +++ b/pkg/client/client.go @@ -2,6 +2,7 @@ package client import ( "fmt" + neturl "net/url" "reflect" "strings" @@ -86,8 +87,14 @@ func NewFromUrl(url string, sshInfo *shared.SSHInfo) (*Client, error) { go tunnel.Start() + uri, err := neturl.Parse(url) + if err != nil { + tunnel.Close() + return nil, err + } + // Override remote postgres port with local proxy port - url = strings.Replace(url, ":5432", fmt.Sprintf(":%v", tunnel.Port), 1) + url = strings.Replace(url, uri.Host, fmt.Sprintf("127.0.0.1:%v", tunnel.Port), 1) } if command.Opts.Debug {