3
\mev @ sL d dl Z d dlZd dlZd dlmZmZ e jeZG dd dej j
jZdS ) N)subputilc @ sb e Zd ZdZdgZdddZdd Zdd Zedd
e e ddd
Z
dd Zdd Zdd Z
dS )Distroz/etc/mynameZrcctlNc C s t j| jS )N)r Z load_filehostname_conf_fn)selffilenamedefault r /usr/lib/python3.6/openbsd.py_read_hostname s zDistro._read_hostnamec C s |d }t j| j| d S )N
)r Z
write_filer )r Zhostnamer Zcontentr r r
_write_hostname s zDistro._write_hostnamec C s dd||gS )Nusermodz-Gr )r member_nameZ
group_namer r r
_get_add_member_to_group_cmd s z#Distro._get_add_member_to_group_cmd)rcs)actionservicec G s` | j }d|gd|gd|gd|gd|gd|gd|gd|gd}t|t|| }tj|d|d S )
z
Perform the requested action on a service. This handles OpenBSD's
'rcctl'.
May raise ProcessExecutionError
stopstartenabledisablerestartZcheck)r r r r r reloadz
try-reloadZstatusT)Zcapturer )init_cmdlistr )clsr r r Z
extra_argsr Zcmdscmdr r r
manage_service s zDistro.manage_servicec C s@ yt j ddd|g W n$ tk
r: tjtd| Y nX d S )Nr z-p*zFailed to lock user %s)r Exceptionr ZlogexcLOG)r namer r r
lock_passwd1 s
zDistro.lock_passwdc C s d S )Nr )r r" r r r
unlock_passwd8 s zDistro.unlock_passwdc C s t jj }|S )z:Return env vars used in OpenBSD package_command operations)osenvironcopy)r er r r
_get_pkg_cmd_environ; s
zDistro._get_pkg_cmd_environ)N)__name__
__module____qualname__r r r r
r classmethodstrr r# r$ r) r r r r
r s
r )
Zloggingr% Zcloudinit.distros.netbsdZ cloudinitr r Z getLoggerr* r! ZdistrosZnetbsdZNetBSDr r r r r