EVOLUTION-MANAGER
Edit File: ubuntu.cpython-36.opt-1.pyc
3 �f3 � @ sX d dl mZ d dlmZ d dlmZ d dlmZ d dlm Z d dl Z G dd� de�ZdS ) � )�UbuntuPlugin)�DebianPolicy)�SnapPackageManager)�DpkgPackageManager)�MultiPackageManagerNc sx e Zd ZdZdZddgZdZd Zd Zd Z dZ d� fdd� Zeddd��Z dd� Z� fdd�Zdd� Z� fdd�Z� ZS ) �UbuntuPolicy�UbuntuZ Canonical�Community Website�https://www.ubuntu.com/�Commercial Support�https://www.canonical.comz9/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/gamesz):/usr/local/sbin:/usr/local/bin:/snap/binz,https://files.support.canonical.com/uploads/ZubuntuZputNTc sv t t| �j||||d� tttg| j|d�| _y| jjd�d dkrJd| _ W n t k r` Y nX | jtg7 _d S )N)�sysroot�init� probe_runtime�remote_exec)ZprimaryZ fallbacks�chrootr Z sosreportZpkg_managerZsnapz /snap/bin) �superr �__init__r r r r Zpackage_managerZpkg_by_nameZsos_bin_path� TypeErrorZvalid_subclassesr )�selfr r r r )� __class__� �/usr/lib/python3.6/ubuntu.pyr ! s zUbuntuPolicy.__init__� c C sJ |r| j |kS y"tdd��}d|j� kS Q R X W n tk rD dS X dS )z[This method checks to see if we are running on Ubuntu. It returns True or False.z/etc/lsb-release�rr NF)�distro�open�read�IOError)�clsZremote�fpr r r �check7 s zUbuntuPolicy.checkc C sl yNt dd��:}|j� }x*|D ]"}d|krt|jd�d j� �S qW W dQ R X dS ttfk rf dS X dS )z7 Returns the version stated in DISTRIB_RELEASE z/etc/lsb-releaser ZDISTRIB_RELEASE�=� NF)r � readlines�float�split�stripr � ValueError)r r �lines�liner r r �dist_versionE s $zUbuntuPolicy.dist_versionc s, | j j| j�r| j| jfS tt| �j� S d S )N)� upload_url� startswith�_upload_url�_upload_user�_upload_passwordr r �get_upload_https_auth)r )r r r r1 R s z"UbuntuPolicy.get_upload_https_authc C s | j j| j�rdS | j� S d S )NzCanonical Support File Server)r, r- r. �get_upload_url)r r r r �get_upload_url_stringX s z"UbuntuPolicy.get_upload_url_stringc sH | j s| j j| j�r:| js"| jS tjj| j�}| j| S tt| �j � S )N) r, r- r. Zupload_archive_name�os�path�basenamer r r2 )r Zfname)r r r r2 ^ s zUbuntuPolicy.get_upload_url)r r )r r zb/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/sbin:/usr/local/bin:/snap/bin)NNTN)r )�__name__� __module__�__qualname__r ZvendorZvendor_urls�PATHr. r/ r0 Z_upload_methodr �classmethodr! r+ r1 r3 r2 � __classcell__r r )r r r s$ r )Zsos.report.pluginsr Zsos.policies.distros.debianr Z"sos.policies.package_managers.snapr Z"sos.policies.package_managers.dpkgr Zsos.policies.package_managersr r4 r r r r r �<module> s