%PDF- %PDF-
Mini Shell

Mini Shell

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

�
���^c@@s�dZddlmZmZmZdZd�Zd�Zd
e	e	e	dd
d
d
d
d
d
d�Z
de	d
d
d
d
d
d
d�Zdd
d
d
d
d
d
d	�Zd
S(u�
:depends:  kazoo
:configuration: See :py:mod:`salt.modules.zookeeper` for setup instructions.

ACLS
~~~~

For more information about acls, please checkout the kazoo documentation.

http://kazoo.readthedocs.io/en/latest/api/security.html#kazoo.security.make_digest_acl

The following options can be included in the acl dictionary:

    :param username: Username to use for the ACL.
    :param password: A plain-text password to hash.
    :param write: Write permission.
    :type write: bool
    :param create: Create permission.
    :type create: bool
    :param delete: Delete permission.
    :type delete: bool
    :param admin: Admin permission.
    :type admin: bool
    :param all: All permissions.
    :type all: bool
i(tabsolute_importtprint_functiontunicode_literalsu	zookeepercC@sdtkrtStS(Nuzookeeper.create(t__salt__t__virtualname__tFalse(((s9/usr/lib/python2.7/site-packages/salt/states/zookeeper.pyt__virtual__#scC@sDtt|�t|��}tt|�t|��}|oC|S(N(tbooltset(tlefttrighttfirsttsecond((s9/usr/lib/python2.7/site-packages/salt/states/zookeeper.pyt_check_acls)si����c
C@si|d6td6dj|�d6id6}
i|d6|d6|	d6|
d	6|d
6|d6}|dkrpg}n#g|D]}td|�^qw}td
||�rtd||�}td||�}||krt||�rt|
d<dj|�|
d<|
Stdtkr�d|
d<dj|�|
d<i|
dd<i|
dd<||kr�||
ddd<||
ddd<nt||�s�||
ddd<||
ddd<n|
Stt}}i}||krNtd||||�td||�}||k}|jdi�jd|�|jdi�jd|�n|r�t||�r�td||||�td||�}t||�}|jdi�jd|�|jdi�jd|�n||
d<|r|rt|
d<dj|�|
d<n|
Sntdtkr�d|
d<dj|�|
d<i|
dd<i|
dd<||
ddd<||
ddd<|
Std|||||||�tt}}iid6}td||�}||k}|jdi�jd|�td||�}|dkp&t||�}|jdi�jd|�||
d<|r{|r{t|
d<dj|�|
d<n|
S(u
    Make sure znode is present in the correct state with the correct acls

    name
        path to znode

    value
        value znode should be set to

    acls
        list of acl dictionaries to set on znode (make sure the ones salt is connected with are included)
        Default: None

    ephemeral
        Boolean to indicate if ephemeral znode should be created
        Default: False

    sequence
        Boolean to indicate if znode path is suffixed with a unique index
        Default: False

    makepath
        Boolean to indicate if the parent paths should be created
        Default: False

    version
        For updating, specify the version which should be updated
        Default: -1 (always match)

    profile
        Configured Zookeeper profile to authenticate with (Default: None)

    hosts
        Lists of Zookeeper Hosts (Default: '127.0.0.1:2181)

    scheme
        Scheme to authenticate with (Default: 'digest')

    username
        Username to authenticate (Default: None)

    password
        Password to authenticate (Default: None)

    default_acl
        Default acls to assign if a node is created in this connection (Default: None)

    .. code-block:: yaml

        add znode:
          zookeeper.present:
            - name: /test/name
            - value: gtmanfred
            - makepath: True

        update znode:
          zookeeper.present:
            - name: /test/name
            - value: daniel
            - acls:
              - username: daniel
                password: test
                read: true
              - username: gtmanfred
                password: test
                read: true
                write: true
                create: true
                delete: true
                admin: true
            - makepath: True
    unameuresultuFailed to setup znode {0}ucommentuchangesuprofileuhostsuschemeuusernameupasswordudefault_acluzookeeper.make_digest_acluzookeeper.existsu
zookeeper.getuzookeeper.get_aclsuCZnode {0} is already set to the correct value with the correct aclsutestuZnode {0} is will be updateduoldunewuvalueuaclsu
zookeeper.setuzookeeper.set_aclsuZnode {0} successfully updatedu{0} is will be createduzookeeper.createuZnode {0} successfully createdN(RtformattNoneRR
tTruet__opts__t
setdefault(tnametvaluetaclst	ephemeraltsequencetmakepathtversiontprofilethoststschemetusernametpasswordtdefault_acltrett
connkwargstchk_aclstaclt	cur_valuetcur_aclstvalue_resultt
acl_resulttchangest	new_valuetnew_acls((s9/usr/lib/python2.7/site-packages/salt/states/zookeeper.pytpresent/s�K


	#





 



c	C@s�i|d6td6dj|�d6id6}	i|d6|d6|d6|d	6|d
6|d6}
td||
�tkr�t|	d<d
j|�|	d<|	Si}td||
�|d<td||
�|d<|tkr�td||
�|d<ntdtkr.d|	d<dj|�|	d<||	dd<|	Std||||
�td||
�tkr�t|	d<dj|�|	d<||	dd<n|	S(u`
    Make sure znode is absent

    name
        path to znode

    version
        Specify the version which should be deleted
        Default: -1 (always match)

    recursive
        Boolean to indicate if children should be recursively deleted
        Default: False

    profile
        Configured Zookeeper profile to authenticate with (Default: None)

    hosts
        Lists of Zookeeper Hosts (Default: '127.0.0.1:2181)

    scheme
        Scheme to authenticate with (Default: 'digest')

    username
        Username to authenticate (Default: None)

    password
        Password to authenticate (Default: None)

    default_acl
        Default acls to assign if a node is created in this connection (Default: None)

    .. code-block:: yaml

        delete znode:
          zookeeper.absent:
            - name: /test
            - recursive: True
    unameuresultuFailed to delete znode {0}ucommentuchangesuprofileuhostsuschemeuusernameupasswordudefault_acluzookeeper.existsuZnode {0} does not existu
zookeeper.getuvalueuzookeeper.get_aclsuaclsuzookeeper.get_childrenuchildrenutestuZnode {0} will be removeduolduzookeeper.deleteuZnode {0} has been removedN(RRRRRR(RRt	recursiveRRRRRRR R!R(((s9/usr/lib/python2.7/site-packages/salt/states/zookeeper.pytabsent�s6)





c	C@s�i|d6td6dj|�d6id6}	i|d6|d6|d6|d	6|d
6|d6}
t|t�rv|g}ng|D]}td|�^q}}td
||
�s�|	dcd7<|	Std||
�}
t|
|�rt|	d<dj|�|	d<|	StdtkrPd|	d<dj|�|	d<|
|	dd<||	dd<|	Std||||
�td||
�}i|
d6|d6|	d<t||�r�t|	d<dj|�|	d<|	Sdj|�|	d<|	S(u�
    Update acls on a znode

    name
        path to znode

    acls
        list of acl dictionaries to set on znode

    version
        Specify the version which should be deleted
        Default: -1 (always match)

    profile
        Configured Zookeeper profile to authenticate with (Default: None)

    hosts
        Lists of Zookeeper Hosts (Default: '127.0.0.1:2181)

    scheme
        Scheme to authenticate with (Default: 'digest')

    username
        Username to authenticate (Default: None)

    password
        Password to authenticate (Default: None)

    default_acl
        Default acls to assign if a node is created in this connection (Default: None)

    .. code-block:: yaml

        update acls:
          zookeeper.acls:
            - name: /test/name
            - acls:
              - username: daniel
                password: test
                all: True
              - username: gtmanfred
                password: test
                all: True
    unameuresultuFailed to set acls on znode {0}ucommentuchangesuprofileuhostsuschemeuusernameupasswordudefault_acluzookeeper.make_digest_acluzookeeper.existsu: Znode does not existuzookeeper.get_aclsuZnode {0} acls already setutestuZnode {0} acls will be updateduoldunewuzookeeper.set_aclsuZnode {0} acls updateduZnode {0} acls failed to updateN(	RRt
isinstancetdictRR
RRR(RRRRRRRRRR R!R#R"R%R*((s9/usr/lib/python2.7/site-packages/salt/states/zookeeper.pyRsB.


#


N(
t__doc__t
__future__RRRRRR
RRR+R-R(((s9/usr/lib/python2.7/site-packages/salt/states/zookeeper.pyt<module>s		�K

Zerion Mini Shell 1.0