File: //usr/lib/python3/dist-packages/uaclient/__pycache__/actions.cpython-310.pyc
o
S��c6! � @ s� d dl Z d dlZd dlZd dlmZmZ d dlmZmZm Z m
Z
mZmZm
Z
d dlmZ d dlmZmZ d dlmZ d dlmZ d dlmZmZmZ d d lmZ d d
lmZ e�d�Ze�� Z dZ!d
ej"de#de$ddfdd�Z% d/d
ej"dejddfdd�Z&dddd�d
ej"de#de$de$de$f
dd�Z'ddd�d
ej"d ee# d!e$fd"d#�Z d0d$e#d%eee( ddfd&d'�Z)d
ej"fd(d)�Z*d
ej"d*e#fd+d,�Z+d
ej"defd-d.�Z,dS )1� N)�List�Optional)�clouds�config�contract�entitlements�event_logger�
exceptions�messages)�status)�system�util)�AutoAttachCloudInstance)�identity)�CLOUD_BUILD_INFO�DEFAULT_CONFIG_FILE�DEFAULT_LOG_PREFIX)�
LIVEPATCH_CMD)�timer_jobs_state_filezpro.actions)zua-timer.servicezua-timer.timerzua-auto-attach.pathzua-auto-attach.servicezua-reboot-cmds.servicezubuntu-advantage.service�cfg�token�allow_enable�returnc
C s� ddl m} z
tj| ||d� W n1 tjy) } ztj| d� || � |�d}~w tjyA } ztj| d� || � |�d}~ww t �
� }|rN| �d|� || � dS )a:
Common functionality to take a token and attach via contract backend
:raise UrlError: On unexpected connectivity issues to contract
server or inability to access identity doc from metadata service.
:raise ContractAPIError: On unexpected errors when talking to the contract
server.
r )�update_apt_and_motd_messages)r �r Nzinstance-id)�uaclient.jobs.update_messagingr r �request_updated_contractr �UrlError� ua_statusr �UserFacingErrorr �get_instance_id�write_cache)r r r r �exc�current_iid� r$ �2/usr/lib/python3/dist-packages/uaclient/actions.py�attach_with_token) s(
����r&