????
Your IP : 3.22.234.133
�
���ߨ�n����ddlZddlZddlmZddlmZddlmZmZddl m
Z
ddlmZm
Z
ddlmZdZd Zd
ZdZdZd
efd�Zdd�Zdd�Zdd�Zdd�Zd�Zd�Zd�Zedkre��dSdS)�N)�get_python_lib)�Path)�ALT_PHP_REDIS_ENABLE_UTILITY�INSTALL_CACHING_HOOKS_UTILITY)�OBJECT_CACHE_FEATURE)�any_suite_allowed_on_server�is_module_allowed_for_user)�is_wpos_supportedz//etc/dnf/universal-hooks/multi_pkgs/transactionz-/etc/yum/universal-hooks/multi_pkgs/posttransz//etc/apt/universal-hooks/multi_pkgs/Post-Invokez%/usr/share/cloudlinux/hooks/listeners)zwpos_modify_user_hook.py�returnc��d}td�����rtt|��Std�����rtt|��Stt|��S)zU
Get path to yum universal hooks directory
with alt-php*-pecl-ext hooks.
zalt-php__WILDCARD__-pecl-extz /etc/apt/z /etc/dnf/)r�exists�UNIVERSAL_HOOK_PATH_APT�UNIVERSAL_HOOK_PATH_DNF�UNIVERSAL_HOOK_PATH_YUM)�dir_names �py/clwpos/wpos_hooks.py�get_universal_hook_alt_php_pathr"st��
.�H��K�����!�!�7��+�X�6�6�6�
�k� � � !� !� #� #�7��+�X�6�6�6��'��2�2�2�c��t��}|�dd���tt��j}t||��}|���s|�t��dSdS)zx
Install yum universal hook for configuring PHP redis
after alt-php*-pecl-ext package is installed/updated.
T)�parents�exist_okN)r�mkdirrr�namer
�
symlink_to��
hook_dir_path� hook_name�hook_full_paths r�"install_yum_universal_hook_alt_phpr/s���
4�5�5�M�����t��4�4�4��1�2�2�7�I��-��3�3�N�� � �"�"�@��!�!�">�?�?�?�?�?�@�@rc���t��}tt��j}t||��}|���r|���dSdS)zB
Remove yum universal hook for configuring PHP redis ext.
N)rrrr�
is_symlink�unlinkrs r�$uninstall_yum_universal_hook_alt_phpr#<se��4�5�5�M��1�2�2�7�I��-��3�3�N�� � �"�"� ��������� � rc��tjtdgd���tt ��dd��}t
D]�}tt|��}t||��}dt|�����vs#dt|�����vr|� ��|�
��s)|�
��r|�|����dS) z#
Install panel WPOS hooks.
z-iT��capture_output�clwpos�hooks� lve_utilsz python3.7N)�
subprocess�runrrr�
wpos_hooks�HOOKS_LISTENERS_DIR�str�resolver"r
r)�lve_utils_hooks_dir�hook�listeners_hook_path�lve_utils_hook_paths r�install_panel_hooksr4Hs���N�1�4�8��N�N�N�N��~�/�/��7�C�C���@�@��"�#6��=�=��"�#6��=�=���#�1�9�9�;�;�<�<�<�<��s�#6�#>�#>�#@�#@�A�A�A�A��&�&�(�(�(�"�)�)�+�+� @�0C�0J�0J�0L�0L� @��*�*�+>�?�?�?��@�@rc���tjtdgd���tD]?}t t
|��}|���r|����@dS)z"
Remove panel WPOS hooks.
z-dTr%N)r*r+rr,rr-r!r")r1r2s r�uninstall_panel_hooksr6Zsp���N�1�4�8��N�N�N�N��)�)��"�#6��=�=���)�)�+�+� )��&�&�(�(�(��)�)rc��t��r@t��r4tt��rt ��t��dSdSdS�N)r
rr rrr4�rr�_install_hooksr:fsa������:�<�<��%�&:�;�;� 1�.�0�0�0����������rc�>�t��t��dSr8)r#r6r9rr�_uninstall_hooksr<ms ��(�*�*�*������rc�~�dtjvrt��dSdtjvrt��dSdS)zA
Install or uninstall panel and yum/dnf universal hooks.
z --installz--uninstallN)�sys�argvr:r<r9rr�mainr@rsJ���c�h��������� �#�(� "� "�������
#� "r�__main__)rN)r*r>�distutils.sysconfigr�pathlibr�clwpos.constantsrr�clwpos.optimization_featuresr�clwpos.feature_suitesrr �clwpos.utilsr
rrrr-r,rrr#r4r6r:r<r@�__name__r9rr�<module>rIs�������
�
�
�
�.�.�.�.�.�.���������������>�=�=�=�=�=���������+�*�*�*�*�*�K��I��K��=��
*�
�
3��
3�
3�
3�
3�
@�
@�
@�
@� � � � �@�@�@�@�$ )� )� )� )�������
����z����D�F�F�F�F�F��r