File: //usr/lib/python3/dist-packages/cloudinit/cmd/devel/__pycache__/hotplug_hook.cpython-38.pyc
U
��0h�- � @ sp 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*edd�dd�Z+dd�dd�Z,ee-d�dd �Z.d!d"� Z/ed#k�rle"� �0� Z1e/e!e1� 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_argumentZadd_subparsersr Z
add_parser)�parserZ
subparsersZ
parser_handle� r% �B/usr/lib/python3/dist-packages/cloudinit/cmd/devel/hotplug_hook.py�
get_parser sT � � � ��� �r'