Add smoke checks for Sl deploy

* check that needed services are run in docker
* check that all targets in prometheus are up
* add intial deploy in octa ovs

Change-Id: Id12c631aca99ecff82c4d36bfc4f278cd52bcbe4
Reviewed-on: https://review.gerrithub.io/376416
Reviewed-by: Tatyanka Leontovich <tleontovich@mirantis.com>
Tested-by: Tatyanka Leontovich <tleontovich@mirantis.com>
diff --git a/tcp_tests/managers/sl_manager.py b/tcp_tests/managers/sl_manager.py
index 23d362e..ccb6030 100644
--- a/tcp_tests/managers/sl_manager.py
+++ b/tcp_tests/managers/sl_manager.py
@@ -14,6 +14,9 @@
 
 from tcp_tests.managers.execute_commands import ExecuteCommandsMixin
 from tcp_tests.managers.clients.prometheus import prometheus_client
+from tcp_tests import logger
+
+LOG = logger.logger
 
 
 class SLManager(ExecuteCommandsMixin):
@@ -57,3 +60,19 @@
                 port=self.__config.stack_light.sl_prometheus_port,
                 proto=self.__config.stack_light.sl_prometheus_proto)
         return self._p_client
+
+    def get_monitoring_nodes(self):
+        return [node_name for node_name
+                in self.__underlay.node_names() if 'mon' in node_name]
+
+    def get_service_info_from_node(self, node_name):
+        service_stat_dict = {}
+        with self.__underlay.remote(node_name=node_name) as node_remote:
+            result = node_remote.execute(
+                "docker service ls --format '{{.Name}}:{{.Replicas}}'")
+            LOG.debug("Service ls result {0} from node {1}".format(
+                result['stdout'], node_name))
+            for line in result['stdout']:
+                tmp = line.split(':')
+                service_stat_dict.update({tmp[0]: tmp[1]})
+        return service_stat_dict