no longer explicitly install slicerepo and noderepo for a serverside only build
[tests.git] / system / TestPlc.py
index 749fd3d..3b47656 100644 (file)
@@ -752,8 +752,8 @@ class TestPlc:
 
         pkgs_list = []
         pkgs_list.append("myplc")
-        pkgs_list.append("slicerepo-{}".format(nodefamily))
-        pkgs_list.append("noderepo-{}".format(nodefamily))
+        pkgs_list.append("slicerepo-{}".format(nodefamily))
+        pkgs_list.append("noderepo-{}".format(nodefamily))
         pkgs_string=" ".join(pkgs_list)
         return self.dnf_install(pkgs_list)
 
@@ -1711,9 +1711,27 @@ class TestPlc:
         return self.run_in_guest('sfaadmin reg import_registry') == 0
 
     def sfa_start(self):
-        "start SFA through systemctl"
-        return (self.start_stop_systemd('sfa-registry', 'start') and
-                self.start_stop_systemd('sfa-aggregate', 'start'))
+        "start SFA through systemctl - also install dependencies"
+
+        # installing this one through pip2 is a pain, it is a source install
+        # and requires a python2 devel environment so let's kep it simple
+        dnf_dependencies = [
+            "m2crypto"
+        ]
+        pip_dependencies = [
+            'sqlalchemy-migrate',
+            'lxml',
+            'python-dateutil',
+            'psycopg2-binary',
+        ]
+        dnf_deps = all((self.run_in_guest(f"dnf -y install {dep}") == 0)
+                   for dep in dnf_dependencies)
+        pip_deps = all((self.run_in_guest(f"pip2 install {dep}") == 0)
+                   for dep in pip_dependencies)
+        return (dnf_deps 
+            and pip_deps
+            and self.start_stop_systemd('sfa-registry', 'start')
+            and self.start_stop_systemd('sfa-aggregate', 'start'))
 
 
     def sfi_configure(self):