File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/__pycache__/rpmbuild_pkgbuild.cpython-310.pyc
Back
o ;j�a � @ sX d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl ZddlZ ddlZ ddlZ ddlZ ddlmZmZ dZzddlZddlZ dZW n eyY Y nw e�e�ZdZdd� Zd(d d�Zd(dd �Zd)dd�Zd*dd�Z dd� Z!d)dd�Z"dd� Z#dd� Z$dd� Z%dd� Z& d+dd �Z' !d,d"d#�Z( $ %d-d&d'�Z)dS ).z� RPM Package builder system .. versionadded:: 2015.8.0 This system allows for all of the components to build rpms safely in chrooted environments. This also provides a function to generate yum repositories This module implements the pkgbuild interface � N)�CommandExecutionError�SaltInvocationErrorFTZpkgbuildc C sP d} g d�}|D ] }t jj�|�sd} nqtr&| s&t�dd�dv r$tS dS dS )zR Confirm this module is on a RPM based system, and has required utilities F)Zgpg�rpm�rpmbuild�mockZ createrepoT� os_family)�RedHatZSuser )Fz�The rpmbuild module could not be loaded: requires python-gnupg, gpg, rpm, rpmbuild, mock and createrepo utilities to be installed)�salt�utils�path�which�HAS_LIBS� __grains__�get�__virtualname__)Zmissing_utilZ utils_reqdZ named_util� r �R/opt/saltstack/salt/lib/python3.10/site-packages/salt/modules/rpmbuild_pkgbuild.py�__virtual__- s �r �rootc C s� t j�d| �}t j�|d�}t j�|�std || dd� t j�|d�}t j�|�s4td || dd� t j�|d�}tjj� |d��+}|� tjj�d|� d ��� |� d � |� d� |� d� |� d � W d � dS 1 sqw Y dS )z= Create the .rpmmacros file in user's home directory �~r �file.makedirs_permsr ��name�user�group� .rpmmacros�wz %_topdir � z%signature gpg z %_source_filedigest_algorithm 8 z %_binary_filedigest_algorithm 8 z#%_gpg_name packaging@saltstack.com N) �osr � expanduser�join�isdir�__salt__r r �filesZfopen�writeZstringutilsZto_str)�runas�homeZrpmbuilddirZmockdir� rpmmacrosZafiler r r �_create_rpmmacrosF s "�r( c C s>