
    gm                     f    S r SSKrSSKrSSKrSSKrSSKrSSKJr   " S S\R                  5      r	g)znetplan generate command line    N   )utilsc                   4   ^  \ rS rSrU 4S jrS rS rSrU =r$ )NetplanGenerate   c                 $   > [         TU ]  SSSS9  g )NgeneratezFGenerate backend specific configuration files from /etc/netplan/*.yamlT)
command_iddescriptionleaf)super__init__)self	__class__s    7/usr/share/netplan/netplan_cli/cli/commands/generate.pyr   NetplanGenerate.__init__   s     J&A" 	 	$    c                     U R                   R                  SSS9  U R                   R                  SSS9  U R                  U l        U R	                  5         U R                  5         g )N
--root-dirzOSearch for and generate configuration files in this root directory instead of /)help	--mappingzFDisplay the netplan device ID/backend/interface name mapping and exit.)parseradd_argumentcommand_generatefunc
parse_argsrun_command)r   s    r   runNetplanGenerate.run%   sa      &w 	! 	y  &n 	! 	p ))	r   c           
         S[         R                  ;   ah  [        R                  " S5      nUc  [	        S5      e[
        R                  " USSSSSSS	/5      nUS
:w  a  US:X  a  [        S5      e[	        SU-  5      eg [        R                  " 5       /nU R                  (       a  USU R                  /-  nU R                  (       a  USU R                  /-  n[        R                  " SU5        [
        R                  " U5      n [
        R                  " / SQ5        U R                  c   [        R"                  " 5         [&        R(                  " U5        g ! [
        R                   a,  n[        R                  " S[!        U5       35         S nANuS nAff = f! [
        R                   a   n[        R$                  " U5         S nANS nAff = f)NSNAPbusctlzmissing busctl utilitycallz--quietz--systemzio.netplan.Netplanz/io/netplan/NetplanGenerater      z8PermissionError: failed to communicate with dbus servicez?RuntimeError: failed to communicate with dbus service: error %sr   r   zcommand generate: running %s)udevadmcontrolz--reloadz+Could not call "udevadm control --reload": )osenvironshutilwhichRuntimeError
subprocessr#   PermissionErrorr   get_generator_pathroot_dirmappingloggingdebug
check_callCalledProcessErrorstrsystemctl_daemon_reloadwarningsysexit)r   r"   resargves        r   r    NetplanGenerate.command_generate0   s   RZZ \\(+F~"#;<< //669j#7#8#7#-	#% &C ax#:)RT T 'Y\__a a ((*+==\4==11D<<[$,,//D4d;ood#	R!!"DE <<#--/ 	 ,, 	RMMGAxPQQ	R 00 #""#s0   E +F F+"FFG.G		G)r   )	__name__
__module____qualname____firstlineno__r   r   r   __static_attributes____classcell__)r   s   @r   r   r      s    $	2 2r   r   )
__doc__r2   r(   r9   r-   r*    r   NetplanCommandr    r   r   <module>rI      s0   $ $  	 
   Ee** Er   