Hacked By AnonymousFox

Current Path : /opt/cloudlinux/venv/lib/python3.11/site-packages/clwizard/modules/__pycache__/
Upload File :
Current File : //opt/cloudlinux/venv/lib/python3.11/site-packages/clwizard/modules/__pycache__/nodejs.cpython-311.pyc

�

��f���ddlmZddlZddlmZmZddlmZddlm	Z	m
Z
ddlmZm
Z
ddlmZmZddlmZdd	lmZGd
�de��ZdS)�)�absolute_importN)�Dict�Iterable)�Feature)�ExternalProgramFailed�get_passenger_package_name)�CL_SELECTOR_BIN�MODULES_LOGS_DIR)�InstallationFailedException�PackageMissingError)�WizardInstaller)�installed_interpreters_listc��eZdZej�ed��Zej	Z
d�Zd�Zd�Z
d�Zed���Zed���Zd�Zd	�Zd
�ZdS)�NodejsInstallerz
nodejs.logc	���|j�d|��	|�tdddd|dg��dS#t$r}t��|�d}~wwxYw)Nz,trying to set default NodeJS version as '%s'�set�
--interpreter�nodejsz--default-version�--json��
app_logger�info�_run_commandr	rr)�self�version�es   �N/opt/cloudlinux/venv/lib64/python3.11/site-packages/clwizard/modules/nodejs.py�_set_default_nodejs_versionz+NodejsInstaller._set_default_nodejs_versions�������K�W�U�U�U�
	7����#��#��'����

�

�

�

�

��%�	7�	7�	7�-�/�/�Q�6�����	7�����!A�
A�
A�Ac	���|j�d|��	|�tdddd|dg��dS#t$r}t��|�d}~wwxYw)Nz(trying to set NodeJS Selector state '%s'rrrz--selector-statusrr)r�statusrs   r�_set_cloudlinux_selector_statusz/NodejsInstaller._set_cloudlinux_selector_status,s�������G��P�P�P�
	7����#��#��'����

�

�

�

�

��%�	7�	7�	7�-�/�/�Q�6�����	7���rc���|j�dd�|����d�|D��}	|j|�dS#t$r}t��|�d}~wwxYw)Nz%Trying to install NodeJS versions: %sz, c��g|]}d|z��S)z
alt-nodejs�)�.0rs  r�
<listcomp>z<NodejsInstaller._install_nodejs_versions.<locals>.<listcomp>Bs��F�F�F�'�|�g�-�F�F�F�)rr�join�_install_groupsrr)r�versions�group_namesrs    r�_install_nodejs_versionsz(NodejsInstaller._install_nodejs_versions>s�������D�d�i�i�PX�FY�FY�Z�Z�Z�F�F�X�F�F�F��	7� �D� �+�.�.�.�.��$�	7�	7�	7�-�/�/�Q�6�����	7���s�
A�
A&�A!�!A&c�j�|�d��}|�dg��}|r-||vr)|j�d|��t���|���|�|��|�d���|r|�|��dSdS)N�default_versionr+zWVersion %s that was specified to be set as default must be included in install_versions�enabled)r!)�getr�errorr�_install_passengerr-r"r)r�optionsr/�install_versionss    r�run_installationz NodejsInstaller.run_installationHs���!�+�+�&7�8�8��"�;�;�z�2�6�6���	0��6F�F�F��O�!�!�7��
�
�
�
.�/�/�/����!�!�!��%�%�&6�7�7�7��,�,�I�,�>�>�>��	>��,�,�_�=�=�=�=�=�	>�	>r(c�
�ddhS)Nr/r+r%)�clss r�supported_optionsz!NodejsInstaller.supported_options[s
��!�:�.�.r(c�l�	ddlm}n"#t$r}td��|�d}~wwxYw|d��S)Nr)�get_default_version�
lvemanagerr)�clselect.clselectctlr;�ImportErrorr)r;rs  r�_nodejs_get_default_versionz+NodejsInstaller._nodejs_get_default_version_s\��	;�@�@�@�@�@�@�@���	;�	;�	;�%�l�3�3��:�����	;����"�"�8�,�,�,s�	�
(�#�(c���ttd�td��D����o4|�t	����o|�����S)a
        Checks that nodejs selector is ready to work
        All configurations were done:
        - At least one interpreter version is installed
        - Passenger is installed
        - Nodejs selector is enabled
        :return: bool value configured or not
        c3�$K�|]}|jV��dS)N)�	installed�r&�its  r�	<genexpr>z9NodejsInstaller._is_already_configured.<locals>.<genexpr>ss$����M�M����M�M�M�M�M�Mr(r)�bool�anyr�_is_package_installedr�_is_nodejs_selector_enabled)rs r�_is_already_configuredz&NodejsInstaller._is_already_configuredhsj����M�M�'B�8�'L�'L�M�M�M�M�M�
3��*�*�+E�+G�+G�H�H�
3��0�0�2�2�
�
�	
r(c��td��}d�|D��}|���|���||�d��d�d�S)z�
        Return dictionary with two required keys: installed and options.
        This will be used by lvemanager UI to properly display wizard.
        rc�*�g|]}|j�	|j��Sr%)rBrrCs  rr'z2NodejsInstaller.initial_status.<locals>.<listcomp>s!��U�U�U�R���U�b�j�U�U�Ur()r/�installed_versions�available_versions)�already_configuredr4)rrJr?�_get_available_versions)r�interpreters_listrMs   r�initial_statuszNodejsInstaller.initial_statusxsr��8��A�A��U�U�3D�U�U�U��"&�"=�"=�"?�"?�#'�#C�#C�#E�#E�&8�&*�&B�&B�8�&L�&L���
�
�	
r(c��|j�d��	ddlm}|d�����dS#t
$rYdSwxYw)zN
        Return True if Nodejs Selector enabled
        :return: bool
        z$trying to get NodeJS Selector state.r)�CloudlinuxSelectorLibr�selector_enabledF)rr�clselector.selectorlibrT�get_nodejs_selector_statusr>)rrTs  rrIz+NodejsInstaller._is_nodejs_selector_enabled�sw��	
����C�D�D�D�	�D�D�D�D�D�D�(�(��2�2�M�M�O�O�Pb�c�c���	�	�	��5�5�	���s�(A�
A�AN)�__name__�
__module__�__qualname__�os�pathr)r
�LOG_FILEr�NODEJS_SELECTOR�_REQUIRED_CL_COMPONENT_SUPPORTrr"r-r6�classmethodr9�staticmethodr?rJrRrIr%r(rrrs��������w�|�|�,�l�;�;�H�%,�%<�"�7�7�7�$7�7�7�$7�7�7�>�>�>�&�/�/��[�/��-�-��\�-�
�
�
� 
�
�
�"����r(r)�
__future__rr[�typingrr�clcommon.constr�clcommon.utilsrr�clwizard.constantsr	r
�clwizard.exceptionsrr�clwizard.modules.baser
�clwizard.utilsrrr%r(r�<module>rjs���'�&�&�&�&�&�	�	�	�	�!�!�!�!�!�!�!�!�"�"�"�"�"�"�L�L�L�L�L�L�L�L�@�@�@�@�@�@�@�@�P�P�P�P�P�P�P�P�1�1�1�1�1�1�6�6�6�6�6�6������o�����r(

Hacked By AnonymousFox1.0, Coded By AnonymousFox