Ë
    x[hF	  ã                   ó–   — d dl Z d dlZd dlmZmZ d dlmZ d dlmZ d dl	m
Z
  ej                  e«      Z G d„ dej                  «      Zy)é    N)ÚPREFERRED_NTP_CLIENTSÚdebian)ÚSnap)Ú
activators)ÚCLOUDINIT_NETPLAN_FILEc                   óB   ‡ — e Zd Zˆ fd„Zdˆ fd„	Zed„ «       Zdd„Zˆ xZS )ÚDistroc                 óP  •— t         ‰| �  |||«       dt        dœ| _        | j                  d   t        j
                  dœ| j                  d   t        j
                  ddœdœ| _        t        | j                  «      | _	        | j                  j                  | j                  «       y )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   zDistro.__init__   sš   ø€ Ü‰Ñ˜˜s EÔ*ð AÜ-ñ 
ˆÔð !×0Ñ0°Ñ7Ü$×8Ñ8ñð
 !%× 4Ñ 4°YÑ ?Ü"(×"<Ñ"<Ø ññ
!
ˆÔô ˜Ÿ™Ó&ˆŒ	Ø×Ñ×$Ñ$ T§Y¡YÕ/ó    c                 ó’   •— t         ‰| �  |||«       | j                  j                  «       r| j                  j	                  «        y y )N)r   Úpackage_commandr   Ú	availableÚupgrade_packages)r   ÚcommandÚargsÚpkgsr   s       €r    r#   zDistro.package_command-   s9   ø€ Ü‰Ñ ¨¨tÔ4Ø�9‰9×ÑÔ Ø�I‰I×&Ñ&Õ(ð !r!   c                 ón   — | j                   st        j                  t        «      | _         | j                   S )z5The preferred ntp client is dependent on the version.)Ú_preferred_ntp_clientsÚcopyÚdeepcopyr   )r   s    r    Úpreferred_ntp_clientszDistro.preferred_ntp_clients2   s+   € ð ×*Ò*Ü*.¯-©-Ô8MÓ*NˆDÔ'Ø×*Ñ*Ð*r!   c                 óä   — 	 | j                   j                  «        y# t        j                  $ r t        j                  d«       Y yt        $ r }t        j                  d|«       Y d}~yd}~ww xY w)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    r0   zDistro.wait_for_network9   sW   € ð	;Ø×"Ñ"×3Ñ3Õ5øÜ×.Ñ.ò 	PÜ�I‰IÐNÖOÜò 	;Ü�I‰IÐ6¸×:Ñ:ûð	;ús   ‚ �(A/ÁA/ÁA*Á*A/)NN)ÚreturnN)	Ú__name__Ú
__module__Ú__qualname__r   r#   Úpropertyr-   r0   Ú__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   Ú	getLoggerr7   r2   r	   © r!   r    ú<module>rC      s;   ðó Û ç ;Ý :Ý $Ý 8à€g×Ñ˜Ó!€ô);ˆV�]‰]õ );r!   