From a8af9621cd5be96dc802710078bae90400f6792a Mon Sep 17 00:00:00 2001 From: danielhanrahan Date: Mon, 30 Aug 2021 17:35:18 +0100 Subject: Make gui-pdp-monitoring work in Docker image Serve PDP Monitoring HTML using nginx in Docker image Don't serve HTML content from PdpMonitoringServer Remove unused dependencies in gui-pdp-monitoring Add proxy setting for local dev testing with npm start Issue-ID: POLICY-3603 Signed-off-by: danielhanrahan Change-Id: I9a4c2b250a1f0460892a367a3b5bbb59e0e92411 --- gui-pdp-monitoring/pom.xml | 34 ++++++---------------- gui-pdp-monitoring/src/main/assembly/frontend.xml | 32 ++++++++++++++++++++ gui-pdp-monitoring/src/main/assembly/resources.xml | 32 -------------------- .../gui/pdp/monitoring/PdpMonitoringMain.java | 2 +- .../gui/pdp/monitoring/PdpMonitoringServer.java | 19 ++---------- .../monitoring/PdpMonitoringServerParameters.java | 7 +---- .../src/webapp/js/MonitoringConfig.js | 5 ++-- gui-pdp-monitoring/src/webapp/js/MonitoringMain.js | 8 ++--- gui-pdp-monitoring/src/webapp/webpack.config.js | 5 +++- 9 files changed, 55 insertions(+), 89 deletions(-) create mode 100644 gui-pdp-monitoring/src/main/assembly/frontend.xml delete mode 100644 gui-pdp-monitoring/src/main/assembly/resources.xml (limited to 'gui-pdp-monitoring') diff --git a/gui-pdp-monitoring/pom.xml b/gui-pdp-monitoring/pom.xml index 4fe4491..4f9b72c 100644 --- a/gui-pdp-monitoring/pom.xml +++ b/gui-pdp-monitoring/pom.xml @@ -1,6 +1,6 @@ + + frontend + + tar.gz + + false + + + ${webapp.dir}/dist + pdp-monitoring + + + diff --git a/gui-pdp-monitoring/src/main/assembly/resources.xml b/gui-pdp-monitoring/src/main/assembly/resources.xml deleted file mode 100644 index b204cab..0000000 --- a/gui-pdp-monitoring/src/main/assembly/resources.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - resources - - zip - - false - - - target/classes/webapp - monitoring - - - \ No newline at end of file diff --git a/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringMain.java b/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringMain.java index 398cbc4..2c0bb3a 100644 --- a/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringMain.java +++ b/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringMain.java @@ -152,7 +152,7 @@ public class PdpMonitoringMain { public void shutdown() { if (pdpMonitoringServer != null) { LOGGER.info(PDP_MONITORING_PREFIX + "{}) shutting down", this); - pdpMonitoringServer.shutdown(parameters.getPort(), parameters.getDefaultRestPort()); + pdpMonitoringServer.shutdown(parameters.getPort()); } shutdownLatch.countDown(); state = ServicesState.STOPPED; diff --git a/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServer.java b/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServer.java index 78e048d..bfb273d 100644 --- a/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServer.java +++ b/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServer.java @@ -22,7 +22,6 @@ package org.onap.policy.gui.pdp.monitoring; import lombok.NonNull; -import org.eclipse.jetty.servlets.CrossOriginFilter; import org.onap.policy.common.endpoints.http.server.HttpServletServer; import org.onap.policy.common.endpoints.http.server.HttpServletServerFactoryInstance; import org.slf4j.Logger; @@ -41,9 +40,6 @@ public class PdpMonitoringServer { // The HTTP server exposing JAX-RS resources defined in this application. private HttpServletServer jerseyServer; - // The HTTP server exposing static resources defined in this application. - private HttpServletServer staticResourceServer; - /** * Starts the HTTP server for the Pdp statistics monitoring on the default base URI and with the * default REST packages. @@ -58,34 +54,23 @@ public class PdpMonitoringServer { * @param parameters The Pdp parameters to use to start the server. */ public PdpMonitoringServer(@NonNull final PdpMonitoringServerParameters parameters) { - LOGGER.debug("Pdp Monitoring starting . . ."); jerseyServer = HttpServletServerFactoryInstance.getServerFactory().build("PDP Monitoring Rest Server", false, - parameters.getServerHost(), parameters.getDefaultRestPort(), parameters.getContextPath(), false, true); + parameters.getServerHost(), parameters.getPort(), parameters.getContextPath(), false, true); jerseyServer.addServletPackage(parameters.getDefaultRestPath(), parameters.getRestPackage()); - jerseyServer.addFilterClass(parameters.getDefaultRestPath(), CrossOriginFilter.class.getName()); jerseyServer.start(); - staticResourceServer = HttpServletServerFactoryInstance.getServerFactory().buildStaticResourceServer( - "PDP Monitoring Html Server", false, parameters.getServerHost(), parameters.getPort(), - parameters.getContextPath(), true); - staticResourceServer.addServletResource(null, - PdpMonitoringServer.class.getClassLoader().getResource("webapp").toExternalForm()); - staticResourceServer.start(); - LOGGER.debug("Pdp Monitoring started"); } /** * Shut down the web server. * - * @param htmlPort port number of static resource server * @param restPort port number of jersey server */ - public void shutdown(int htmlPort, int restPort) { + public void shutdown(int restPort) { LOGGER.debug("Pdp Monitoring . . ."); - HttpServletServerFactoryInstance.getServerFactory().destroy(htmlPort); HttpServletServerFactoryInstance.getServerFactory().destroy(restPort); LOGGER.debug("Pdp Monitoring shut down"); } diff --git a/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServerParameters.java b/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServerParameters.java index a76fa02..78fb479 100644 --- a/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServerParameters.java +++ b/gui-pdp-monitoring/src/main/java/org/onap/policy/gui/pdp/monitoring/PdpMonitoringServerParameters.java @@ -38,7 +38,6 @@ import org.onap.policy.common.parameters.annotations.Min; @Getter @Setter public class PdpMonitoringServerParameters { - public static final int DEFAULT_PORT = 18999; public static final int INFINITY_TIME_TO_LIVE = -1; // Base URI the HTTP server will listen on @@ -55,7 +54,7 @@ public class PdpMonitoringServerParameters { @Min(1024) @Max(65534) - private int port = DEFAULT_PORT; + private int port = DEFAULT_REST_PORT; @Min(-1) private long timeToLive = INFINITY_TIME_TO_LIVE; @@ -88,8 +87,4 @@ public class PdpMonitoringServerParameters { public String getDefaultRestPath() { return "/" + DEFAULT_REST_PATH; } - - public int getDefaultRestPort() { - return DEFAULT_REST_PORT; - } } diff --git a/gui-pdp-monitoring/src/webapp/js/MonitoringConfig.js b/gui-pdp-monitoring/src/webapp/js/MonitoringConfig.js index f929282..6e5200e 100644 --- a/gui-pdp-monitoring/src/webapp/js/MonitoringConfig.js +++ b/gui-pdp-monitoring/src/webapp/js/MonitoringConfig.js @@ -1,6 +1,6 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2020 Nordix Foundation. + * Copyright (C) 2020-2021 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,7 +21,6 @@ // Configuration used for page layout and charts const config = { refresh: 5000, - restPort: 17999, engineService: { parent: "engineService", tableId: "engineServicesTable", @@ -124,4 +123,4 @@ const config = { } }; -export { config, }; \ No newline at end of file +export { config, }; diff --git a/gui-pdp-monitoring/src/webapp/js/MonitoringMain.js b/gui-pdp-monitoring/src/webapp/js/MonitoringMain.js index 9198d63..48aa96c 100644 --- a/gui-pdp-monitoring/src/webapp/js/MonitoringMain.js +++ b/gui-pdp-monitoring/src/webapp/js/MonitoringMain.js @@ -1,6 +1,6 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2020 Nordix Foundation. + * Copyright (C) 2020-2021 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -68,8 +68,8 @@ function readyCallback() { window.restRootURL = location.protocol + "//" + window.location.hostname - + ':' + config.restPort - + (location.pathname.endsWith("/monitoring/") ? location.pathname.substring(0, location.pathname.indexOf("monitoring/")) : location.pathname) + + ':' + window.location.port + + window.location.pathname + "papservices/monitoring/"; // Initialize tooltip for the charts initTooltip(); @@ -108,4 +108,4 @@ function readyCallback() { $(document).ready(readyCallback); // Export for unit testing -export { readyCallback, servicesCallback }; \ No newline at end of file +export { readyCallback, servicesCallback }; diff --git a/gui-pdp-monitoring/src/webapp/webpack.config.js b/gui-pdp-monitoring/src/webapp/webpack.config.js index f387ebe..4b1c179 100644 --- a/gui-pdp-monitoring/src/webapp/webpack.config.js +++ b/gui-pdp-monitoring/src/webapp/webpack.config.js @@ -10,6 +10,9 @@ module.exports = { devServer: { contentBase: path.join(__dirname, 'dist'), compress: true, - port: 9000 + port: 9000, + proxy: { + "/papservices/monitoring": "http://localhost:17999", + } } }; -- cgit 1.2.3-korg