File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/salt/states/__pycache__/rabbitmq_user.cpython-310.pyc
Back
o ;j# � @ s^ d Z ddlZddlZddlmZ e�e�Zdd� Z ddd�Z ddd �Zddd �Zddd�Z dS )a\ Manage RabbitMQ Users ===================== Example: .. code-block:: yaml rabbit_user: rabbitmq_user.present: - password: password - force: True - tags: - monitoring - user - perms: - '/': - '.*' - '.*' - '.*' - runas: rabbitmq � N)�CommandExecutionErrorc C s t jj�d�r dS dS )z- Only load if RabbitMQ is installed. ZrabbitmqctlT)FzCommand not found: rabbitmqctl)�salt�utils�path�which� r r �M/opt/saltstack/salt/lib/python3.10/site-packages/salt/states/rabbitmq_user.py�__virtual__ s r c C s� |sdS |du r,z t d | |d�}W n ty+ } z t�d|� W Y d}~dS d}~ww dddd�}d}|D ]1}|�� D ]*\}} ||v rd| d | d | d d�} || }| |krc||kra| |kraq<d}q<d}q<q6|S )zG Check whether Rabbitmq user's permissions need to be changed. FN�rabbitmq.list_user_permissions��runas� Error: %s� �Z configure�write�readr � � T)�__salt__r �log�error�items)�nameZnewpermsr �existing�errZempty_permsZperm_need_changeZvhost_perms�vhost�perms� new_permsZexisting_vhostr r r �_check_perms_changes) s2 ����r c C sN zt td |d�| �W S ty& } zt�d|� g W Y d}~S d}~ww )z9 Whether Rabbitmq user's tags need to be changed zrabbitmq.list_usersr r N)�listr r r r )r r r r r r �_get_current_tagsK s ��r Fr c C sx | ddi d�}z t d | |d�}W n ty, } zd|� �|d<