�
�f�K � � � d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZmZ d dl m
Z
mZmZm
Z
d dlmZmZmZmZmZ d dlmZmZ dZdZ ej2 e� Zd� Zdd ed
efd�Zd� Zdd
�Z G d� dejB � Z!dd�Z"y)� N)�Optional�cast)�features�safeyaml�subp�util)�IPV6_DYNAMIC_TYPES�
SYS_CLASS_NET�get_devicelist�renderer�subnet_is_ipv6)�NET_CONFIG_TO_V2�NetworkStatez/etc/netplan/50-cloud-init.yamls4 # This is the initial network config.
# It can be overwritten by cloud-init or console-conf.
network:
version: 2
ethernets:
all-en:
match:
name: "en*"
dhcp4: true
all-eth:
match:
name: "eth*"
dhcp4: true
c �H �� t �fd�| j � D � � S )Nc 3 �N �K � | ] \ }}|j �� r||f�� � y �w�N)�
startswith)�.0�key�value�matchs ��7/usr/lib/python3/dist-packages/cloudinit/net/netplan.py� <genexpr>z,_get_params_dict_by_match.<locals>.<genexpr>+ s- �� �� � ��S�%��>�>�%� �
�e���s �"%)�dict�items)�configr s `r �_get_params_dict_by_matchr * s# �� �� �"�L�L�N�� � � r �entryc �x � d%d�}|�g }g }g }g }g }| j dg � } | �g } | D �], }
|
j d� }|j d� r|dk( r|dz
}|j |di� �D|t v r|j ddi� �`|d v s�ed
|
j d� z }d|
v r|d
|
j d� z z
}|
j d� rx|
j d� dd�}
t j
|
d � }t j |d�� }||vrt j d|
d |� d|
d< |