diff --git a/app/agent/rest/host.js b/app/agent/rest/host.js new file mode 100644 index 000000000..e2f002f21 --- /dev/null +++ b/app/agent/rest/host.js @@ -0,0 +1,15 @@ +angular.module('portainer.agent').factory('Host', [ + '$resource', 'API_ENDPOINT_ENDPOINTS', 'EndpointProvider', + function AgentFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider) { + 'use strict'; + return $resource( + API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/host/:action', + { + endpointId: EndpointProvider.endpointID + }, + { + info: { method: 'GET', isArray: false, params: { action: 'info' } } + } + ); + } +]); diff --git a/app/agent/services/agentService.js b/app/agent/services/agentService.js index a1eb96681..7143e1e0f 100644 --- a/app/agent/services/agentService.js +++ b/app/agent/services/agentService.js @@ -1,20 +1,15 @@ angular.module('portainer.agent').factory('AgentService', [ - '$q', 'Agent', - function AgentServiceFactory($q, Agent) { + '$q', 'Agent','HttpRequestHelper', 'Host', + function AgentServiceFactory($q, Agent, HttpRequestHelper, Host) { 'use strict'; var service = {}; service.agents = agents; service.hostInfo = hostInfo; - function hostInfo() { - return $q.when({ - PhysicalDeviceVendor: 'hello', - DeviceVersion: '1.9', - DeviceSerialNumber: '144f', - InstalledPCIDevices: ['usb', 'printer'], - PhysicalDisk: 'none' - }); + function hostInfo(nodeName) { + HttpRequestHelper.setPortainerAgentTargetHeader(nodeName); + return Host.info().$promise; } function agents() { diff --git a/app/docker/views/nodes/node-details/node-details-view-controller.js b/app/docker/views/nodes/node-details/node-details-view-controller.js index c20bb8947..8810ce8a7 100644 --- a/app/docker/views/nodes/node-details/node-details-view-controller.js +++ b/app/docker/views/nodes/node-details/node-details-view-controller.js @@ -23,8 +23,7 @@ angular.module('portainer.docker').controller('NodeDetailsViewController', [ ctrl.engineDetails = buildEngineDetails(node); ctrl.nodeDetails = buildNodeDetails(node); if (ctrl.state.isAgent) { - AgentService.hostInfo(nodeId).then(function onHostInfoLoad(agentHostInfo) { - console.log(agentHostInfo); + AgentService.hostInfo(node.Hostname).then(function onHostInfoLoad(agentHostInfo) { enhanceHostDetails(ctrl.hostDetails, agentHostInfo); }); }