File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/states/__pycache__/svn.cpython-310.pyc
o
�N�gQ � @ s� d Z ddlZddlZddlZddlmZ ddlmZmZ e� e
�Zdd� Z dd d
�Z
ddd�Z dd
d�ZdS )a�
Manage SVN repositories
=======================
Manage repository checkouts via the svn vcs system. Note that subversion must
be installed for these states to be available, so svn states should include a
requisite to a pkg.installed state for the package which provides subversion
(``subversion`` in most cases). Example:
.. code-block:: yaml
subversion:
pkg.installed
http://unladen-swallow.googlecode.com/svn/trunk/:
svn.latest:
- target: /tmp/swallow
� N)�
exceptions)�_fail�
_neutral_testc C s t jj�d�r dS dS )z'
Only load if svn is available
�svnT)FzCommand not found: svn)�salt�utils�path�which� r
r
�C/opt/saltstack/salt/lib/python3.10/site-packages/salt/states/svn.py�__virtual__ s r FTc
C s� | ddi d�}
|st |
d�S d}tj�|�\}}
t� }tj�|�r0tj�|�s0t |
d|� d��S td r�|r;t|�}nd }tj�|�sLt |
d
�
||��S ztd |||||dd
�}d}W n tj
yn t |
|� d�� Y S w |d d }|d|� d|� �f7 }|r�|d7 }| r�|d| f7 }t| |||||g|�R � }t |
|�S ztd |||||dd
�}d}W n
tj
y� Y nw |r�|dt|�f7 }|r�|d7 }|du r�|d7 }|r�|d7 }| r�|d| f7 }|dk�rt| ||
|||g|�R � }|d d }td |d|||dd�d d }||k�r|� d|� �|
d d<