Current File : //usr/lib/python3/dist-packages/uaclient/entitlements/__pycache__/landscape.cpython-312.pyc
�

��gm����ddlZddlmZmZmZmZddlmZmZm	Z	m
Z
mZmZddl
mZddlmZmZej$ej&e��Zej,�ZGd�de�Zy)�N)�Any�Dict�Optional�Tuple)�api�event_logger�
exceptions�messages�system�util)�
UAEntitlement)�ApplicabilityStatus�ApplicationStatusc	���eZdZdZej
ZejZejjZejZ
defd�Zdefd�Zdej$defd�Zdej$defd�Zdeeeej2ffd�Zdeeeej2ff�fd	�Zdeeeej2ffd
�Z	ddeee fdeee fd
edef�fd�
Z!�xZ"S)�LandscapeEntitlement�	landscape�returnc��y�N����selfs �A/usr/lib/python3/dist-packages/uaclient/entitlements/landscape.py�enable_stepsz!LandscapeEntitlement.enable_steps����c��yrrrs r�
disable_stepsz"LandscapeEntitlement.disable_stepsrr�progressc	���dg|jz}|j�s
d|vr|dgz
}tjd|�|j	tjtjjdj|�����	tj||j���y
#tj$r�}tj|�|j�sq|j!d|j"j%��tj&|j(j%�|j"j%����Yd}~y	d}~wwxYw)N�landscape-config�--silentz
Executing: %r� ��command)�pipe_stdouterr�info)�stdout�stderrFT)�
extra_args�is_interactive�LOG�debugr r�redact_sensitive_logsr
�EXECUTING_COMMAND�format�joinr�subpr	�ProcessExecutionError�	exception�emitr*�strip�LandscapeConfigFailedr)�rr �cmd�es    r�_perform_enablez$LandscapeEntitlement._perform_enables��!�"�T�_�_�4���&�&�(�Z�s�-B��J�<��C��	�	�/�3�'�����&�&��*�*�1�1�#�(�(�3�-�1�H�
�	
�
		��K�K���0G�0G�0I�,I�J����/�/�	��M�M�!���*�*�,��
�
�f�a�h�h�n�n�&6�7� �6�6��8�8�>�>�+�A�H�H�N�N�4D�����	�s�&B:�:E-�
BE(�(E-c��ddg}|jtjjdj	|����	tj|�|jdtj�y#tj$rH}tj|�|jdt|�j��Yd}~�wd}~wwxYw)Nr"z	--disabler$r%r(T)r r
r0r1r2rr3r	r4r-�errorr6�strr7�LANDSCAPE_CONFIG_REMAINSr9s    r�_perform_disablez%LandscapeEntitlement._perform_disable3s���!�;�/������&�&�-�-�c�h�h�s�m�-�D�	
�	2��K�K���
	�
�
�f�h�?�?�@���
�/�/�	2��I�I�a�L��M�M�&�#�a�&�,�,�.�1�1��	2�s�A:�:C�
>C�Cc��|j�r'tjd�rtjdfStj
tjfS)Nzlandscape-client)�are_required_packages_installedr�is_systemd_unit_activer�ENABLED�DISABLEDr
�LANDSCAPE_SERVICE_NOT_ACTIVErs r�application_statusz'LandscapeEntitlement.application_statusBsN��
�0�0�2��-�-�.@�A�%�-�-�t�4�4�"�*�*��5�5��
rc�R��t�|��}|dtjk(r�|jdjdi�}|jdd�}t
j�j}|jr&|�$||vr tjtjfS|S)Nr�entitlement�affordances�series)�super�applicability_statusr�INAPPLICABLE�entitlement_cfg�getr�get_release_inforL�affordance_check_seriesr
�LANDSCAPE_INAPPLICABLE)rrN�
affordance�affordance_series�current_series�	__class__s     �rrNz)LandscapeEntitlement.applicability_statusPs���� %�w�;�=����"�&9�&F�&F�F��-�-�m�<�@�@��r��J�!+���x�� >��#�4�4�6�=�=�N��,�,�%�1�"�*;�;�(�4�4��3�3���$�#rc��tj�r	tjgd��yy#tj
$rdtjfcYSwxYw)N)r"z--is-registeredr#T)FN)r�we_are_currently_rootrr3r	r4r
�LANDSCAPE_NOT_REGISTEREDrs r�enabled_warning_statusz+LandscapeEntitlement.enabled_warning_statusesV��
�%�%�'�
����G����
�3�3�
���5�5���
�s�/�%A�A�orig_access�deltas�allow_enablec�(��t�|�||d��S)NF)r_)rM�process_contract_deltas)rr]r^r_rXs    �rraz,LandscapeEntitlement.process_contract_deltasws#����w�.���e�/�
�	
r)F)#�__name__�
__module__�__qualname__�namer
�LANDSCAPE_TITLE�title�LANDSCAPE_DESCRIPTION�description�urls�LANDSCAPE_HOME_PAGE�help_doc_url�LANDSCAPE_HELP_TEXT�	help_text�intrrr�ProgressWrapper�boolr<rArrr�NamedMessagerHrrNr\rr?rra�
__classcell__)rXs@rrrs/����D��$�$�E��0�0�K��=�=�4�4�L��,�,�I��c���s����(;�(;����.
��)<�)<�
��
��	� �(�8�+@�+@�"A�A�	B��$�	�"�H�X�-B�-B�$C�C�	D�$�*�	�t�X�h�3�3�4�4�	5��,#�	

��#�s�(�^�

��S�#�X��

��	

�

�

�

rr)�logging�typingrrrr�uaclientrrr	r
rr�uaclient.entitlements.baser
�(uaclient.entitlements.entitlement_statusrr�	getLogger�replace_top_level_logger_namerbr-�get_event_logger�eventrrrr�<module>r}s\���-�-�J�J�4��
�g���:��:�:�8�D�E��%��%�%�'��r
�=�r
r