관리-도구
편집 파일: __init__.cpython-39.pyc
a d4hP � @ sR d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl Z d dlZd dlZd dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dlmZ ddlmZ ddlmZ dd lmZ dd lmZ ddlmZ ddlmZ dd lmZ ddlmZ ddlmZ ddlm Z ddlm!Z! ddlm"Z" ddlm#Z# ddlm$Z$ ddlm%Z% ddlm&Z& ddl'm(Z(m)Z)m*Z*m+Z+m,Z, ddl$m-Z-m.Z.m/Z/ dZ0dZ1dZ2dZ3dZ4dZ5dZ6d Z7e�8d!ej9�Z:e�8d"�Z;ej<�=d#��r�ej<�>d d#� ej?d$e@d%� ejG�HejI� d&d'� ZJd(d)� ZKd*d+� ZLd,d-� ZMd.d/� ZNd�d0d1�ZOd2d3� ZPd4d5� ZQd6d7� ZRd8d9� ZSd:d;� ZTd<d=� ZUG d>d?� d?eV�ZWG d@dA� dAe.�ZXG dBdC� dCe.�ZYG dDdE� dEe.�ZZdFdG� Z[edHdI� �Z\d�dJdK�Z]dLdM� Z^dNdO� Z_i Z`dPdQ� Zaeae*jb_cededRd��s~z8d dleZfd dlgZhefji�jehjk�efji�jdS�k �r0eldT��W n el�yF Y n80 dUdV� Zme*jnZoG dWdX� dXep�ZqG dYdZ� dZe*jn�Zrere*_nejsfd[d\�Ztd]d^� Zud_d`� ZvG dadb� dbep�Zwdcdd� Zxdedf� Zyd�dhdi�Zzdjdk� Z{dldm� Z|d�dndo�Z}dpdq� Z~drds� Zdtdu� Z�dvdw� Z�dxdy� Z�dzd{� Z�d|d}� Z�d~d� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�d��Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�d��Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�d��Z�d�d�� Z�d�d�� Z�G d�d�� d��Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�ej�ejsfd�d��Z�d�d�� Z�ej�fd�d��Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�d��Z�d�d Z�d�dĄ Z�dS )�� )�print_functionN)�ArgumentParser)�datetime)�contextmanager� )�config)� constants)� log_utils)�utils)� process_utils)�platform_utils)� http_utils)�auth)�config_handlers)�libcare)�selinux)�fetch)�update_utils)�errors)�kcare)�server_info)�URLError� HTTPError�httplib� urlencode�json_loads_nstr)�SafeExceptionWrapper� KcareError�NotFound�c Zv2)Z12hZ24hZ48h�testz./etc/sysconfig/kcare/freezer.modules.blacklistz/usr/libexec/kcare/kcdoctor.sh)z latest.v2z /etc/sysconfig/kcare/sysctl.conf� z$==BLACKLIST== (.*)==END BLACKLIST== z'(kpatch.*|ksplice.*|kpatch_livepatch.*)z/usr/libexec/kcare/python�ignore)�categoryc C s@ t � } tj�t�r<ttd�}|D ]}| �|�� � q |�� | S )N�r) �set�os�path�isfile�FREEZER_BLACKLIST�open�add�rstrip�close)�result�f�line� r1 �./usr/libexec/kcare/python/kcarectl/__init__.py�get_freezer_blacklistJ s r3 c C sB |� d�}| r(d�|d | |d g�}nd�|d |d g�}|S )N�.r ���)�split�join)�ptype�filenameZ name_partsr1 r1 r2 �_apply_ptypeT s r: c C sJ t | tj�t_t | tj�t_t | tj�t_t | tj�t_t | tj�t_d S �N)r: r � PATCH_BIN� PATCH_INFO�BLACKLIST_FILE�FIXUPS_FILE� PATCH_DONE)r8 r1 r1 r2 �apply_ptype] s rA c C s� t �� \} }}d}t|t�r^t|t�s^zd|jt�|j�|jf }W q� t t fyZ Y q�0 nNt|tt tf�r�t|t�s�d| }n*t|t �r�|jp�t|j�} |jp�d|j }t�� }tjt�� |d |d t| dt| ��|d�t�|d��t|dd�d �S ) N� z[Errno %i] %s: '%s'z%sr r �__name__�d �attempts)Z agent_versionZpython_version�distroZdistro_version�error�details� tracebackrE )�sys�exc_info� isinstance�OSErrorr �errnor&