Sindbad~EG File Manager
3
�f�+ � @ sr d dl mZ d dlZd dlmZmZmZmZmZ d dl Z G dd� de�Z
G dd� de
e�ZG dd � d e
ee�ZdS )
� )� translateN)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPlugin� PluginOptc @ s� e Zd ZdZdZd4ZdZddgZddd d
ddd
ddddddddddgZddddgZ e
dddd�e
d dd!d�e
d"dd#d�e
d$d%ed&d'�gZd(Z
d)d*� Zd+d,� Zd-d.� Zd/d0� Zd1d2� Zd3S )5�
Kubernetesz+Kubernetes container orchestration platform�
kubernetes� containeri� z/etc/kubernetesz/run/flannel�eventsZdeploymentsZ ingresses�podsZpvc�servicesZ
daemonsetsZreplicasetsZ endpointsZstatefulsetsZ
configmapsZserviceaccountsZsecretsZjobsZcronjobsZclusterrolesZclusterrolebindingsZscZpvZrolesZrolebindings�allFz'collect all namespace output separately)�default�desc�describez(collect describe output of all resources�podlogsz$capture stdout/stderr logs from podszpodlogs-filter� z1only collect logs from pods matching this pattern)r Zval_typer �kubectlc s t � fdd�� jD ��S )z" Check if this is the master node c 3 s | ]}� j |�V qd S )N)�path_exists)�.0�f)�self� � /usr/lib/python3.6/kubernetes.py� <genexpr>J s z-Kubernetes.check_is_master.<locals>.<genexpr>)�any�files)r r )r r �check_is_masterH s zKubernetes.check_is_masterc
s� � j � j� � jddddg� ddddd d
ddd
dg
}x|D ]}� j|d� q<W � j� s\d S x&d&D ]}� j� j� d|� �dd� qbW � jd�r�� j� fdd�� jD �dd� n� j� fdd�� jD �dd� � j � j� d�dd�}|d dko�� jd��rNxR|d j
� dd � D ]:}|j� }|�s&�q|d }� j� j� d|� �dd� �qW � j� j� d �gdd� � j� j� d!�dd� � jd"��r�� j
jd#d$g� � jd%� � j� � j� d S )'NZ
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)�units�version�config view� zcluster-info)�subdirr c s g | ]}� j � d |� ��qS )z
get -o json )�kube_cmd)r �res)r r r �
<listcomp>r s z$Kubernetes.setup.<locals>.<listcomp>c s g | ]}� j � d |� ��qS )z get )r$ )r r% )r r r r&