File: //lib/python3/dist-packages/uaclient/__pycache__/system.cpython-38.pyc
U
��Jhyp � @ sl d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
Z
d dlmZ d dl
mZ d dlmZmZmZmZmZmZmZ d dlmZmZmZ dZdZdZd Zd
Ze� e�!e"��Z#dZ$dZ%ed
de j&fde j&fde'fde'fde'fg�Z(edde'fde'fdee j fdee' fdee) fdee) fdee) fdee' fdee' fg �Z*edde'fde'fde'fde'fg�Z+ed d!ee' fd"ee' fd#ee' fd$ee' fd%ee' fd&ee' fd'ee' fd(ee' fd)ee' fd*ee' fd+ee' fd,ee' fd-ee' fd.ee' fg�Z,ed/d0eee' fd1eee' fg�Z-d2Z.ej/ee j d3�d4d5�Z0ej/ee j d3�d6d7�Z1edd8�e*d9�d:d;��Z2d<d=� Z3edd8�e'd9�d>d?��Z4edd8�e'd9�d@dA��Z5edd8�e,d9�dBdC��Z6edd8�e'd9�dDdE��Z7edd8�e+d9�dFdG��Z8edd8�e'e9dH�dIdJ��Z:edd8�e9d9�dKdL��Z;edd8�e'e9dH�dMdN��Z<edd8�e'e9dH�dOdP��Z=edd8�e9d9�dQdR��Z>edd8�d�e'e9dT�dUdV��Z?edd8�e9d9�dWdX��Z@edd8�ee'e'f d9�dYdZ��ZAedd8�e'e(dH�d[d\��ZBe'ee' d]�d^d_�ZCd�eee' eee' e9d`�dadb�ZDe'e9dc�ddde�ZEe'e'df�dgdh�ZFd�e'e)ddj�dkdl�ZGd�e'e'ee) ddm�dndo�ZHe'ddp�dqdr�ZId�ee' eee) e9eeJ eee'e'f e9ee'e'f du�dvdw�ZKd�ee' eee) e9eeJ eeeJ eee'e'f e9ee'e'f dx�dydz�ZLe'dd{�d|d}�ZMe'e9d~�dd��ZNe'ee' d~�d�d��ZOe'd9�d�d��ZPee- d9�d�d��ZQdS )�� N)� lru_cache)�rmtree)�Dict�List�
NamedTuple�Optional�Sequence�Set�Tuple)�defaults�
exceptions�utilz/var/run/reboot-requiredz/var/run/reboot-required.pkgsz/etc/machine-idz/var/lib/dbus/machine-idz!/usr/share/distro-info/ubuntu.csvz5(?P<release>\d+\.\d+) (LTS\s*)?(\((?P<series>\w+))?.*zd^(?P<major>[\d]+)[.-](?P<minor>[\d]+)[.-](?P<patch>[\d]+)-(?P<abi>[\d]+)-(?P<flavor>[A-Za-z0-9_-]+)$�
DistroInfo�eol�eol_esm�series�release�series_codename�
KernelInfo�uname_machine_arch�
uname_release�
build_date�proc_version_signature_version�major�minor�patch�abi�flavor�ReleaseInfo�distribution�pretty_version�CpuInfo�cpuinfo_cpu�cpuinfo_cpu_architecture�cpuinfo_cpu_family�cpuinfo_cpu_implementer�cpuinfo_cpu_part�cpuinfo_cpu_revision�cpuinfo_cpu_variant�
cpuinfo_model�cpuinfo_model_name�cpuinfo_stepping�cpuinfo_vendor_id�"sys_firmware_devicetree_base_model�
sysinfo_model�sysinfo_type�RebootRequiredPkgs�standard_packages�kernel_packagesz(Mon|Tue|Wed|Thu|Fri|Sat|Sun).*)�uname�returnc C sl t � rt�d� d S t�d� z(t�d�| j��}tj�|j tj
j�W S tk
rf t�d� Y d S X d S )NzPNot attempting to use timestamp of kernel changelog because we're in a containerz3Falling back to using timestamp of kernel changelogz1/usr/share/doc/linux-image-{}/changelog.Debian.gzzUnable to stat kernel changelog)
�is_container�LOG�warning�os�stat�formatr �datetimeZ
fromtimestamp�st_mtime�timezone�utc� Exception)r3 �stat_result� rA �1/usr/lib/python3/dist-packages/uaclient/system.py�_get_kernel_changelog_timestampq s&