From 0019b22be56e5eea7b2771dfe40898e3ee21bf6a Mon Sep 17 00:00:00 2001 From: Anthony Lapenna Date: Thu, 27 Aug 2020 00:26:21 +1200 Subject: [PATCH] fix(core/home): fix an issue when connecting to an Edge kubernetes endpoint (#4274) --- app/kubernetes/__module.js | 2 +- app/kubernetes/rest/health.js | 11 ++++------- app/kubernetes/services/healthService.js | 8 ++++---- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/app/kubernetes/__module.js b/app/kubernetes/__module.js index 0d47611b1..a56bbb528 100644 --- a/app/kubernetes/__module.js +++ b/app/kubernetes/__module.js @@ -18,7 +18,7 @@ angular.module('portainer.kubernetes', ['portainer.app']).config([ try { if (endpoint.Type === 7) { try { - await KubernetesHealthService.ping(); + await KubernetesHealthService.ping(endpoint.Id); endpoint.Status = 1; } catch (e) { endpoint.Status = 2; diff --git a/app/kubernetes/rest/health.js b/app/kubernetes/rest/health.js index 012798057..cbfe3be73 100644 --- a/app/kubernetes/rest/health.js +++ b/app/kubernetes/rest/health.js @@ -1,16 +1,13 @@ angular.module('portainer.kubernetes').factory('KubernetesHealth', [ '$resource', 'API_ENDPOINT_ENDPOINTS', - 'EndpointProvider', - function KubernetesHealthFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider) { + function KubernetesHealthFactory($resource, API_ENDPOINT_ENDPOINTS) { 'use strict'; return $resource( - API_ENDPOINT_ENDPOINTS + '/:endpointId/kubernetes/healthz', + API_ENDPOINT_ENDPOINTS + '/:id/kubernetes/healthz', + {}, { - endpointId: EndpointProvider.endpointID, - }, - { - ping: { method: 'GET', timeout: 15000 }, + ping: { method: 'GET', timeout: 15000, params: { id: 'id' } }, } ); }, diff --git a/app/kubernetes/services/healthService.js b/app/kubernetes/services/healthService.js index 977ffae56..49db16c16 100644 --- a/app/kubernetes/services/healthService.js +++ b/app/kubernetes/services/healthService.js @@ -13,16 +13,16 @@ class KubernetesHealthService { /** * PING */ - async pingAsync() { + async pingAsync(endpointID) { try { - return await this.KubernetesHealth.ping().$promise; + return await this.KubernetesHealth.ping({ id: endpointID }).$promise; } catch (err) { throw new PortainerError('Unable to retrieve environment health', err); } } - ping() { - return this.$async(this.pingAsync); + ping(endpointID) { + return this.$async(this.pingAsync, endpointID); } }