File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/salt/states/__pycache__/vault.cpython-310.pyc
Back
o ;j� � @ s: d Z ddlZddlZe�e�Zdd� Zdd� Zdd� ZdS ) z� States for managing Hashicorp Vault. Currently handles policies. Configuration instructions are documented in the execution module docs. :maintainer: SaltStack :maturity: new :platform: all .. versionadded:: 2017.7.0 � Nc C s� d| � �}t d d|�}z"|jdkrt| ||�� d �W S |jdkr(t| |�W S |�� W d S tyJ } z| i dd|� �d �W Y d }~S d }~ww )a� Ensure a Vault policy with the given name and rules is present. name The name of the policy rules Rules formatted as in-line HCL .. code-block:: yaml demo-policy: vault.policy_present: - name: foo/bar - rules: | path "secret/top-secret/*" { policy = "deny" } path "secret/not-very-secret/*" { policy = "write" } �v1/sys/policy/�vault.make_requestZGET�� �rulesi� FzFailed to get policy: ��name�changes�result�commentN)� __utils__�status_code�_handle_existing_policy�json�_create_new_policyZraise_for_status� Exception)r r �url�response�e� r �E/opt/saltstack/salt/lib/python3.10/site-packages/salt/states/vault.py�policy_present s ���r c C s| t d r| | d|d�id dd�S d|i}d| � �}td d ||d �}|jdvr2| i dd |j� �d�S | d| d |d�idd�S )N�test� )�old�newzPolicy would be createdr r r r �PUT�r �r �� FzFailed to create policy: TzPolicy was created)r r r r )�__opts__r r �reason)r r �payloadr r r r r r >