File manager - Edit - /usr/lib/python3/dist-packages/cloudinit/distros/__pycache__/netbsd.cpython-310.pyc
Back
o �Ad� � @ sp d dl Z d dlZd dlZd dlZd dlmZ d dlmZmZ e� e �ZG dd� dejj j�ZG dd� de�ZdS )� N)�log)�subp�utilc sv e Zd ZdZdZdgZ� fdd�Zdd� Zdd � Zddd�Z d d� Z dd� Zdd� Zddd�Z dd� Zdd� Z� ZS )�NetBSDzS Distro subclass for NetBSD. (N.B. OpenBSD inherits from this class.) z*/usr/pkg/etc/sudoers.d/90-cloud-init-users�groupaddc s^ t � �|||� tj�d�r$g d�| _g d�| _g d�| _g d�| _d S ddg| _dg| _d S ) Nz/usr/pkg/bin/pkgin)�pkgin�-y�install)r r �remove)r r �update)r r zfull-upgrade�pkg_addz-U� pkg_delete) �super�__init__�os�path�exists�pkg_cmd_install_prefix�pkg_cmd_remove_prefix�pkg_cmd_update_prefix�pkg_cmd_upgrade_prefix)�self�name�cfg�paths�� __class__� �:/usr/lib/python3/dist-packages/cloudinit/distros/netbsd.pyr s zNetBSD.__init__c C s dd||gS )N�usermod�-Gr )r �member_name� group_namer r r �_get_add_member_to_group_cmd% s z#NetBSD._get_add_member_to_group_cmdc K sH t �|�r t�d|� dS dg}dg}dddddd �}d ddd �}|�� D ]-\}}||v r>|r>t|t�r>|�|| |g� q%||v rR|rR|�|| � |�|| � q%d|vs[d|vre|dg7 }|dg7 }||g7 }||g7 }t�d|� z t j ||d� W n t y� t �td|� � w |�dd �} | d ur�| j || dd� d S d S )Nz!User %s already exists, skipping.F�useraddz-dz-cz-gr z-s)�homedir�gecos� primary_group�groups�shellz--no-user-groupz--systemz --no-log-init)� no_user_group�system�no_log_init�no_create_homer+ z-mzAdding user %s)� logstringzFailed to create user %s�passwdT)�hashed)r �is_user�LOG�info�items� isinstance�str�extend�appendr � Exception�logexc�get� set_passwd) r r �kwargs�adduser_cmd�log_adduser_cmd�adduser_opts� adduser_flags�key�val� passwd_valr r r �add_user( sL ��� ��zNetBSD.add_userFc C sf |r|}nt j}t � |t �|��}zt�dd||g� W n ty+ t�td|� � w | �|� d S )Nr z-pzFailed to set password for %s) �crypt�METHOD_BLOWFISH�mksaltr r9 r r: r2 � unlock_passwd)r �userr/ r0 � hashed_pw�methodr r r r<