diff options
author | andre.schmid <andre.schmid@est.tech> | 2020-04-21 14:01:21 +0100 |
---|---|---|
committer | Ofir Sonsino <ofir.sonsino@intl.att.com> | 2020-04-21 17:37:18 +0000 |
commit | c27b98e43b407a9b6ef1394b63d6fa9f5fc1f615 (patch) | |
tree | 90e087dc13cf99878787ae67b3e67550311f923e | |
parent | 2c61d810b631a073ca42f75624fe190ac4f49ea4 (diff) |
Fix 404 in sdc-FE calls to workflow
Fixes webpack workflow proxy configuration.
Fixes FE proxy while rewriting URLs to workflow plugin.
Fixes compilation problems to run locally the catalog-ui.
Change-Id: I89f3f46bd8ce0159713b1d0d957a2e75f8a3d062
Issue-ID: SDC-2943
Signed-off-by: andre.schmid <andre.schmid@est.tech>
(cherry picked from commit ac26dc0d5c5f7fce65e214c31e26e7178e492d5b)
-rw-r--r-- | catalog-fe/src/main/java/org/openecomp/sdc/fe/servlets/FeProxyServlet.java | 23 | ||||
-rw-r--r-- | catalog-ui/webpack.server.js | 31 |
2 files changed, 20 insertions, 34 deletions
diff --git a/catalog-fe/src/main/java/org/openecomp/sdc/fe/servlets/FeProxyServlet.java b/catalog-fe/src/main/java/org/openecomp/sdc/fe/servlets/FeProxyServlet.java index 3ea660abbe..8f76cb95ab 100644 --- a/catalog-fe/src/main/java/org/openecomp/sdc/fe/servlets/FeProxyServlet.java +++ b/catalog-fe/src/main/java/org/openecomp/sdc/fe/servlets/FeProxyServlet.java @@ -46,7 +46,7 @@ import static org.apache.commons.lang3.StringUtils.isEmpty; public class FeProxyServlet extends SSLProxyServlet { private static final long serialVersionUID = 1L; - private static final String URL = "%s://%s%s"; + private static final String URL = "%s://%s%s%s"; private static final String MS_URL = "%s://%s:%s"; private static final String ONBOARDING_CONTEXT = "/onboarding-api"; private static final String DCAED_CONTEXT = "/dcae-api"; @@ -134,6 +134,7 @@ public class FeProxyServlet extends SSLProxyServlet { String protocol; String host; String port; + String path = ""; if (uri.contains(ONBOARDING_CONTEXT)){ uri = uri.replace(SDC1_FE_PROXY+ONBOARDING_CONTEXT,ONBOARDING_CONTEXT); protocol = config.getOnboarding().getProtocolBe(); @@ -160,6 +161,7 @@ public class FeProxyServlet extends SSLProxyServlet { java.net.URL workflowURL = new URL(workflowPluginURL); protocol = workflowURL.getProtocol(); host = workflowURL.getHost(); + path = workflowURL.getPath(); port = String.valueOf(workflowURL.getPort()); } else{ @@ -173,15 +175,15 @@ public class FeProxyServlet extends SSLProxyServlet { } } - String authority = getAuthority(host, port); - String modifiedUrl = String.format(URL,protocol,authority,uri); - if( !StringUtils.isEmpty(queryString)){ + final String authority = getAuthority(host, port); + String modifiedUrl = String.format(URL, protocol, authority, path, uri); + if (StringUtils.isNotEmpty(queryString)) { modifiedUrl += "?" + queryString; } - return modifiedUrl; - + return modifiedUrl; } + @VisibleForTesting String redirectMsRequestToMservice(HttpServletRequest request, Configuration config) throws MalformedURLException { @@ -299,11 +301,10 @@ private PluginsConfiguration getPluginConfiguration(HttpServletRequest request) private String getAuthority(String host, String port) { String authority; - if (port==null){ - authority=host; - } - else{ - authority=host+":"+port; + if (port == null) { + authority = host; + } else { + authority = host + ":" + port; } return authority; } diff --git a/catalog-ui/webpack.server.js b/catalog-ui/webpack.server.js index 0d43fa1d86..ab8678536c 100644 --- a/catalog-ui/webpack.server.js +++ b/catalog-ui/webpack.server.js @@ -5,16 +5,8 @@ const devPort = 9000; const fePort = 8181; const feHost = "localhost"; const protocol="http"; -const isDirectToFE = false; +const isDirectToFE = true; -/* -For kubernetes -const fePort = 30207; -const wfPort = 30256; -const feHost = "kubernetes_master"; -const protocol="https"; -const isDirectToFE = true;// whether to proxy to the k8s proxy or to the BE -*/ const portalCookieValue = "randomValue"; //for dev solely, in production - the webseal would add the cookie by itself. module.exports = function (env) { @@ -56,15 +48,11 @@ module.exports = function (env) { secure: false, logLevel: 'debug' } - if (isDirectToFE) { - feProxyOptions.pathRewrite= { - '^/sdc1/feProxy/rest' : '/sdc1/feProxy/rest' - } - } else { - feProxyOptions.pathRewrite= { - '^/sdc1/feProxy/rest' : '/sdc2/rest' - } - } + if (!isDirectToFE) { + feProxyOptions.pathRewrite= { + '^/sdc1/feProxy/rest' : '/sdc2/rest' + } + } middlewares.push( proxy(['/sdc1/feProxy/rest'], feProxyOptions)); @@ -106,14 +94,11 @@ module.exports = function (env) { // Redirect workflow urls to feHost middlewares.push( - proxy(['/sdc1/feProxy/wf', '/wf'], { - target: protocol + '://' + feHost + ':' + wfPort, + proxy(['/wf', '/sdc1/feProxy/wf'], { + target: protocol + '://' + feHost + ':' + fePort, changeOrigin: true, logLevel: 'debug', secure: false, - pathRewrite: { - '^/sdc1/feProxy' : '' - }, onProxyRes: (proxyRes, req, res) => { let setCookie = proxyRes.headers['set-cookie']; if (setCookie) { |