0x1949 Team - FAZEMRX - MANAGER
Edit File: subp.cpython-310.pyc
o ���f�1 � @ s d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z ddl mZmZm Z e�e�Ze�dddg�Zd d � ZG dd� de�Zd e ee ee f fdd�Zdddddddddd� d e eeee ee f defdd�Zddd�Zddee fdd�Zdd� Zd dd�ZdS )!z9Common utility functions for interacting with subprocess.� N)�ENOEXEC)� TextIOWrapper)�List�Optional�Union� SubpResult�stdout�stderrc C s� g }g }g }|D ]A}t |t�r)|d du r|dd� }n(|d | kr(|�d| � nt |t�r<|�| � d��s;|�|� n|�t|�� q|�|� q|rWt�d| | d�|�� |ret dj | d�|�d���|S ) a� Ensure user-provided commands start with base_command; warn otherwise. Each command is either a list or string. Perform the following: - If the command is a list, pop the first element if it is None - If the command is a list, insert base_command as the first element if not present. - When the command is a string not starting with 'base-command', warn. Allow flexibility to provide non-base-command environment/config setup if needed. @commands: List of commands. Each command element is a list or string. @return: List of 'fixed up' commands. @raise: TypeError on invalid config item type. r N� � z Non-%s commands in %s config: %s� zHInvalid {name} config. These commands are not a string or list: {errors})�name�errors)� isinstance�list�insert�str� startswith�append�LOG�warning�join� TypeError�format)�base_command�commands�warningsr �fixed_commands�command� r �0/usr/lib/python3/dist-packages/cloudinit/subp.py�prepend_base_command s@ � �� ��r! c @ sZ e Zd ZdZdZ d dd�Zdd� Z dd eee f d eee f fdd�Z dS )�ProcessExecutionErrorzr%(description)s Command: %(cmd)s Exit code: %(exit_code)s Reason: %(reason)s Stdout: %(stdout)s Stderr: %(stderr)s�-Nc C s |p| j | _|r|| _n |s|tkrd| _nd| _t|t�r |n| j | _|s1|d u r-| j n|| _n| �|�| _|sD|d u r@| j n|| _ n| �|�| _ |pN| j | _ |rU|| _| j| � | j�| � | j�| � | j�| � | j �| � | j�| � | j �d� }t�| |� d S )Nz(Exec format error. Missing #! in script?z'Unexpected error while running command.)�description�cmd� exit_coder r �reason)� empty_attrr% r$ r r �intr&