ó E»bc@s”ddlmZmZmZddlmZddlmZddlZdefd„ƒYZ de efd„ƒYZ d e efd „ƒYZ dS( iÿÿÿÿ(tPlugint RedHatPlugint UbuntuPlugin(t translate(tpathNt KubernetescBsqeZdZdZdZdddefdddefd d defdgZdZd„Zd„Z d„Z RS(sKubernetes plugin t kubernetest containertalls-also collect all namespaces output separatelytslowtdescribes*capture descriptions of all kube resourcestfasttpodlogsscapture logs for podsspodlogs-filters/only capture logs for pods matching this stringttkubectlcCs)tg|jD]}tj|ƒ^q ƒS(N(tanytfilesRtexists(tselftf((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pytcheck_is_master%sc Csâ|jdƒ|jdƒ|jddddgƒddd d d g}x|D]}|jd |ƒqOW|jƒsydSd }x.ddgD] }|jd|j|fƒqŒW|jd|jƒ}|djƒd}g|D].}|rát|j ƒƒrá|j ƒd^qá}ddddddddddg } dd d!g} |jg| D]} d"|j| f^qUƒ|jd#|jƒ} | d$dkrÿxa| djƒdD]H} | j ƒ}|sÎq°n|d}|jd%|j|fd&d'ƒq°Wn|jd(|jƒ|j d)ƒrE| j d*d+gƒ|jd,ƒnxI|D]A}d-|}|j d.ƒrÃd/|j||f}|jd0|ƒx.| D]#} |jd|| fd&| ƒq™Wn|j d1ƒršd|j|f}x²| D]§} |j d"|| fƒ}|d$dkrìg|djƒdD]}|j ƒd^q0}xD|D]9}d|j|f}|jd2|| |fd&| ƒqSWqìqìWn|j d3ƒrLd|j|f}|j d4|ƒ}|d$dkrg|djƒdD]}|j ƒd^qô}|j d5ƒr4t|j d5ƒƒnd}xM|D]B}|rftj||ƒ rfqAn|jd6||fd&dƒqAWqqLqLW|j d.ƒsÞd7|j}x.| D]#} |jd|| fd&| ƒq´WndS(8Ns/etc/kubernetess /run/flannelt KUBECONFIGtKUBERNETES_HTTP_PROXYtKUBERNETES_HTTPS_PROXYtKUBERNETES_NO_PROXYtkubeletskube-apiservers kube-proxyskube-schedulerskube-controller-managertunitss get -o json tversions config views%s %ss%s get namespacestoutputiit deploymentst ingressest limitrangestpodstpoliciestpvctrctresourcequotastroutestservicest namespacestprojectstpvss %s get %ss %s get nodeststatuss%s describe node %stsubdirtnodess%s get --raw /metricsskubevirt-virtctltvmstvmissvirtctl versions--namespace=%sRs%s %s %ss %s eventsR s%s describe %s %sR s %s get podsspodlogs-filters %s logs %ss%s get --all-namespaces=true(t add_copy_spect add_env_vart add_journalRtadd_cmd_outputtkube_cmdtcollect_cmd_outputt splitlinestlentsplitt is_installedtextendt get_optiontexec_cmdRtNonetretmatch(Rtsvcstsvct kube_get_cmdtsubcmdtknt kn_outputtntknspst resourcestglobal_resourcestresR,tlinetwordstnodetknsptk_cmdtrtktk_listtpR tregtpod((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pytsetup(s¬      ;  '     $ . .*   cCs*d}|jd|dƒ|jdƒdS(NsX(?P{\s*"name":\s*[^,]*(pass|pwd|key|token|cred|PASS|PWD|KEY)[^,]*,\s*"value":)[^}]*Rs\g "********"(tdo_cmd_output_subtdo_cmd_private_sub(Rt env_regexp((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pytpostproc¦s (R(spodlogs-filters/only capture logs for pods matching this stringR R ( t__name__t __module__t__doc__t plugin_nametprofilestFalset option_listR3RRURY(((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pyRs     ~tRedHatKubernetescBs8eZdZdZd ZdZejdƒr6dZnRS( sRed Hat Kubernetes plugin Rskubernetes-mastersatomic-openshift-masters#/etc/origin/master/admin.kubeconfigs(/etc/origin/node/pods/master-config.yamlRtoc(s kubernetesskubernetes-mastersatomic-openshift-master(s#/etc/origin/master/admin.kubeconfigs(/etc/origin/node/pods/master-config.yaml(RZR[R\tpackagesRR3RR(((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pyRaµstUbuntuKubernetescBs eZdZdZdZdZRS(sUbuntu Kubernetes plugin Rs/root/cdk/kubeproxyconfigs.kubectl --kubeconfig=/root/cdk/kubeproxyconfig(s kubernetes(s/root/cdk/kubeproxyconfig(RZR[R\RcRR3(((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pyRdÊs( t sos.pluginsRRRtfnmatchRtosRR=RRaRd(((s:/usr/lib/python2.7/site-packages/sos/plugins/kubernetes.pyt s  £