blob: c827a38e866fbf760e4ee22172ce0570dc502d1b [file] [log] [blame]
Alex Savatieiev5118de02019-02-20 15:50:42 -06001from cfg_checker.common import logger
Alex3ebc5632019-04-18 16:47:18 -05002from cfg_checker.common.salt_utils import SaltRemote
Alex Savatieiev5118de02019-02-20 15:50:42 -06003
4# instance of the salt client
5salt = None
6
7
8def get_salt_remote(config):
9 """Singleton-like creation of instance
10
11 Arguments:
12 config {base_config} -- an instance to base_config
13 with creds and params
14
15 Returns:
16 SaltRemote -- instance of salt client
17 """
18
19 global salt
20 logger.info("Creating salt remote instance")
21 # create it once
22 if salt is None:
Alexe0c5b9e2019-04-23 18:51:23 -050023 salt = SaltRemote()
Alex Savatieiev5118de02019-02-20 15:50:42 -060024 # do most expensive operation with no strict timeout possible
25 # all nodes that answer ping
Alexe0c5b9e2019-04-23 18:51:23 -050026 # salt.nodes_active = salt.get_active_nodes()
Alex Savatieiev5118de02019-02-20 15:50:42 -060027
28 # return once required
29 return salt