File: //lib/python3.6/site-packages/cloudinit/cmd/devel/__pycache__/hotplug_hook.cpython-36.pyc
3
\�me�# � @ s0 d Z ddlZddlZddlZddlZddlZddlZddlmZm Z m
Z
ddlmZm
Z
ddlmZ ddlmZ ddlmZ ddlmZmZ dd lmZ eje�Zd
Zddd�ZG d
d� dej�ZG dd� de�Z de ej!fiZ"dd� Z#ee$d�dd�Z%ed�dd�Z&dd� Z'edk�r,e� j(� Z)e'ee)� dS )z)Handle reconfiguration on hotplug events.� N)�log� reporting�stages)�
EventScope� EventType)�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� | 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 ZhandlezHandle the hotplug event.z-dz --devpath�PATHzSysfs path to hotplugged device)r �metavarr z-uz--udevactionzSpecify action to take.�add�remove) �argparse�ArgumentParser�NAME�__doc__r �add_argumentZadd_subparsersr Z
add_parser)�parserZ
subparsersZ
parser_handle� r! �"/usr/lib/python3.6/hotplug_hook.py�
get_parser s:
r# c @ s` e Zd Zdd� Zejdd� �Zeejdd� ��Zeje d�dd ��Z
d
d� Zdd
� Zdd� Z
dS )�
UeventHandlerc C s"