§
    Štj  ã                   óV   — d dl Z d dlZ d dlZd dlZd dlZddlmZ  G d„ de¦  «        ZdS )é    Né   )ÚConfigExceptionc                   ó    — e Zd ZdZd„ Zdd„ZdS )ÚExecProvidera,  
    Implementation of the proposal for out-of-tree client authentication providers
    as described here --
    https://github.com/kubernetes/community/blob/master/contributors/design-proposals/auth/kubectl-exec-plugins.md

    Missing from implementation:

    * TLS cert support
    * caching
    c                 óÈ  — dD ]}||vrt          d|z  ¦  «        ‚Œ|d         | _        |d         g| _        |                     d¦  «        r | j                             |d         ¦  «         t
          j                             ¦   «         | _        |                     d¦  «        r>i }|d         D ]}|d         }|d         }|||<   Œ| j         	                    |¦  «         d S d S )	N)ÚcommandÚ
apiVersionz)exec: malformed request. missing key '%s'r	   r   ÚargsÚenvÚnameÚvalue)
r   Úapi_versionr
   Úsafe_getÚextendÚosÚenvironÚcopyr   Úupdate)ÚselfÚexec_configÚkeyÚadditional_varsÚitemr   r   s          úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/kubernetes/aio/config/exec_provider.pyÚ__init__zExecProvider.__init__#   s  € Ø,ð 	Ið 	IˆCØ˜+Ð%Ð%Ý%ØAÀCÑGñIô Ið Ið &ð ' |Ô4ˆÔØ  Ô+Ð,ˆŒ	Ø×Ò Ñ'Ô'ð 	2ØŒI×Ò˜[¨Ô0Ñ1Ô1Ð1Ý”:—?’?Ñ$Ô$ˆŒØ×Ò Ñ&Ô&ð 	-Ø ˆOØ# EÔ*ð .ð .�Ø˜F”|�Ø˜Wœ�Ø(-� Ñ%Ð%ØŒH�OŠO˜OÑ,Ô,Ð,Ð,Ð,ð	-ð 	-ó    Nc              ƒ   óÞ  K  — t          t          j        ¦   «         ¦  «        j        dk    rt	          d¦  «        ‚| j        ddt          j                             ¦   «         idœ}|r||d         d<   t          j
        |¦  «        | j        d<   t          j        | j        | j        d t          j        j        t          j        j        d	œŽ}|ƒ d {V —†}|j                             ¦   «         ƒ d {V —†}|j                             ¦   «         ƒ d {V —†}|                     ¦   «         ƒ d {V —†}|d
k    r2d|z  }|                     ¦   «         }|r|d|z  z  }t	          |¦  «        ‚	 t          j        |¦  «        }	n$# t*          $ r}
t	          d|
z  ¦  «        ‚d }
~
ww xY wdD ]}||	vrt	          d|z  ¦  «        ‚Œ|	d         | j        k    r t	          d|	d         ›d| j        ›�¦  «        ‚|	d         S )NÚ_WindowsSelectorEventLoopzLexec: _WindowsSelectorEventLoop does NOT support subprocesses, see README.mdÚExecCredentialÚinteractive)r	   ÚkindÚspecr"   ÚresponseÚKUBERNETES_EXEC_INFO)r   ÚstdinÚstdoutÚstderrr   zexec: process returned %dz. %sz)exec: failed to decode process output: %s)r	   r!   Ústatusz*exec: malformed response. missing key '%s'r	   zexec: plugin api version z does not match r(   )ÚtypeÚasyncioÚget_event_loopÚ__name__r   r   Úsysr&   ÚisattyÚjsonÚdumpsr   Úcreate_subprocess_execr
   Ú
subprocessÚPIPEÚreadr'   ÚwaitÚstripÚloadsÚ
ValueError)r   Úprevious_responseÚkubernetes_exec_infoÚcmd_execÚprocr&   r'   Ú	exit_codeÚmsgÚdataÚder   s               r   ÚrunzExecProvider.run5   s{  è è € å•Ô&Ñ(Ô(Ñ)Ô)Ô2Ð6QÒQÐQÝ!Ø^ñô ð ð
 Ô*Ø$à�sœz×0Ò0Ñ2Ô2ðð 
ð  
Ðð ð 	IØ7HÐ  Ô(¨Ñ4Ý+/¬:Ð6JÑ+KÔ+KˆŒÐ'Ñ(åÔ1°4´9Ø6:´hØ8<Ý9@Ô9KÔ9PÝ9@Ô9KÔ9Pð	Rð Rð Rˆð
 ˆ~ˆ~ˆ~ˆ~ˆ~ˆ~ˆà”{×'Ò'Ñ)Ô)Ð)Ð)Ð)Ð)Ð)Ð)ˆØ”{×'Ò'Ñ)Ô)Ð)Ð)Ð)Ð)Ð)Ð)ˆØŸ)š)™+œ+Ð%Ð%Ð%Ð%Ð%Ð%ˆ	à˜Š>ˆ>Ø-°	Ñ9ˆCØ—\’\‘^”^ˆFØð 'Ø�v ‘Ñ&�Ý! #Ñ&Ô&Ð&ð	BÝ”:˜fÑ%Ô%ˆDˆDøÝð 	Bð 	Bð 	BÝ!Ø;¸bÑ@ñBô Bð Bøøøøð	Bøøøð 4ð 	Jð 	JˆCØ˜$ˆˆÝ%ØBÀSÑHñJô Jð Jð ð �Ô Ô!1Ò1Ð1Ý!�/à�lÔ#Ð#Ð# TÔ%5Ð%5ð7ñ8ô 8ð 8ð �HŒ~Ðs   Å"E7 Å7
FÆFÆF)N)r,   Ú
__module__Ú__qualname__Ú__doc__r   rA   © r   r   r   r      sA   € € € € € ð	ð 	ð-ð -ð -ð$0ð 0ð 0ð 0ð 0ð 0r   r   )	r*   Úasyncio.subprocessr/   r   r-   Úconfig_exceptionr   Úobjectr   rE   r   r   ú<module>rI      s‡   ðð €€€Ø Ð Ð Ð Ø €€€Ø 	€	€	€	Ø 
€
€
€
à -Ð -Ð -Ð -Ð -Ð -ðNð Nð Nð Nð N�6ñ Nô Nð Nð Nð Nr   