
    x[hF	                         S SK r S SKrS SKJrJr  S SKJr  S SKJr  S SK	J
r
  \R                  " \5      r " S S\R                  5      rg)    N)PREFERRED_NTP_CLIENTSdebian)Snap)
activators)CLOUDINIT_NETPLAN_FILEc                   R   ^  \ rS rSrU 4S jrSU 4S jjr\S 5       rSS jrSr	U =r
$ )	Distro   c                 N  > [         TU ]  XU5        S[        S.U l        U R                  S   [        R
                  S.U R                  S   [        R
                  SS.S.U l        [        U R                  5      U l	        U R                  R                  U R                  5        g )Nz+/etc/network/interfaces.d/50-cloud-init.cfg)eninetplanr   )eni_path
eni_headerr   T)netplan_pathnetplan_headerpostcmds)super__init__r   network_conf_fnr   NETWORK_FILE_HEADERrenderer_configsr   _runnersnappackage_managersappend)selfnamecfgpaths	__class__s       :/usr/lib/python3/dist-packages/cloudinit/distros/ubuntu.pyr   Distro.__init__   s    E* A- 
 !007$88
 !% 4 4Y ?"("<"< 
!
 &	$$TYY/    c                    > [         TU ]  XU5        U R                  R                  5       (       a  U R                  R	                  5         g g )N)r   package_commandr   	availableupgrade_packages)r   commandargspkgsr    s       r!   r%   Distro.package_command-   s:    t499  II&&( !r#   c                 z    U R                   (       d  [        R                  " [        5      U l         U R                   $ )z5The preferred ntp client is dependent on the version.)_preferred_ntp_clientscopydeepcopyr   )r   s    r!   preferred_ntp_clientsDistro.preferred_ntp_clients2   s+     ***.--8M*ND'***r#   c                      U R                   R                  5         g! [        R                   a    [        R                  S5         g[         a   n[        R                  SU5         SnAgSnAff = f)zAEnsure that cloud-init's network service has network connectivityz6Failed to wait for network. No network activator foundzFailed to wait for network: %sN)network_activatorwait_for_networkr   NoActivatorExceptionLOGerror	Exception)r   es     r!   r4   Distro.wait_for_network9   sW    	;""335.. 	PIINO 	;II6::	;s    )A1	A1A,,A1)r-   r   r   r   )NN)returnN)__name__
__module____qualname____firstlineno__r   r%   propertyr0   r4   __static_attributes____classcell__)r    s   @r!   r	   r	      s+    0*)
 + +; ;r#   r	   )r.   loggingcloudinit.distrosr   r   )cloudinit.distros.package_management.snapr   cloudinit.netr   cloudinit.net.netplanr   	getLoggerr<   r6   r	    r#   r!   <module>rJ      s9      ; : $ 8!);V]] );r#   