Fix testcase_9 01/63101/5
authordimitris.tsiolakis <dmts@intracom-telecom.com>
Tue, 2 Oct 2018 14:34:27 +0000 (17:34 +0300)
committerDimitris Tsiolakis <dmts@intracom-telecom.com>
Fri, 5 Oct 2018 09:12:52 +0000 (09:12 +0000)
After new Apex release Opendaylight run in container.
This enhancement identifies the controllers where the
Opendaylight runs, for both containerized and none
containerized installations.

Change-Id: I5821bfa7ddce40eb76d3c2cddfcbc112b058f737
Signed-off-by: dimitris.tsiolakis <dmts@intracom-telecom.com>
sdnvpn/test/functest/testcase_9.py

index b77360d..c74ceb5 100644 (file)
@@ -15,6 +15,7 @@
 #   - Verify that the OpenDaylight and gateway Quagga peer
 import logging
 import sys
+import os
 
 from sdnvpn.lib import config as sdnvpn_config
 from sdnvpn.lib import utils as test_utils
@@ -34,12 +35,21 @@ def main():
     results.add_to_summary(0, "=")
 
     openstack_nodes = test_utils.get_nodes()
-
+    installer_type = str(os.environ['INSTALLER_TYPE'].lower())
     # node.is_odl() doesn't work in Apex
     # https://jira.opnfv.org/browse/RELENG-192
-    controllers = [node for node in openstack_nodes
-                   if "running" in
-                   node.run_cmd("sudo systemctl status opendaylight")]
+    fuel_cmd = "sudo systemctl status opendaylight"
+    apex_cmd = "sudo docker exec opendaylight_api " \
+               "/opt/opendaylight/bin/status"
+    health_cmd = "sudo docker ps -f name=opendaylight_api -f " \
+                 "health=healthy -q"
+    if installer_type in ["fuel"]:
+        controllers = [node for node in openstack_nodes
+                       if "running" in node.run_cmd(fuel_cmd)]
+    elif installer_type in ["apex"]:
+        controllers = [node for node in openstack_nodes
+                       if node.run_cmd(health_cmd)
+                       if "Running" in node.run_cmd(apex_cmd)]
 
     msg = ("Verify that all OpenStack nodes OVS br-int have "
            "fail_mode set to secure")