File: //usr/lib/python3/dist-packages/cloudinit/sources/azure/__pycache__/errors.cpython-38.pyc
U
Ӈg� � @ s� d dl Z d dlZd dlZd dlZd dlmZmZ d dlmZ d dlm Z m
Z
mZmZm
Z
d dlmZ d dlZd dlmZmZ d dlmZ d dlmZ e�e�Zd(ee eeed�dd
�ZG dd� de�ZG dd� de�Z G dd� de�Z!G dd� de�Z"G dd� de�Z#G dd� de�Z$G dd� de�Z%G dd� de�Z&G dd� de�Z'G d d!� d!e�Z(G d"d#� d#e�Z)G d$d%� d%e�Z*G d&d'� d'e�Z+dS ))� N)�datetime�timezone)�StringIO)�Any�Dict�List�Optional�Tuple)�ElementTree)�subp�version)�identity)�UrlError�|�')�data� delimiter� quotechar�returnc
C sD t � �4}tj|||tjd��| � |�� �� W 5 Q R � S Q R X dS )zEncode report data with csv.)r r ZquotingN)r �csv�writerZ
QUOTE_MINIMALZwriterow�getvalue�rstrip)r r r �io� r �@/usr/lib/python3/dist-packages/cloudinit/sources/azure/errors.py�
encode_report s ��r c @ sZ e Zd Zdd�eeeeef dd�dd�Zed�dd�Ze d�d d
�Z
ed�dd�ZdS )
�ReportableErrorN)�supporting_data)�reasonr r c
C s~ dt �� � �| _d| _|| _|r(|| _ni | _t�tj �| _
zt�� | _
W n. tk
rx } zd|��| _
W 5 d }~X Y nX d S )NzCloud-Init/z%https://aka.ms/linuxprovisioningerrorzfailed to read vm id: )r Zversion_string�agent�documentation_urlr r r Znowr Zutc� timestampr
Zquery_vm_id�vm_id� Exception)�selfr r Zid_errorr r r �__init__( s zReportableError.__init__�r c C sd dd| j � �d| j� �g}|dd� | j�� D �7 }|d| j� �d| j�� � �d| j� �g7 }t|�S ) Nzresult=errorzreason=zagent=c S s g | ]\}}|� d |� ��qS )�=r )�.0�k�vr r r �
<listcomp>F s z5ReportableError.as_encoded_report.<locals>.<listcomp>zvm_id=z
timestamp=zdocumentation_url=) r r r �itemsr# r"