%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /snap/core/17212/usr/lib/python3/dist-packages/cloudinit/distros/__pycache__/
Upload File :
Create Path :
Current File : //snap/core/17212/usr/lib/python3/dist-packages/cloudinit/distros/__pycache__/bsd.cpython-35.pyc



"�T`��@s�ddlZddlmZddlmZddlmZddlmZddlmZddlm	Z	ddlm
Z
d	d
lmZej
e�ZGdd�dej�ZdS)
�N)�distros)�	bsd_utils)�helpers)�log)�net)�subp)�util�)�
BSDNetworkingcseZdZeZdZdZddddddiZgZgZ	gZ
dZdZ�fd	d
�Z
dd�Zdd
d�Zdd�Zdd�Zddd�Zdd�Zdd�Zdd�Zdddd�Zdd�Zdd �Zdd!d"�Zd#d$�Z�S)%�BSDz/etc/rc.confZhaltz-HZpoweroffz-pZrebootz-rNcsKt�j|||�tj|�|_d|d<tj�j�|_dS)NZsshdZssh_svcname)	�super�__init__rZRunnersZ_runner�platform�system�lowerZosfamily)�self�nameZcfg�paths)�	__class__��7/usr/lib/python3/dist-packages/cloudinit/distros/bsd.pyr
 s
zBSD.__init__cCs|j|j�}|j|fS)N)�_read_hostname�hostname_conf_fn)rZsys_hostnamerrr�_read_system_hostname)szBSD._read_system_hostnamecCs
tjd�S)N�hostname)rZget_rc_config_value)r�filename�defaultrrrr-szBSD._read_hostnamecCstd��dS)Nz&Return list cmd to add member to group)�NotImplementedError)rZmember_nameZ
group_namerrr�_get_add_member_to_group_cmd0sz BSD._get_add_member_to_group_cmdcCstjd|dd�dS)Nr�fnz/etc/rc.conf)rZset_rc_config_value)rrrrrr�_write_hostname3szBSD._write_hostnamecCstj|�r"tjd|�nY|j|g}y!tj|�tjd|�Wn%tk
rztjtd|�YnX|s�g}x�|D]�}tj	|�s�tjd||�q�y0tj|j
||��tjd||�Wq�tk
rtjtd||�Yq�Xq�WdS)Nz(Skipping creation of existing group '%s'zCreated new group %szFailed to create group %szCUnable to add group member '%s' to group '%s'; user does not exist.zAdded user '%s' to group '%s'z%Failed to add user '%s' to group '%s')rZis_group�LOGZwarning�group_add_cmd_prefixr�info�	ExceptionZlogexcZis_userr)rrZmembersZ
group_add_cmdZmemberrrr�create_group6s*


	

zBSD.create_groupcCskdgddi}xRtj�j�D]>\}}|djddd|d|ddd	igi�q%W|S)
N�config�versionr	�typeZphysicalrZmac_addressZsubnetsZdhcp)rZget_interfaces_by_mac�items�append)rZnconfZmacrrrr�generate_fallback_configOs
 zBSD.generate_fallback_configcCs!|j�|jdd|�dS)N�install�pkgs)Zupdate_package_sources�package_command)r�pkglistrrr�install_packagesWs
zBSD.install_packagescCstd��dS)z?Return environment vars used in *BSD package_command operationsz(BSD subclasses return a dict of env varsN)r)rrrr�_get_pkg_cmd_environ[szBSD._get_pkg_cmd_environcCs|dkrg}|dkr*|j}n_|dkrB|j}nG|dkrg|js[dS|j}n"|dkr�|js�dS|j}|r�t|t�r�|j|�n"|r�t|t�r�|j|�t	j
d|�}|j|�tj|d|j�dd�dS)	Nr,�remove�updateZupgradez%s-%s�envZcaptureF)
�pkg_cmd_install_prefix�pkg_cmd_remove_prefix�pkg_cmd_update_prefix�pkg_cmd_upgrade_prefix�
isinstance�strr*�list�extendrZexpand_package_listrr1)rZcommand�argsr-�cmdr/rrrr._s*			

zBSD.package_commandcCs
|j|�S)N)Z_supported_write_network_config)r�	netconfigrrr�_write_network_config{szBSD._write_network_configcCs#tjd|d|j|��dS)N�tzZtz_file)rZset_etc_timezoneZ
_find_tz_file)rrArrr�set_timezone~szBSD.set_timezonecCstjd�dS)NzCannot set the locale.)r!�debug)rZlocaleZout_fnrrr�apply_locale�szBSD.apply_localecCstjd�dS)Nz Cannot rename network interface.)r!rC)rr?rrr�apply_network_config_names�szBSD.apply_network_config_names)�__name__�
__module__�__qualname__r
Znetworking_clsrZ
rc_conf_fnZshutdown_options_mapr"r5r6r7r8r
rrrr r%r+r0r1r.r@rBrDrErr)rrrs.	r)rZ	cloudinitrZcloudinit.distrosrrrZloggingrrrZ
networkingr
Z	getLoggerrFr!ZDistrorrrrr�<module>s

Zerion Mini Shell 1.0