PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : //proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/ssh_service.py |
""" Provide the service module for the proxy-minion SSH sample .. versionadded:: 2015.8.2 """ import fnmatch import logging import re import salt.utils.platform log = logging.getLogger(__name__) __func_alias__ = {"list_": "list"} # Define the module's virtual name __virtualname__ = "service" def __virtual__(): """ Only work on systems that are a proxy minion """ try: if ( salt.utils.platform.is_proxy() and __opts__["proxy"]["proxytype"] == "ssh_sample" ): return __virtualname__ except KeyError: return ( False, "The ssh_service execution module failed to load. Check the " "proxy key in pillar.", ) return ( False, "The ssh_service execution module failed to load: only works on an " "ssh_sample proxy minion.", ) def get_all(): """ Return a list of all available services CLI Example: .. code-block:: bash salt '*' service.get_all """ proxy_fn = "ssh_sample.service_list" return __proxy__[proxy_fn]() def list_(): """ Return a list of all available services. CLI Example: .. code-block:: bash salt '*' service.list """ return get_all() def start(name, sig=None): """ Start the specified service on the ssh_sample CLI Example: .. code-block:: bash salt '*' service.start <service name> """ proxy_fn = "ssh_sample.service_start" return __proxy__[proxy_fn](name) def stop(name, sig=None): """ Stop the specified service on the rest_sample CLI Example: .. code-block:: bash salt '*' service.stop <service name> """ proxy_fn = "ssh_sample.service_stop" return __proxy__[proxy_fn](name) def restart(name, sig=None): """ Restart the specified service with rest_sample CLI Example: .. code-block:: bash salt '*' service.restart <service name> """ proxy_fn = "ssh_sample.service_restart" return __proxy__[proxy_fn](name) def status(name, sig=None): """ Return the status for a service via ssh_sample. If the name contains globbing, a dict mapping service name to True/False values is returned. .. versionchanged:: 2018.3.0 The service name can now be a glob (e.g. ``salt*``) Args: name (str): The name of the service to check sig (str): Not implemented Returns: bool: True if running, False otherwise dict: Maps service name to True if running, False otherwise CLI Example: .. code-block:: bash salt '*' service.status <service name> """ proxy_fn = "ssh_sample.service_status" contains_globbing = bool(re.search(r"\*|\?|\[.+\]", name)) if contains_globbing: services = fnmatch.filter(get_all(), name) else: services = [name] results = {} for service in services: resp = __proxy__[proxy_fn](service) if resp["comment"] == "running": results[service] = True else: results[service] = False if contains_globbing: return results return results[name] def running(name, sig=None): """ Return whether this service is running. """ return status(name).get(name, False) def enabled(name, sig=None): """ Only the 'redbull' service is 'enabled' in the test """ return name == "redbull"