a
    1q4f                     @   s`   d dl Z d dlZd dlmZ d dlZd dlmZ d dlm	Z	 dddZ
dd	 ZG d
d dZdS )    N)secretmanager)service_accountcredentialslatestc                 C   s0   d| d| d| }| j |d}|jjdS )Nz	projects/z	/secrets/z
/versions/)namezUTF-8)access_secret_versionpayloaddatadecode)secrets_manager_client
project_id	secret_idZ
version_idr   response r   3/var/www/html/python-backend/backend/environment.pyr   
   s    r   c                    s   i }t j   fdd|D }t j|D ]V}|| }z| ||< W q2 ty } z td| d|  W Y d }~q2d }~0 0 q2W d    n1 s0    Y  |S )Nc                    s   i | ]}  t||qS r   )Zsubmitr   ).0r   Zexecutorr   r   r   r   
<dictcomp>       z1retrieve_secrets_concurrently.<locals>.<dictcomp>zError retrieving secret z: )
concurrentZfuturesZThreadPoolExecutorZas_completedresult	Exceptionprint)r   r   Z
secret_idsZsecretsZfuture_to_secret_idfuturer   excr   r   r   retrieve_secrets_concurrently   s    Jr   c                   @   s  e Zd Zedd dkZeddkZdZer6dndZeserFd	nd
Z	erRdndZ
ejejee	ZejeZejejee
ZeeZndZdZejedZg dZeeeeZed Zed Zed Z ed Z!ed Z"ed Z#e$%ed Z&erLdZ
dZ'dZ(dZ)e*d g dZ+eeee+Z,e,d Z-e,d Z.e,d Z/n@dZ
d
Z	dZ'd Z(d!Z)g d"Z0eeee0Z1e1d# Z-e1d$ Z.e1d% Z/dS )&EnvironmentUSE_TEST_MODEfalsetrueZGAE_ENVstandardTzstoryitapp-devZ
storyitappz storyitapp-dev-37436c53ccb9.jsonzstoryitapp-deaec6dfc398.jsonz6storyitapp-dev-firebase-adminsdk-9lzs4-46cff9a5d7.jsonzfirebase_service_account.jsonNr   )FLASK_API_KEYLAMADAVA_ACCESS_KEYSMARTPROXY_PASSTWILIO_ACCOUNT_SIDTWILIO_AUTH_TOKEN!GMAIL_ALERTS_ACCOUNT_APP_PASSWORDFIREBASE_CONFIGr"   r#   r$   r%   r&   r'   r(   z'https://storyitapp-dev.uc.r.appspot.comzhttps://pls.senddotssandbox.comzstoryitapp-dev.web.appzUsing test mode)DOTS_SANDBOX_API_KEYDOTS_SANDBOX_CLIENT_IDSTRIPE_TEST_SECRET_KEYr)   r*   r+   z#https://storyitapp.uc.r.appspot.comzhttps://pls.dots.devzoffers.storyit.app)DOTS_PRODUCTION_API_KEYDOTS_PRODUCTION_CLIENT_IDSTRIPE_PROD_SECRET_KEYr,   r-   r.   )2__name__
__module____qualname__osgetenvlowerr   ZLIVE_SERVERZGCLOUD_PROJECT_IDZgcloud_creds_filenameZfirebase_creds_filenamepathjoindirname__file__ZGCP_CRED_PATHr   ZCredentialsZfrom_service_account_fileZGCP_CREDENTIALSZFIREBASE_CRED_PATHr   ZCertificateZFIREBASE_CREDENTIALSr   ZSecretManagerServiceClientr   Zcommon_secret_idsr   Zcommon_secretsr"   r#   r$   r%   r&   r'   jsonloadsr(   FLASK_SERVER_URLZDOTS_URLZWEB_APP_URLr   Ztest_secret_idsZtest_secretsZDOTS_API_KEYZDOTS_CLIENT_IDZSTRIPE_SECRET_KEYZprod_secret_idsZprod_secretsr   r   r   r   r      sX   

r   )r   )r9   r2   Zgoogle.cloudr   Zconcurrent.futuresr   Zgoogle.oauth2r   Zfirebase_adminr   r   r   r   r   r   r   r   <module>   s   
