File: //usr/lib/python3.9/site-packages/cloudinit/cmd/devel/__pycache__/hotplug_hook.cpython-39.pyc
a
'�Dgm+ � @ s` d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z m
Z
mZ ddlm
Z
ddlmZmZ ddlmZ ddlmZ ddlmZ dd lmZ dd
lmZmZ ddlmZ e�e�Z dZ!d"d
d�Z"G dd� dej#�Z$G dd� de$�Z%de%ej&fiZ'dd� Z(ee)d�dd�Z*ed�dd�Z+ee,d�dd�Z-dd � Z.ed!k�r\e"� �/� Z0e.e!e0� dS )#z)Handle reconfiguration on hotplug events.� N)� reporting�stages�util)�install_hotplug)�
EventScope� EventType)�loggers)�read_sys_net_safe)�parse_net_config_data)�events)�
DataSource�DataSourceNotFoundException)�Initzhotplug-hookc C s� | st jttd�} t| _| jdddddgd� | jdd d
�}d|_|jddd
� |jddd
�}|jdddddd� |jddddddgd� |jddd
� | S )a Build or extend an arg parser for hotplug-hook utility.
@param parser: Optional existing ArgumentParser instance representing the
subcommand which will be extended to support the args of this utility.
@returns: ArgumentParser with proper argument configuration.
)�prog�descriptionz-sz--subsystemTzsubsystem to act on�net)�required�help�choiceszHotplug Action�hotplug_action)�title�dest�queryz0Query if hotplug is enabled for given subsystem.)r �handlezHandle the hotplug event.z-dz --devpath�PATHzSysfs path to hotplugged device)r �metavarr z-uz--udevactionzSpecify action to take.�add�remove�enablez%Enable hotplug for a given subsystem.) �argparse�ArgumentParser�NAME�__doc__r �add_argument�add_subparsersr �
add_parser)�parserZ
subparsersZ
parser_handle� r'