File: //opt/alt/python37/lib/python3.7/site-packages/clwizard/modules/__pycache__/base.cpython-37.pyc
B
qo]�A��� @ s� d dl mZ d dlZd dlmZ d dlmZmZmZ d dl m
Z
d dlmZ d dl
mZ d dlmZmZmZmZmZmZmZ d d lmZ d d
lmZmZ G dd� de�ZdS )
� )�absolute_importN)�abstractmethod)�Dict�List�Optional)�cpapi)�GroupInfoReader)� is_ubuntu)�ExternalProgramFailed�get_cl_version�get_package_db_errors�get_passenger_package_name�is_ea4�is_package_installed�run_command)�InstallationFailedException)�convert_package_version�setup_loggerc @ s� e Zd ZdZdZdZdd� Zd"dd�Zdd � Zd
d� Z dd
� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zedd� �Zedd� �Zedd� �Zedd� �Zed d!� �ZdS )#�WizardInstallerz2
General interface for modules installers
� Nc C s t d| jj | j�| _d S )Nzwizard.)r � __class__�__name__�LOG_FILE�
app_logger)�self� r �py/clwizard/modules/base.py�__init__( s zWizardInstaller.__init__c
C s� | j �d� | j �dd�|�� yt||d�}W n@ tk
rp } z"| j �d� | j �t|�� � W dd}~X Y nX | j �d� | j �|� | j �d� |S ) z!Run external tool and log resultsz<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zExecuting command %s...� )Zenv_datazP...external command failed, see the following lines for tracebacks, errors, etc.Nz3...external command successfully ended with output:z<------------------------------------------------------------)r �info�joinr r
�error�str)r �cmd�cmd_env�output�errr r r �_run_command+ s zWizardInstaller._run_commandc C s4 t � }|r,d|� d|� �}| j�|� t� �t|�S )z!Check if package exists on serverzCan't check package z presence. Errors:
)r r r! r r )r Zpackage_nameZ
error_messageZlog_messager r r �_is_package_installed>