HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ip-172-26-0-120 6.17.0-1009-aws #9~24.04.2-Ubuntu SMP Fri Mar 6 23:50:29 UTC 2026 x86_64
User: ubuntu (1000)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/sos/policies/distros/__pycache__/ubuntu.cpython-312.pyc
�

O6uf�
��^�ddlZddlmZddlmZddlmZddlmZddl	m
Z
Gd�de�Zy)	�N)�UbuntuPlugin)�DebianPolicy)�SnapPackageManager)�DpkgPackageManager)�MultiPackageManagerc�z��eZdZdZdZddgZdZdZdZdZ	dZ
		d�fd	�	Zedd
��Z
d�Z�fd�Zd
�Z�fd�Z�xZS)�UbuntuPolicy�Ubuntu�	Canonical)zCommunity Websitezhttps://www.ubuntu.com/)zCommercial Supportzhttps://www.canonical.comzb/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/sbin:/usr/local/bin:/snap/binz,https://files.support.canonical.com/uploads/�ubuntu�putc���t�|�||||��tttg|j
|��|_	|jjd�ddk(rd|_|xjtgz
c_
y#t$rY�&wxYw)N)�sysroot�init�
probe_runtime�remote_exec)�primary�	fallbacks�chrootr�	sosreport�pkg_manager�snapz	/snap/bin)�super�__init__rrrr�package_manager�pkg_by_name�sos_bin_path�	TypeError�valid_subclassesr)�selfrrrr�	__class__s     ��=/usr/lib/python3/dist-packages/sos/policies/distros/ubuntu.pyrzUbuntuPolicy.__init__!s����
����t�'4�%0�	�	2� 3�&�)�*��<�<�#�	 %���	��#�#�/�/��!�!.�0�39�:�$/��!�
	
���,��/���	�	��	�s�(B�	B�Bc��|r|j|vS	tdd�5}d|j�vcddd�S#1swYyxYw#t$rYywxYw)z[This method checks to see if we are running on Ubuntu.
           It returns True or False.�/etc/lsb-release�rr
NF)�distro�open�read�IOError)�cls�remote�fps   r"�checkzUbuntuPolicy.check7s\��
��:�:��'�'�	��(�#�.�
-�"��2�7�7�9�,�
-�
-�
-���	��	�s*�A�:�	A�A�A�A�	A�Ac��	tdd�5}|j�}|D]<}d|vs�t|jd�dj	��ccddd�S	ddd�y#1swYyxYw#t
tf$rYywxYw)z7 Returns the version stated in DISTRIB_RELEASE
        r$r%�DISTRIB_RELEASE�=�NF)r'�	readlines�float�split�stripr)�
ValueError)r r,�lines�lines    r"�dist_versionzUbuntuPolicy.dist_versionEs���	��(�#�.�
A�"������!�A�D�(�D�0�$�T�Z�Z��_�Q�%7�%=�%=�%?�@�@�	
A�
A�A�
A�
�
A�
����$�	��	�s?�A6�A*�,A*�	A6�A*�!A6�*A3�/A6�3A6�6B�Bc���|jj|j�r|j|jfSt
�|��S�N)�
upload_url�
startswith�_upload_url�_upload_user�_upload_passwordr�get_upload_https_auth)r r!s �r"rAz"UbuntuPolicy.get_upload_https_authRs@����?�?�%�%�d�&6�&6�7��%�%�t�'<�'<�=�=��7�0�2�2�c�n�|jj|j�ry|j�S)NzCanonical Support File Server)r<r=r>�get_upload_url)r s r"�get_upload_url_stringz"UbuntuPolicy.get_upload_url_stringXs,���?�?�%�%�d�&6�&6�7�2��&�&�(�(rBc�"��|jr%|jj|j�rP|js|jStj
j
|j�}|j|zSt�|�!�Sr;)	r<r=r>�upload_archive_name�os�path�basenamerrD)r �fnamer!s  �r"rDzUbuntuPolicy.get_upload_url^so������$�/�/�"<�"<�T�=M�=M�"N��+�+��'�'�'��G�G�$�$�T�%=�%=�>�E��#�#�e�+�+��w�%�'�'rB)NNTN)�)�__name__�
__module__�__qualname__r&�vendor�vendor_urls�PATHr>r?r@�_upload_methodr�classmethodr-r9rArErD�
__classcell__)r!s@r"r	r	sn���
�F�
�F�8�;��K�9�D�@�K��L����N�>B�!�0�,�����3�)�(�(rBr	)rH�sos.report.pluginsr�sos.policies.distros.debianr�"sos.policies.package_managers.snapr�"sos.policies.package_managers.dpkgr�sos.policies.package_managersrr	�rBr"�<module>r\s'��
�+�4�A�A�=�Q(�<�Q(rB