f9ddlZddlmZmZmZmZmZddlmZddlm Z ddl m Z ejeZGddej Zy)N)distroshelpersnetsubputil) PackageList) rhel_util) PER_INSTANCEceZdZdZdZdZdZdeediZdZdZ dd Z d Z dd Z d e fdZdZdZddZdZdZddZdZy )Distroz /etc/hostnamez/etc/systemd/network/z/etc/locale.confz/etc/systemd/resolved.confnetworkd)resolv_conf_fnnetwork_conf_dirTctjj||||tj||_d|_dg|_y)Nphoton systemctl)rr __init__rRunners_runnerosfamilyinit_cmd)selfnamecfgpathss :/usr/lib/python3/dist-packages/cloudinit/distros/photon.pyrzDistro.__init__s<dC7u-   $  ctjd| tj||\}}|rtjd||d||fSd||fS#tj$rt j td|YywxYw)NzAttempting to run: %s)capturez(Running %s resulted in stderr output: %sTFzCommand %s failed)TNN)LOGdebugrwarningProcessExecutionErrorrlogexc)rcmdrouterrs rexec_cmdzDistro.exec_cmd(s )3/ $38JS# >SS#~%#s? ")) $ KK0# 6# $s7AA.BBcd}|jj|d}tjd|||st j Stj dy)Ndisable_fallback_netcfgTz%s value is: %szJSkipping generate_fallback_config. Rely on PhotonOS default network config)_cfggetr r!rgenerate_fallback_configinfo)rkeyr*s rr-zDistro.generate_fallback_config6sV'"&))--T": #S*AB&//1 1   rNc~|s |j}d|i}tj||gd}|j|y)NLANG)rrestartzsystemd-localed)systemd_locale_conf_fnrhutilupdate_sysconfig_filer()rlocaleout_fn locale_cfgr%s r apply_localezDistro.apply_localeDsE00F F  $$VZ8 : crpkglistc*|jd|y)Ninstall)pkgs)package_command)rr:s rinstall_packageszDistro.install_packagesVs YW5rc|r(|jdrtj||yd}tj|jdd}|r"|j ddt |g\}}}n7|j dddt |g\}}}tjd|rtjd||fyy) N/previous-hostnamecreate_hostname_fileT hostnamectlz set-hostnamez --transientz7create_hostname_file is False; hostname set transientlyz3Error while setting hostname: %s Given hostname: %s) endswithr write_fileget_cfg_option_boolr+r(strr r.r")rhostnamefilenameretrB_outr's r_write_hostnamezDistro._write_hostnameZs ))*>? OOHh /C#'#;#; 14$ $!%"NCMB"T3"&%&%H "T3M N rcT|j|j}|j|fSN)_read_hostnamesystemd_hostname_conf_fn)r sys_hostnames r_read_system_hostnamezDistro._read_system_hostname{s)**4+H+HI --|<?&&x0668 8--T(:;c4!syy{.w.rcy)Nz 127.0.1.1rs r_get_localhost_ipzDistro._get_localhost_ipsrcPtj||j|y)N)tztz_file)rset_etc_timezone _find_tz_file)rr^s r set_timezonezDistro.set_timezones  B0B0B20FGrcn|sg}ddg}|r"t|tr|j|n#|r!t|tr|j ||j|t j d|}|j ||j|\}}}|rtjd|yy)Ntdnfz-yz%s-%sz#Error while installing packages: %s) isinstancerGappendlistextendrexpand_package_listr(r error) rcommandargsr=r%r:rJrKr's rr>zDistro.package_commandsDtn JtS) JJt  jt, JJt  7**7D9 7s+T3  II;S A rc`|jjd|jdgty)Nzupdate-sources makecache)freq)rrunr>r r[s rupdate_package_sourceszDistro.update_package_sourcess-    M  r)TrN)NN)__name__ __module__ __qualname__rPrr3resolve_conf_fnrenderer_configs prefer_fqdnrr(r-r9rr?rLrRrOr\rbr>rqrZrrr r s~../2O - 0 K& $ $6 6B=/HB& rr )logging cloudinitrrrrrcloudinit.distrosrr r4cloudinit.settingsr getLoggerrrr r rZrrr}s= 77)1+g!V W^^V r