
    p
f                     d   d dl mZ d dlmc mZ d dlmZmZm	Z	m
Z
 ddlmZ ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddl&m'Z' ddl(m)Z) ddl*m+Z+m,Z,m-Z- ddl.m/Z/m0Z0 ddl1m2Z2 ddl3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9 ddl:m;Z; eee	e
fdZ<d Z=y)    )LooseVersionN)DISTRO_NAMEDISTRO_CODE_NAMEDISTRO_VERSIONDISTRO_FULL_NAME   )AlpineOSUtil)ArchUtil)BigIpOSUtil)ClearLinuxUtil)
CoreOSUtil)DebianOSBaseUtilDebianOSModernUtil)DefaultOSUtil)DevuanOSUtil)FreeBSDOSUtil)
GaiaOSUtil)IosxeOSUtil)MarinerOSUtil)NSBSDOSUtil)OpenBSDOSUtil)OpenWRTOSUtil)RedhatOSUtilRedhat6xOSUtilRedhatOSModernUtil)
SUSEOSUtilSUSE11OSUtil)PhotonOSUtil)UbuntuOSUtilUbuntu12OSUtilUbuntu14OSUtilUbuntuSnappyOSUtilUbuntu16OSUtilUbuntu18OSUtil)FedoraOSUtilc                     t        | |||      S )N)_get_osutil)distro_namedistro_code_namedistro_versiondistro_full_names       G/usr/lib/python3/dist-packages/azurelinuxagent/common/osutil/factory.py
get_osutilr-   .   s     {$4nFVWW    c                    | dk(  r
t               S | dk(  r
t               S d|v r
t               S | dk(  rt        |      }|t        d      t        d      fv r
t	               S |t        d      t        d      fv r
t               S |t        d	      t        d
      t        d      fv r
t               S |t        d      k\  r|t        d      k  r
t               S |dk(  r
t               S t               S | dk(  r
t               S | dk(  r
t               S | dv s|dv r
t               S | dv rL|dk(  rt        |      t        d      k  s|dk(  r!t        |      t        d      k  r
t               S t               S | dk(  r/d|v st        |      t        d      kD  r
t               S t               S | dk(  r!t        |      t        d      k\  r
t!               S | dv rLt        |      t        d      k  r
t#               S t        |      t        d      k\  r
t%               S t'               S | dk(  r
t'               S | dk(  r
t'               S | d k(  r
t)               S | d!k(  r
t+               S | d"k(  r
t-               S | d#k(  r
t/               S | d$k(  r
t1               S | d%k(  r
t3               S | d&k(  r
t5               S | d'k(  r
t7               S | d(k(  r
t9               S t;        j<                  d)|        t?               S )*NphotonosarchzClear Linuxubuntuz12.04z12.10z14.04z14.10z16.04z16.10z17.04z18.04z24.04zSnappy Ubuntu Corealpinekali)flatcarcoreos)susesle_hpcslesopensusezSUSE Linux Enterprise Server12openSUSEz13.2debiansid7devuan4)redhatrhelcentosoracle	almalinux
cloudlinuxrockyz8.6eulerosuosfreebsdopenbsdbigipgaiaiosxemarinernsbsdopenwrtfedorazZUnable to load distro implementation for {0}. Using default distro implementation instead.) r   r
   r   Versionr    r!   r#   r$   r"   r   r	   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r%   loggerwarnr   )r(   r)   r*   r+   ubuntu_versions        r,   r'   r'   9   s   j ~fz((h 0gg.0@AA!##gg.0@AA!##gg.0@''BRSS!##WW--.GGDT2T!##33%''~h~f!!++/?CX/X|====N+gdm;#z1gn6MPWX^P_6_>!|hN"gn&=&L%''!! h7>#:gcl#J~  . .>"WS\1!##>"gen4%''~i~e~iig}f|g}ig}ih~
KKlnyz?r.   )>distutils.versionr   rT   azurelinuxagent.common.loggercommonrU   azurelinuxagent.common.versionr   r   r   r   r3   r	   r1   r
   rM   r   
clearlinuxr   r6   r   r=   r   r   defaultr   r@   r   rK   r   rN   r   rO   r   rP   r   rQ   r   rL   r   rR   r   rB   r   r   r   r7   r   r   r0   r   r2   r   r    r!   r"   r#   r$   rS   r%   r-   r'    r.   r,   <module>r_      sv   & 6 . . j j     &  8 "   "   "  " " D D * "7 7   ' 0, 0Xgr.   