관리-도구
편집 파일: dnf.cpython-39.pyc
a -�_g � @ s* d dl mZmZmZ G dd� dee�ZdS )� )�Plugin�RedHatPlugin� PluginOptc @ sL e Zd ZdZdZdZdZdZdZe ddd d �gZ dd� Zd d� Zdd� Z dS )� DNFPlugina� The DNF plugin collects information for the dnf package manager and how it is configured for local system. By default, this plugin will collect configuration files from /etc/dnf, repo files defined in /etc/yum.repos.d/, module information, and various 'dnf list' commands. When using the 'history-info' option, detailed transaction information will be collected for the most recent 50 dnf transactions, and will be saved to the sos_commands/dnf/history-info directory. zdnf package manager�dnf)�systemZpackagemanagerZsysmgmt)�/etc/dnf/dnf.conf)r �history-infoFz$collect detailed transaction history)�defaultZdescc C sH |sdS |� � D ]2}d|v r|�� d }|dkr| jd| dd� qdS )z Get DN module information Nz[i]r zHint:zdnf module info Zdnf_module_info��tags)� splitlines�split�add_cmd_output)�self�modules�line�module� r �:/usr/lib/python3.9/site-packages/sos/report/plugins/dnf.py�get_modules_info( s �zDNFPlugin.get_modules_infoc C s� | � ddi� | �g d�� | jdg d�d� | �d�rD| �d� n| �d � | �d � | �d� | jdd d� | �g d�� | jdddgd� | jdddgd� | �d� | �ddg� | �g d�� | �d�s�| jddd� n�| jddd�}d}|d �rJ|d �� D ]>}z"t|�d�d � � �}W �qJW n t �yD Y n0 �q td t|d d!��D ]}| jd"|� �dd#d$� �q^d%}| �|�}| � |d � d S )&Nz/etc/dnf/modules.d/.*.moduleZdnf_modules)z /etc/dnf/z /etc/yum.confz/etc/yum/pluginconf.d/z/etc/yum/vars/z/etc/yum.repos.d/)Zyum_repos_dZdnf_repos_dZdnf_repor Zall_logsz/var/log/dnf.*z/var/log/dnf.log*z/var/log/dnf.librepo.log*z/var/log/dnf.rpm.log*zdnf module listZdnf_module_list)z dnf --versionzdnf list extraszpackage-cleanup --dupeszpackage-cleanup --problemszdnf list installedZyum_list_installedZdnf_list_installedzdnf -C repolistZyum_repolistZdnf_repolistzdnf -C repolist --verbosez/etc/pki/entitlement/key.pemz/etc/pki/entitlement/*-key.pem)z/etc/pki/product/*.pemz/etc/pki/consumer/cert.pemz/etc/pki/entitlement/*.pemr zdnf historyZdnf_history����output�|r � �2 zdnf history info Zdnf_history_info)Zsubdirr zdnf module list --installed)Z add_file_tagsZ add_copy_specZ get_optionr Zadd_forbidden_pathZcollect_cmd_outputr �intr �strip� ValueError�range�minr )r �historyZtransactionsr Ztr_idZ module_cmdr r r r �setup5 sb �� ��� � � � zDNFPlugin.setupc C s2 d}d}dD ]}| � |||� q| �d||� d S )Nz(password(\s)*=(\s)*)(\S+)\nz\1********\n)z/etc/yum.repos.d/*z/etc/dnf/vars/*r )Zdo_path_regex_subZdo_file_sub)r Zregexp�repl�filer r r �postproc� s zDNFPlugin.postprocN)�__name__� __module__�__qualname__�__doc__Z short_descZplugin_nameZprofiles�filesZpackagesr Zoption_listr r"