
­­­­­­­­­­­­­­­­­­
<!DOCTYPE html>
<html>
3
\mev                 @   sL   d dl Z d dlZd dlZd dlmZmZ e jeZG dd dej	j
jZdS )    N)subputilc               @   sb   e Zd ZdZdgZdddZdd Zdd	 Zedd
e	e	dddZ
dd Zdd Zdd ZdS )Distroz/etc/mynameZrcctlNc             C   s   t j| jS )N)r   Z	load_filehostname_conf_fn)selffilenamedefault r	   /usr/lib/python3.6/openbsd.py_read_hostname   s    zDistro._read_hostnamec             C   s   |d }t j| j| d S )N
)r   Z
write_filer   )r   Zhostnamer   Zcontentr	   r	   r
   _write_hostname   s    zDistro._write_hostnamec             C   s   dd||gS )Nusermodz-Gr	   )r   member_nameZ
group_namer	   r	   r
   _get_add_member_to_group_cmd   s    z#Distro._get_add_member_to_group_cmd)rcs)actionservicec         	   G   s`   | j }d|gd|gd|gd|gd|gd|gd|gd|gd}t|t||  }tj|d|d	S )
z
        Perform the requested action on a service. This handles OpenBSD's
        'rcctl'.
        May raise ProcessExecutionError
        stopstartenabledisablerestartZcheck)r   r   r   r   r   reloadz
try-reloadZstatusT)Zcapturer   )init_cmdlistr   )clsr   r   r   Z
extra_argsr   Zcmdscmdr	   r	   r
   manage_service   s    zDistro.manage_servicec             C   s@   yt j ddd|g W n$ tk
r:   tjtd|  Y nX d S )Nr   z-p*zFailed to lock user %s)r   	Exceptionr   ZlogexcLOG)r   namer	   r	   r
   lock_passwd1   s
    zDistro.lock_passwdc             C   s   d S )Nr	   )r   r"   r	   r	   r
   unlock_passwd8   s    zDistro.unlock_passwdc             C   s   t jj }|S )z:Return env vars used in OpenBSD package_command operations)osenvironcopy)r   er	   r	   r
   _get_pkg_cmd_environ;   s    
zDistro._get_pkg_cmd_environ)N)__name__
__module____qualname__r   r   r   r   r   classmethodstrr   r#   r$   r)   r	   r	   r	   r
   r      s   
r   )Zloggingr%   Zcloudinit.distros.netbsdZ	cloudinitr   r   Z	getLoggerr*   r!   ZdistrosZnetbsdZNetBSDr   r	   r	   r	   r
   <module>   s
   
