o
    Æ°i  ã                   @   sJ   d Z ddlZddlmZ ddlZddlmZ dd„ Zdee fdd	„Z	dS )
zô
This is a file for the Google KMS integration

Relevant issue: https://github.com/BerriAI/litellm/issues/1235

Requires:
* `os.environ["GOOGLE_APPLICATION_CREDENTIALS"], os.environ["GOOGLE_KMS_RESOURCE_NAME"]`
* `pip install google-cloud-kms`
é    N)ÚOptional)ÚKeyManagementSystemc                   C   s(   dt jvr	tdƒ‚dt jvrtdƒ‚d S )NZGOOGLE_APPLICATION_CREDENTIALSzFMissing required environment variable - GOOGLE_APPLICATION_CREDENTIALSÚGOOGLE_KMS_RESOURCE_NAMEz@Missing required environment variable - GOOGLE_KMS_RESOURCE_NAME)ÚosÚenvironÚ
ValueError© r   r   úY/home/app/Keep/.python/lib/python3.10/site-packages/litellm/secret_managers/google_kms.pyÚvalidate_environment   s   
ÿ
ÿÿr
   Úuse_google_kmsc              
   C   sl   | d u s| du r
d S zddl m} tƒ  | ¡ }|t_tjt_t	 
d¡t_W d S  ty5 } z|‚d }~ww )NFr   )Úkms_v1r   )Zgoogle.cloudr   r
   ZKeyManagementServiceClientÚlitellmZsecret_manager_clientr   Z
GOOGLE_KMSZ_key_management_systemr   ÚgetenvZ_google_kms_resource_nameÚ	Exception)r   r   ÚclientÚer   r   r	   Úload_google_kms   s   €ÿr   )
Ú__doc__r   Útypingr   r   Zlitellm.proxy._typesr   r
   Úboolr   r   r   r   r	   Ú<module>   s    
