%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python2.7/site-packages/salt/states/
Upload File :
Create Path :
Current File : //usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pyc

�
���^c@@s�dZddlmZmZmZddlZddlZddlm	Z	ddl
mZeje
�Zd�Zddd�Zdd�Zdedddd	�Zdd
�ZdS(u\
Manage RabbitMQ Users
=====================

Example:

.. code-block:: yaml

    rabbit_user:
      rabbitmq_user.present:
        - password: password
        - force: True
        - tags:
          - monitoring
          - user
        - perms:
          - '/':
            - '.*'
            - '.*'
            - '.*'
        - runas: rabbitmq
i(tabsolute_importtunicode_literalstprint_functionN(tsix(tCommandExecutionErrorcC@stjjjd�dk	S(u-
    Only load if RabbitMQ is installed.
    urabbitmqctlN(tsalttutilstpathtwhichtNone(((s=/usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pyt__virtual__%sc
C@s�|s
tS|dkrZytd|d|�}WqZtk
rV}tjd|�tSXnt}x�|D]�}xxtj|�D]g\}}||kr�||}	||	kr�|	dkr�|dddgkr�q}nt}q�q}t}q}WqgW|S(uG
    Check whether Rabbitmq user's permissions need to be changed.
    urabbitmq.list_user_permissionstrunasu	Error: %suN(	tFalseR	t__salt__RtlogterrorRt	iteritemstTrue(
tnametnewpermsRtexistingterrtperm_need_changetvhost_permstvhosttpermstexisting_vhost((s=/usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pyt_check_perms_changes,s&

!cC@sJyttdd|�|�SWn$tk
rE}tjd|�gSXdS(u9
    Whether Rabbitmq user's tags need to be changed
    urabbitmq.list_usersRu	Error: %sN(tlistR
RRR(RRR((s=/usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pyt_get_current_tagsLs
c
C@s�i|d6td6dd6id6}ytd|d|�}Wn'tk
re}dj|�|d<|SXt}	|r�|d'k	r�y6td	||d|�s�t}	tjd
|�nWq�tk
r�}dj|�|d<|SXn|r1t||||	f�r1tjd|�dj|�|d<t|d<|S|s�|dj	iidd
6|d6d6�t
dr�d'|d<dj|�|d<|Stjd|�ytd||d|�Wqtk
r�}dj|�|d<|SXn+tjd|�|s�|	r|d'k	r�t
dsZytd||d|�WqZtk
rV}dj|�|d<|SXn|dj	iidd
6dd6d6�qt
ds�tjd|�ytd|d|�Wq�tk
r�}dj|�|d<|SXn|dj	iidd
6dd6d6�n|d'k	r�t|d|�}
t|t
j�rJ|j�}nt|�t|
�Ar�t
ds�ytd||d|�Wq�tk
r�}dj|�|d<|SXn|dj	ii|
d
6|d6d6�q�nytd|d|�}Wn'tk
r!}dj|�|d<|SXt||d|d|�rhx(|D]}xt
j|�D]\}
}t
ds�y0td|
||d |d!|d"d|�Wq�tk
r�}dj|�|d<|SXni||
6}||krZ|djd#�d'kr(|dj	iiid
6id6d#6�n|dd#d
j	|�|dd#dj	|�qZqZWqDWnt|d<|dikr�d$j|�|d<|St
dr�d'|d<d%j|�|d<|Sd&j|�|d<|S((uq
    Ensure the RabbitMQ user exists.

    name
        User name
    password
        User's password, if one needs to be set
    force
        If user exists, forcibly change the password
    tags
        Optional list of tags for the user
    perms
        A list of dicts with vhost keys and 3-tuple values
    runas
        Name of the user to run the command
    unameuresultuucommentuchangesurabbitmq.user_existsRu
Error: {0}urabbitmq.check_passwordu)RabbitMQ user %s password update requireduGRabbitMQ user '%s' exists, password is up to date and force is not set.uUser '{0}' is already present.uoldunewuuserutestu User '{0}' is set to be created.u,RabbitMQ user '%s' doesn't exist - Creating.urabbitmq.add_useruRabbitMQ user '%s' existsurabbitmq.change_passwordu
Set password.upasswordu/Password for %s is not set - Clearing password.urabbitmq.clear_passworduRemoved password.urabbitmq.set_user_tagsutagsurabbitmq.list_user_permissionsRurabbitmq.set_permissionsiiiupermsu&'{0}' is already in the desired state.u$Configuration for '{0}' will change.u'{0}' was configured.N(RR
RtformatR	RRtdebugtanytupdatet__opts__Rt
isinstanceRtstring_typestsplittsetRRtget(RtpasswordtforcettagsRRtrettuserRtpasswd_reqs_updatetcurrent_tagstexisting_permst
vhost_permRtpermt	new_perms((s=/usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pytpresentWs�"
	
















)


'


cC@s[i|d6td6dd6id6}ytd|d|�}Wn'tk
re}dj|�|d<|SX|r�td	s�ytd
|d|�Wq�tk
r�}dj|�|d<|SXn|djii|d6dd6d6�n!t|d<d
j|�|d<|Std	r:|dr:d|d<dj|�|d<|St|d<dj|�|d<|S(u�
    Ensure the named user is absent

    name
        The name of the user to remove
    runas
        User to run the command
    unameuresultuucommentuchangesurabbitmq.user_existsRu
Error: {0}utesturabbitmq.delete_useruoldunewuThe user '{0}' is not present.uThe user '{0}' will be removed.uThe user '{0}' was removed.N(RR
RRR"R!RR	(RRR+tuser_existsR((s=/usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pytabsent�s4
"





((t__doc__t
__future__RRRtloggingtsalt.utils.pathRtsalt.extRtsalt.exceptionsRt	getLoggert__name__RR
R	RRRR3R5(((s=/usr/lib/python2.7/site-packages/salt/states/rabbitmq_user.pyt<module>s	 �

Zerion Mini Shell 1.0