From 6a4a353b92310dfcf5b9f04f886dcf3bd5d39447 Mon Sep 17 00:00:00 2001 From: Matt Hook Date: Thu, 11 Aug 2022 09:27:35 +1200 Subject: [PATCH] feat(environment): update wording when editing agent environment [EE-3081] (#7445) * change wording when editing agent environment --- api/http/handler/endpoints/endpoint_create.go | 8 +------- api/http/handler/endpoints/endpoint_update.go | 7 ++++++- api/http/handler/endpoints/utils.go | 12 ++++++++++++ app/portainer/views/endpoints/edit/endpoint.html | 3 ++- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/api/http/handler/endpoints/endpoint_create.go b/api/http/handler/endpoints/endpoint_create.go index a97c3c79d..7b6d58ecf 100644 --- a/api/http/handler/endpoints/endpoint_create.go +++ b/api/http/handler/endpoints/endpoint_create.go @@ -259,13 +259,7 @@ func (handler *Handler) createEndpoint(payload *endpointCreatePayload) (*portain endpointType := portainer.DockerEnvironment if payload.EndpointCreationType == agentEnvironment { - // Case insensitive strip http or https scheme if URL entered - index := strings.Index(payload.URL, "://") - if index >= 0 { - payload.URL = payload.URL[index+3:] - } - - payload.URL = "tcp://" + payload.URL + payload.URL = "tcp://" + normalizeAgentAddress(payload.URL) agentPlatform, err := handler.pingAndCheckPlatform(payload) if err != nil { diff --git a/api/http/handler/endpoints/endpoint_update.go b/api/http/handler/endpoints/endpoint_update.go index 2a52f6f35..7e9c71fee 100644 --- a/api/http/handler/endpoints/endpoint_update.go +++ b/api/http/handler/endpoints/endpoint_update.go @@ -105,7 +105,12 @@ func (handler *Handler) endpointUpdate(w http.ResponseWriter, r *http.Request) * } if payload.URL != nil { - endpoint.URL = *payload.URL + if endpoint.Type == portainer.AgentOnDockerEnvironment || + endpoint.Type == portainer.AgentOnKubernetesEnvironment { + endpoint.URL = normalizeAgentAddress(*payload.URL) + } else { + endpoint.URL = *payload.URL + } } if payload.PublicURL != nil { diff --git a/api/http/handler/endpoints/utils.go b/api/http/handler/endpoints/utils.go index a00f36358..e991fb8f7 100644 --- a/api/http/handler/endpoints/utils.go +++ b/api/http/handler/endpoints/utils.go @@ -1,6 +1,18 @@ package endpoints +import "strings" + func BoolAddr(b bool) *bool { boolVar := b return &boolVar } + +func normalizeAgentAddress(url string) string { + // Case insensitive strip http or https scheme if URL entered + index := strings.Index(url, "://") + if index >= 0 { + return url[index+3:] + } + + return url +} diff --git a/app/portainer/views/endpoints/edit/endpoint.html b/app/portainer/views/endpoints/edit/endpoint.html index f1e348288..ed3dc7b11 100644 --- a/app/portainer/views/endpoints/edit/endpoint.html +++ b/app/portainer/views/endpoints/edit/endpoint.html @@ -107,7 +107,8 @@