Your IP : 216.73.217.13


Current Path : /proc/thread-self/root/lib/python3/dist-packages/cloudinit/distros/__pycache__/
Upload File :
Current File : //proc/thread-self/root/lib/python3/dist-packages/cloudinit/distros/__pycache__/rhel.cpython-38.pyc

U

�Adt�@stddlZddlmZmZddlmZddlmZmZddlm	Z	ddl
mZe�e
�Zdd�ZGd	d
�d
ej�ZdS)�N)�distros�helpers)�log)�subp�util)�	rhel_util)�PER_INSTANCEcCs|rdSdSdS)NZyesZno�)�valr	r	�8/usr/lib/python3/dist-packages/cloudinit/distros/rhel.py�_make_sysconfig_boolsrc@s�eZdZdZdZdZdZdZdZdZ	dZ
dZd	d
ddd
d�d�iZdZ
dd�Zdd�Zdd�Zd)dd�Zd*dd�Zdd�Zdd �Zd+d!d"�Zd#d$�Zd,d%d&�Zd'd(�ZdS)-�Distroz/etc/sysconfig/clockz/etc/sysconfig/i18nz/etc/locale.confz/etc/sysconfig/networkz
/etc/hostnamez'/etc/sysconfig/network-scripts/ifcfg-%sz/etc/localtimez/usr/libexecZ	sysconfigzetc/sysconfig/networkz'%(base)s/network-scripts/ifcfg-%(name)sz'%(base)s/network-scripts/route-%(name)sz(%(base)s/network-scripts/route6-%(name)s)Zipv4Zipv6)ZcontrolZiface_templatesZroute_templatesTcCs<tj�||||�t�|�|_d|_d|_d|_d|d<dS)NZredhatzen_US.UTF-8ZsshdZssh_svcname)	rr
�__init__rZRunners�_runnerZosfamily�default_locale�
system_locale)�self�nameZcfg�pathsr	r	rr6szDistro.__init__cCs|jd|d�dS)N�install)�pkgs)�package_command)r�pkglistr	r	r�install_packagesAszDistro.install_packagescCs"|js|��|_|jr|jS|jS)z8Return the default locale if set, else use system locale)r�_read_system_localer�rr	r	r�
get_localeDs
�zDistro.get_localeNcCs<|��r|s|j}|j}n
|s$|j}d|i}t�||�dS)N�LANG)�uses_systemd�systemd_locale_conf_fn�locale_conf_fnr�update_sysconfig_file)rZlocaleZout_fnZ
locale_cfgr	r	r�apply_localePs�zDistro.apply_localercCsX|��r|j}n|j}|s&td|��tj�|�rTt�|�\}}||krP||SdSdS)z.Read system default locale setting, if presentzInvalid path: %sN)	rrr �
ValueError�os�path�existsr�read_sysconfig_file)rZkeynameZ	locale_fn�_exists�contentsr	r	rr]szDistro._read_system_localecCsV|��r |�d�r t�||�n2|��r>t�ddt|�g�nd|i}t�||�dS)N�/previous-hostnameZhostnamectlzset-hostname�HOSTNAME)r�endswithrZ
write_filer�strrr!)r�hostname�filenameZhost_cfgr	r	r�_write_hostnamens�zDistro._write_hostnamecCs$|��r|j}n|j}||�|�fS)N)r�systemd_hostname_conf_fn�hostname_conf_fn�_read_hostname)rZhost_fnr	r	r�_read_system_hostname{szDistro._read_system_hostnamecCsx|��r |�d�r t�|���S|��rRt�dg�\}}|��}t|�rL|S|Sn"t�|�\}}d|krp|dS|SdS)Nr*r.r+)	rr,rZ	load_file�stripr�lenrr')rr/�default�outZ_errr(r)r	r	rr3�szDistro._read_hostnamecCsZ|�|�}|��r.t�|j�t�||j�n(dt|�i}t�|j	|�t�
||j�dS)NZZONE)Z
_find_tz_filerrZdel_file�tz_local_fnZsym_linkr-rr!�
clock_conf_fn�copy)rZtzZtz_fileZ	clock_cfgr	r	r�set_timezone�s
�zDistro.set_timezonecCs�|dkrg}t�d�r(t�d�dg}nt�d�ddg}|�d�|r^t|t�r^|�|�n|rvt|t�rv|�|�|�|�t	�
d|�}|�|�tj|dd	�dS)
NZdnfz Using DNF for package managementz Using YUM for package managementZyumz-tz-yz%s-%sF)Zcapture)rZwhich�LOG�debug�append�
isinstancer-�list�extendrZexpand_package_list)rZcommand�argsr�cmdrr	r	rr�s 






zDistro.package_commandcCs|jjd|jdgtd�dS)Nzupdate-sourcesZ	makecache)Zfreq)r�runrrrr	r	r�update_package_sources�s�zDistro.update_package_sources)N)r)N)NN)�__name__�
__module__�__qualname__r:r rZnetwork_conf_fnr2r1Znetwork_script_tplr9Zusr_lib_execZrenderer_configsZprefer_fqdnrrrr"rr0r4r3r<rrFr	r	r	rr
s:���





!r
)r$Z	cloudinitrrrZloggingrrZcloudinit.distrosrZcloudinit.settingsrZ	getLoggerrGr=rr
r	r	r	r�<module>
s