diff --git a/pkg/log.go b/pkg/log.go index a98139dc..ce229e10 100644 --- a/pkg/log.go +++ b/pkg/log.go @@ -64,7 +64,8 @@ func ExecLog(req *LogRequest) { func createLogWebsocket(req *LogRequest) (*websocket.Conn, error) { wsURL, err := url.Parse(fmt.Sprintf( - "wss://ws.qovery.com/service/logs?service=%s&cluster=%s&environment=%s&organization=%s&project=%s", + "%s/service/logs?service=%s&cluster=%s&environment=%s&organization=%s&project=%s", + utils.WebsocketUrl(), req.ServiceID, req.ClusterID, req.EnvironmentID, diff --git a/pkg/port-forward.go b/pkg/port-forward.go index c42832bc..48cd6583 100644 --- a/pkg/port-forward.go +++ b/pkg/port-forward.go @@ -60,7 +60,7 @@ func mkWebsocketConn(req *PortForwardRequest) (*WebsocketPortForward, error) { return nil, err } - wsURL, err := url.Parse("wss://ws.qovery.com/shell/portforward") + wsURL, err := url.Parse(fmt.Sprintf("%s/shell/portforward", utils.WebsocketUrl())) if err != nil { return nil, err } diff --git a/pkg/service_list_pods.go b/pkg/service_list_pods.go index a3054198..7f3d4890 100644 --- a/pkg/service_list_pods.go +++ b/pkg/service_list_pods.go @@ -3,6 +3,7 @@ package pkg import ( "encoding/json" "errors" + "fmt" "github.com/appscode/go-querystring/query" "github.com/gorilla/websocket" "github.com/qovery/qovery-cli/utils" @@ -25,7 +26,7 @@ func ExecListPods(req *PortForwardRequest) (*ListPodResponse, error) { return nil, err } - wsURL, err := url.Parse("wss://ws.qovery.com/service/pods") + wsURL, err := url.Parse(fmt.Sprintf("%s/service/pods", utils.WebsocketUrl())) if err != nil { return nil, err } diff --git a/pkg/shell.go b/pkg/shell.go index 0fd04e9c..0fc08d7b 100644 --- a/pkg/shell.go +++ b/pkg/shell.go @@ -2,6 +2,7 @@ package pkg import ( "errors" + "fmt" "github.com/appscode/go-querystring/query" "net/http" "net/url" @@ -80,7 +81,7 @@ func createWebsocketConn(req *ShellRequest) (*websocket.Conn, error) { return nil, err } - wsURL, err := url.Parse("wss://ws.qovery.com/shell/exec") + wsURL, err := url.Parse(fmt.Sprintf("%s/shell/exec", utils.WebsocketUrl())) if err != nil { return nil, err } diff --git a/utils/qovery.go b/utils/qovery.go index 2c5cf279..89ea5fb2 100644 --- a/utils/qovery.go +++ b/utils/qovery.go @@ -44,6 +44,13 @@ type Role struct { const AdminUrl = "https://api-admin.qovery.com" +func WebsocketUrl() string { + if url := os.Getenv("QOVERY_WS_URL"); url != "" { + return url + } + return "wss://ws.qovery.com" +} + func GetQoveryClient(tokenType AccessTokenType, token AccessToken) *qovery.APIClient { conf := qovery.NewConfiguration() conf.UserAgent = "CLI " + Version