File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/salt/spm/pkgfiles/__pycache__/local.cpython-310.pyc
Back
o ;jB � @ s� d Z ddlZddlZddlZddlZddlZddlZe�e �Z dZdd� Zddd�Z ddd �Zdd d�Zddd �Zdd� Zdd� ZdS )zj This module allows SPM to use the local filesystem to install files for SPM. .. versionadded:: 2015.8.0 � N)�c�d�g�l�r�s�mc K sJ t d }t d }t d }|||fD ] }tj�|�st�|� q|||d�S )z2 Initialize the directories for the files �formula_path�pillar_path�reactor_path)r r r )�__opts__�os�path�exists�makedirs)�kwargsr r r Zdir_� r �K/opt/saltstack/salt/lib/python3.10/site-packages/salt/spm/pkgfiles/local.py�init s ��r c C s\ |du rt � }tt�d��}g }|D ]�}|�� rq|�d| �}|j�| � d�d�}|�|�s/q|j�| � d��rV|dv rLtj � tjj |d|�d d��} nJtj � |d |�} n@|j| � d�krm| � d�}tj � |d |�} n)| �d�r|tj � tjj|�} n| �d�r�tj � |d |j�} n tj � |d |j�} tj �| �r�|�| � td s�t�d| � q|S )z1 Check the filesystem for existing files N� spm_node_type� top_level_dir�/� z/_�ZmasterZminion�extmods�_r �/pillar.example� .sls.origr �-conf�-reactorr �forcez!%s already exists, not installing)r �strr �get�isdir�name�replace� startswithr r �join�salt�syspaths� CACHE_DIR�endswith� CONFIG_DIRr �append�log�error) �packageZ pkg_files�formula_def�conn� node_typeZexisting_files�member�tld�new_name�out_filer r r �check_existing, sD � �r8 c C s0 |j | krdS |du rt� }tt�d��}|d }|�d| �}|j �| � d�dd�}|�|�sF|�d �sF|�d �sF|�d�sFt�d|� dS |�d g �D ]5} d} t D ]}| �|� d��rl| � dd�d } | � dd�d } qR| r�|| kr�| dv r|td }qL| dv r� qL|j �| � tj� d ��r�|dv r�|�| � tj� d �d�|_ tj �tjj|d�}n>|�| � tj� �d�|_ n1|j | � d�kr�| � d�|_ |d }n| �d�r�|j �| � d�d�|_ tjj}n | �d�r�td }|j � d�}t|�dk�r|d |d k�rd�|dd� �|_ t�d|j |� |�||� |S )z2 Install a single file to the file system FNr r r r r � r zpillar.exampleZREADMEz-%s not in top level directory, not installing�files�|r )r r r r r Z spm_share_dir)r r r r r r r r r r z Installing package file %s to %s)r$ r r! r r"