HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3/dist-packages/sos/report/plugins/__pycache__/kubernetes.cpython-38.pyc
U

i��d �@sdddlmZmZmZmZddlmZddlZGdd�de�ZGdd�dee�Z	Gdd	�d	ee�Z
dS)
�)�Plugin�RedHatPlugin�UbuntuPlugin�	PluginOpt)�	translateNc	@sjeZdZdZdZdZedddd�eddd	d�ed
ddd�edd
edd�gZdZ	dd�Z
dd�Zdd�ZdS)�
Kubernetesz+Kubernetes container orchestration platform�
kubernetes)Z	container�allFz'collect all namespace output separately)�default�desc�describez(collect describe output of all resources�podlogsz$capture stdout/stderr logs from pods�podlogs-filter�z1only collect logs from pods matching this pattern)r
Zval_typer�kubectlcst�fdd��jD��S)Ncsg|]}��|��qS�)�path_exists)�.0�f��selfr�?/usr/lib/python3/dist-packages/sos/report/plugins/kubernetes.py�
<listcomp>&sz.Kubernetes.check_is_master.<locals>.<listcomp>)�any�filesrrrr�check_is_master%szKubernetes.check_is_masterc
sn��d���d���ddddg�ddd	d
ddd
dddg
}|D]}�j|d�qB���s`dSd}dD]}��d�j|f�qh��d�j�}|d��dd�}dd�|D�}ddddddd d!d"d#g
}d$d%d&g}	���fd'd�|	D����d(�j�}
|
d)d*k�rZ|
d��dd�D]8}|��}|�s6�q |d*}
�jd+�j|
fd,d-��q ��d.�j���	d/��r�|�
d0d1g���d2�|D�]�}d3|}��d4��r�d5�j||f}��d6|�|D]}�jd||f|d-��qΈ�d7��r�d�j|f}|D]v}��d8||f�}|d)d*k�r
d9d�|d��dd�D�}|D],}d�j|f}�jd:|||f|d-��qP�q
��d;��r�d�j|f}��d<|�}|d)d*k�r�d=d�|d��dd�D�}��d>��r�t
��d>��nd}|D]4}|�rt�||��s�q��jd?||fdd-��q��q���d4��sjd@�j}|D]}�jd||f|d-��qLdS)ANz/etc/kubernetesz/run/flannelZ
KUBECONFIGZKUBERNETES_HTTP_PROXYZKUBERNETES_HTTPS_PROXYZKUBERNETES_NO_PROXYZkubeletzkube-apiserverz
kube-proxyzkube-schedulerzkube-controller-managerzsnap.kubelet.daemonzsnap.kube-apiserver.daemonzsnap.kube-proxy.daemonzsnap.kube-scheduler.daemonz#snap.kube-controller-manager.daemon�Zunitszget -o json )�versionzconfig viewz%s %sz%s get namespaces�output�cSs(g|] }|rt|���r|��d�qS�r)�len�split)r�nrrrrOsz$Kubernetes.setup.<locals>.<listcomp>ZdeploymentsZ	ingressesZlimitranges�podsZpoliciesZpvcZrcZresourcequotasZroutes�servicesZ
namespacesZprojectsZpvscsg|]}d�j|f�qS)�	%s get %s)�kube_cmd)r�resrrrrdsz%s get nodesZstatusrz%s describe node %s�nodes)Zsubdirz%s get --raw /metricszkubevirt-virtctlZvmsZvmiszvirtctl versionz--namespace=%sr	z%s %s %sz	%s eventsrr&cSsg|]}|��d�qSr �r")r�krrrr�sz%s describe %s %sr
z%s get podscSsg|]}|��d�qSr r*)r�prrrr�srz
%s logs %sz%s get --all-namespaces=true)Z
add_copy_specZadd_env_var�add_journalrZadd_cmd_outputr'Zcollect_cmd_output�
splitlinesr"Zis_installed�extendZ
get_optionZexec_cmdr�re�match)rZsvcs�svcZkube_get_cmdZsubcmdZknZ	kn_outputZknspsZ	resourcesZglobal_resourcesr)�lineZwordsZnoder#ZknspZk_cmdr(�rZk_listr+r$ZregZpodrrr�setup(s�

��
����


������
zKubernetes.setupcCs d}|�d|d�|�d�dS)NzX(?P<var>{\s*"name":\s*[^,]*(pass|pwd|key|token|cred|PASS|PWD|KEY)[^,]*,\s*"value":)[^}]*rz\g<var> "********")Zdo_cmd_output_subZdo_cmd_private_sub)rZ
env_regexprrr�postproc�s
�zKubernetes.postprocN)
�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesr�strZoption_listr'rr5r6rrrrrs*�����rcs(eZdZdZdZdZ�fdd�Z�ZS)�RedHatKubernetes)rzkubernetes-masterzatomic-openshift-master)�#/etc/origin/master/admin.kubeconfigz(/etc/origin/node/pods/master-config.yamlrcs"|�d�rd|_tt|���dS)Nr<Zoc)rr'�superr;r5r��	__class__rrr5�s
zRedHatKubernetes.setup)r7r8r9�packagesrr'r5�
__classcell__rrr>rr;�sr;cs(eZdZdZdZdZ�fdd�Z�ZS)�UbuntuKubernetes)r)z#/root/cdk/cdk_addons_kubectl_configz/etc/kubernetes/admin.conf)zcdk.master.auth-webhookcsV|jD]$}|�|�r|jd|7_q,q|jD]}|j|d�q2tt|���dS)Nz --kubeconfig=%sr)rrr'r%r-r=rBr5)rZ_kconfr2r>rrr5�s


zUbuntuKubernetes.setup)r7r8r9r@rr%r5rArrr>rrB�srB)Zsos.report.pluginsrrrrZfnmatchrr0rr;rBrrrr�<module>s*