Edit File: base.cpython-311.opt-1.pyc
� 5/9e� � � � d dl mZ d dlZd dlmZ d dlmZmZmZ d dl m Z d dlmZ d dl mZ d dlmZmZmZmZmZmZmZ d d lmZmZ d d lmZ G d� de� � ZdS ) � )�absolute_importN)�abstractmethod)�List�Dict�Optional)�cpapi)� is_ubuntu)�GroupInfoReader)�run_command�ExternalProgramFailed�is_package_installed�get_package_db_errors�get_passenger_package_name�is_ea4�get_cl_version)�convert_package_version�setup_logger)�InstallationFailedExceptionc �� � e Zd ZdZdZdZd� Zd� Zd� Zd� Z d� Z d � Zd � Zd� Z d� Zd � Zed� � � Zed� � � Zed� � � Zed� � � Zed� � � ZdS )�WizardInstallerz2 General interface for modules installers � Nc �T � t d| j j z | j � � | _ d S )Nzwizard.)r � __class__�__name__�LOG_FILE� app_logger��selfs �py/clwizard/modules/base.py�__init__zWizardInstaller.__init__) s# � �&�y�4�>�3J�'J�D�M�Z�Z����� c � � | j � d� � | j � dd� |� � � � t |� � }| j � d� � | j � |� � nT# t $ rG}| j � d� � | j � t |� � � � � d}~ww xY w| j � d� � |S )z!Run external tool and log resultsz<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zExecuting command %s...� z3...external command successfully ended with output:zL...external command failed, see following lines for tracebacks, errors, etc.Nz<------------------------------------------------------------)r �info�joinr r �error�str)r �cmd�output�errs r �_run_commandzWizardInstaller._run_command, s � � ����X�&�&�&�����%�s�x�x��}�}� 6� 6� 6� )� ��%�%�F� �O� � �E� G� G� G��O� � ��(�(�(�(�� %� � � ��O� � �5� 6� 6� 6� �O�!�!�#�c�(�(�+�+�+������ ���� ����X�&�&�&�� s � B � C�AC�Cc � � t � � }|r0d|� d|� �}| j � |� � t � � �t |� � S )z!Check if package exists on serverzCan't check package z presence. Errors: )r r r&