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/sdb/ |
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/sdb/etcd_db.py |
""" etcd Database Module :maintainer: SaltStack :maturity: New :depends: python-etcd or etcd3-py :platform: all .. versionadded:: 2015.5.0 This module allows access to the etcd database using an ``sdb://`` URI. This package is located at ``https://pypi.python.org/pypi/python-etcd``. Like all sdb modules, the etcd module requires a configuration profile to be configured in either the minion or master configuration file. This profile requires very little. In the example: .. code-block:: yaml myetcd: driver: etcd etcd.host: 127.0.0.1 etcd.port: 2379 The ``driver`` refers to the etcd module, ``etcd.host`` refers to the host that is hosting the etcd database and ``etcd.port`` refers to the port on that host. In order to choose whether to use etcd API v2 or v3, you can put the following configuration option in the same place as your etcd configuration. This option defaults to true, meaning you will use v2 unless you specify otherwise. .. code-block:: yaml etcd.require_v2: True .. code-block:: yaml password: sdb://myetcd/mypassword """ import logging try: import salt.utils.etcd_util if salt.utils.etcd_util.HAS_ETCD_V2 or salt.utils.etcd_util.HAS_ETCD_V3: HAS_LIBS = True else: HAS_LIBS = False except ImportError: HAS_LIBS = False log = logging.getLogger(__name__) __func_alias__ = {"set_": "set"} __virtualname__ = "etcd" def __virtual__(): """ Only load the module if keyring is installed """ if HAS_LIBS: return __virtualname__ return False def set_(key, value, service=None, profile=None): # pylint: disable=W0613 """ Set a key/value pair in the etcd service """ client = _get_conn(profile) client.set(key, value) return get(key, service, profile) def get(key, service=None, profile=None): # pylint: disable=W0613 """ Get a value from the etcd service """ client = _get_conn(profile) return client.get(key) def delete(key, service=None, profile=None): # pylint: disable=W0613 """ Get a value from the etcd service """ client = _get_conn(profile) try: client.delete(key) return True except Exception: # pylint: disable=broad-except return False def _get_conn(profile): """ Get a connection """ return salt.utils.etcd_util.get_conn(profile)