From 9f0678f3ab333949076b5b9747158cf40e08fbef Mon Sep 17 00:00:00 2001 From: JohnKeeney Date: Tue, 2 Jul 2019 15:50:56 +0000 Subject: ApexPDP: Fixed jenkin failure in Nordix getLocalHost() fails in Nordix jenkins test build - misconfiguration of nordix jenkins vms/containers Change-Id: I726fc141ced07f15cfaa8a9815b4d090dbb74c9a Issue-ID: POLICY-1879 Signed-off-by: JohnKeeney --- .../apex/core/deployment/DeploymentClient.java | 25 +++++++++++++---- .../core/deployment/PeriodicEventManagerTest.java | 32 +++++++++++----------- 2 files changed, 36 insertions(+), 21 deletions(-) (limited to 'core/core-deployment/src') diff --git a/core/core-deployment/src/main/java/org/onap/policy/apex/core/deployment/DeploymentClient.java b/core/core-deployment/src/main/java/org/onap/policy/apex/core/deployment/DeploymentClient.java index eb51271d5..900e0a2f8 100644 --- a/core/core-deployment/src/main/java/org/onap/policy/apex/core/deployment/DeploymentClient.java +++ b/core/core-deployment/src/main/java/org/onap/policy/apex/core/deployment/DeploymentClient.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2016-2018 Ericsson. All rights reserved. + * Modifications Copyright (C) 2019 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,12 +22,12 @@ package org.onap.policy.apex.core.deployment; import com.google.common.eventbus.Subscribe; - +import java.net.InetAddress; import java.net.URI; +import java.net.UnknownHostException; import java.util.concurrent.BlockingQueue; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; - import org.onap.policy.apex.core.infrastructure.messaging.MessageHolder; import org.onap.policy.apex.core.infrastructure.messaging.MessageListener; import org.onap.policy.apex.core.infrastructure.messaging.MessagingService; @@ -66,7 +67,7 @@ public class DeploymentClient implements Runnable { // Thread management fields private boolean started = false; private Thread thisThread = null; - + // Number of messages processed private long messagesSent = 0; private long messagesReceived = 0; @@ -127,7 +128,8 @@ public class DeploymentClient implements Runnable { } // Send the message in its message holder - final MessageHolder messageHolder = new MessageHolder<>(MessagingUtils.getHost()); + InetAddress local = getLocalAddress(); + final MessageHolder messageHolder = new MessageHolder<>(local); messageHolder.addMessage(messageForSending); service.send(messageHolder); messagesSent++; @@ -138,10 +140,23 @@ public class DeploymentClient implements Runnable { thisThread.interrupt(); return false; } - + return true; } + /** + * Get the local address for the WS MessageHolder, or null if there is a problem. + */ + private InetAddress getLocalAddress() { + try { + return MessagingUtils.getLocalHostLanAddress(); + } + catch (UnknownHostException e) { + LOGGER.debug("engine<-->deployment client failed to find the localhost address - continuing ...", e); + return null; + } + } + /** * Gets the host. * diff --git a/core/core-deployment/src/test/java/org/onap/policy/apex/core/deployment/PeriodicEventManagerTest.java b/core/core-deployment/src/test/java/org/onap/policy/apex/core/deployment/PeriodicEventManagerTest.java index 816c528bb..22344cfc4 100644 --- a/core/core-deployment/src/test/java/org/onap/policy/apex/core/deployment/PeriodicEventManagerTest.java +++ b/core/core-deployment/src/test/java/org/onap/policy/apex/core/deployment/PeriodicEventManagerTest.java @@ -1,19 +1,20 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2018 Ericsson. All rights reserved. + * Modifications Copyright (C) 2019 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - * + * * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ @@ -28,7 +29,6 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.io.PrintStream; - import org.junit.Test; /** @@ -133,26 +133,26 @@ public class PeriodicEventManagerTest { } catch (ApexDeploymentException ade) { assertEquals("model deployment failed on parameters localhost 12345 true", ade.getMessage()); } - + try { peManager.init(); } catch (ApexDeploymentException ade) { ade.printStackTrace(); fail("test should not throw an exception"); } - + try { peManager.runCommand(); } catch (ApexDeploymentException ade) { assertEquals("failed response Operation failed received from serverlocalhost:12345", ade.getMessage()); } - + try { peManager.runCommand(); } catch (ApexDeploymentException ade) { fail("test should not throw an exception"); } - + peManager.close(); } @@ -176,26 +176,26 @@ public class PeriodicEventManagerTest { } catch (ApexDeploymentException ade) { assertEquals("model deployment failed on parameters localhost 12345 true", ade.getMessage()); } - + try { peManager.init(); } catch (ApexDeploymentException ade) { ade.printStackTrace(); fail("test should not throw an exception"); } - + try { peManager.runCommand(); } catch (ApexDeploymentException ade) { assertEquals("failed response Operation failed received from serverlocalhost:12345", ade.getMessage()); } - + try { peManager.runCommand(); } catch (ApexDeploymentException ade) { fail("test should not throw an exception"); } - + peManager.close(); } @@ -220,7 +220,7 @@ public class PeriodicEventManagerTest { } catch (ApexDeploymentException ade) { assertEquals("connection to apex is not initialized", ade.getMessage()); } - + try { peManager.runCommand(); fail("test should throw an exception"); @@ -228,7 +228,7 @@ public class PeriodicEventManagerTest { assertEquals("connection to apex is not initialized", ade.getMessage()); ade.printStackTrace(); } - + peManager.close(); } @@ -253,13 +253,13 @@ public class PeriodicEventManagerTest { } catch (ApexDeploymentException ade) { assertEquals("connection to apex is not initialized", ade.getMessage()); } - + peManager.close(); } /** * Run the application. - * + * * @param eventArgs the command arguments * @return a string containing the command output */ -- cgit 1.2.3-korg