https://t.me/AnonymousX5
Server : Apache
System : Linux cvar2.toservers.com 3.10.0-962.3.2.lve1.5.73.el7.x86_64 #1 SMP Wed Aug 24 21:31:23 UTC 2022 x86_64
User : njnconst ( 1116)
PHP Version : 8.4.18
Disable Function : NONE
Directory :  /opt/alt/python37/lib/python3.7/site-packages/clwizard/modules/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/alt/python37/lib/python3.7/site-packages/clwizard/modules/__pycache__/base.cpython-37.pyc
B

�c��@s�ddlmZddlZddlmZddlmZmZmZddl	m
Z
ddlmZddl
mZddlmZmZmZmZmZmZmZdd	lmZmZdd
lmZGdd�de�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@s�eZdZdZdZdZdd�Zdd�Zdd	�Zd
d�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zedd��Zedd��Zedd��Zedd��Zed d!��ZdS)"�WizardInstallerz2
    General interface for modules installers
    �NcCstd|jj|j�|_dS)Nzwizard.)r�	__class__�__name__�LOG_FILE�
app_logger)�self�r�F/opt/alt/python37/lib/python3.7/site-packages/clwizard/modules/base.py�__init__)szWizardInstaller.__init__c
Cs�|j�d�|j�dd�|��yt|�}Wn@tk
rl}z"|j�d�|j�t|���Wdd}~XYnX|j�d�|j�|�|j�d�|S)z!Run external tool and log resultsz<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zExecuting command %s...� zL...external command failed, see following lines for tracebacks, errors, etc.Nz3...external command successfully ended with output:z<------------------------------------------------------------)r�info�joinr
r�error�str)r�cmd�output�errr�_run_command,szWizardInstaller._run_commandcCs0t�}|r(d||f}|j�|�t��t|�S)z!Check if package exists on serverz+Can't check package %s presence. Errors:
%s)r
rr!rr)rZpackage_nameZ
error_messageZlog_messagerrr�_is_package_installedAsz%WizardInstaller._is_package_installedcGst�r|j|�S|j|�SdS)z!Install a package and log resultsN)r�_install_apt_package�_install_yum_package)r�packagesrrr�_install_packageLs
z WizardInstaller._install_packagecGs |r|�dddgt|��SdS)z&Install an apt package and log resultszapt-get�installz-yN)r&�list)rr*rrrr(Tsz$WizardInstaller._install_apt_packagecGs |r|�dddgt|��SdS)z%Install a yum package and log results�yumr,z-yN)r&r-)rr*rrrr)\sz$WizardInstaller._install_yum_packagecGst�r|j|�S|j|�SdS)z�
        Install a package group.
        At the moment, DEB metapackages are not supported, and
        provided names are simply installed as normal packages.
        This will change in the future.
        N)rr(�_install_yum_groups)r�groupsrrr�_install_groupsds
zWizardInstaller._install_groupscGs |r|�dddgt|��SdS)z.Install package group with yum and log resultsr.Zgroupinstallz-yN)r&r-)rr0rrrr/qsz#WizardInstaller._install_yum_groupscCsjd}tj�|�rdSt�pd}d|kr,d}nd|kr:d}ntd��d|�d�}|j�d	|�|�|�dS)
z�
        Check whether cloudlinux-ea4.repo is present and install it if not.
        It's required only on EA4 to install proper Passenger package
        z$/etc/yum.repos.d/cloudlinux-ea4.repoNZUnknown�7�6z.Failed to get the distribution's major versionzIhttps://repo.cloudlinux.com/cloudlinux/EA4/cloudlinux-ea4-release-latest-z.noarch.rpmzFUnable to find cloudlinux-ea4 repo. Trying to install it using url: %s)�os�path�existsrrrrr))rZcl_ea4_repofileZdistZdist_maj_verZpackage_urlrrr�_ensure_cl_ea4_repo_existsys
z*WizardInstaller._ensure_cl_ea4_repo_existsc
Cs`t�r|��t�}|j�d|�y|�|�Wn*tk
rZ}zt�|�Wdd}~XYnXdS)zb
        Install proper passenger package for Selectors if it's not yet
        installed
        z'Trying to install Passenger package: %sN)rr7rrrr)rr)rZ	passengerZ
extern_failedrrr�_install_passenger�sz"WizardInstaller._install_passengercCsJt�|�}g}|dkrdnd}x&|��D]}|�t|d|d��q(W|S)z�
        Get a list of available Python, NodeJS, PHP or Ruby module versions.
        :param group: - group name, e.g: python
        :return: list of available versions
        Znodejs���version)Zversion_size)r	Zget_group_info�values�appendr)�groupZavailable_groups_infoZversionsZver_sizeZ
group_datarrr�_get_available_versions�s
z'WizardInstaller._get_available_versionscCs
t��dS)N)�NotImplementedError)rZoptionsrrr�run_installation�sz WizardInstaller.run_installationcCst�S)N)�set)�clsrrr�supported_options�sz!WizardInstaller.supported_optionscCs
t��dS)z�
        Method that returns dictionary with two required keys:
        {installed: True|False and options: {...}]
        This will be used by lvemanager to properly display wizard.
        N)r@)rrrr�initial_status�szWizardInstaller.initial_statuscCs|jdkrdSt�|j�S)z9
        Checks whether we must
        :return:
        NT)�_REQUIRED_CL_COMPONENT_SUPPORTrZis_panel_feature_supported)rCrrr�is_supported_by_control_panel�s
z-WizardInstaller.is_supported_by_control_panel)r�
__module__�__qualname__�__doc__rrFrr&r'r+r(r)r1r/r7r8�staticmethodr?rrA�classmethodrDrErGrrrrr!s$

r)Z
__future__rr4�abcr�typingrrrZclcommonrZclcommon.lib.cleditionrZclcommon.group_info_readerr	Zclcommon.utilsr
rrr
rrrZclwizard.utilsrrZclwizard.exceptionsr�objectrrrrr�<module>	s$


https://t.me/AnonymousX5 - 2025