env¶
ModelsDotEnv¶
- class msdss_models_api.env.ModelsDotEnv(broker_url='MSDSS_MODELS_BROKER_URL', backend_url='MSDSS_MODELS_BACKEND_URL', folder='MSDSS_MODELS_FOLDER', env_file='./.env', key_path=None)[source]¶
Class to manage model environment variables.
Extends
msdss_base_dotenv:msdss_base_dotenv.core.DotEnv
- Parameters
Author
Richard Wen <rrwen.dev@gmail.com>
Example
from msdss_models_api.env import ModelsDotEnv # Get default env vars env = ModelsDotEnv() env.save() # save to .env file env.load() # load the same file # Print defaults print('default_env:\n') for k, name in env.mappings.items(): value = str(env.get(k)) print(f'{name}: {value}') # Remove saved .env file env.clear() # Create models env with diff var names alt_env = ModelsDotEnv( broker_url='MSDSS_MODELS_BROKER_URL_B', backend_url='MSDSS_MODELS_BACKEND_URL_B', folder='MSDSS_MODELS_FOLDER_B' ) # Set secret alt_env.set('broker_url', 'redis://localhost:6379/0') # Set folder alt_env.set('folder', './path/to/folder') alt_env.delete('folder') # Check if backend url is set backend_is_set = alt_env.is_set('backend_url') # Print custom env # See new env print('\nalt_env:\n') for k, name in alt_env.mappings.items(): value = str(alt_env.get(k)) print(f'{name}: {value}') print('backend_is_set: ' + str(backend_is_set)) # Clear alt env files alt_env.clear()
default_env: MSDSS_MODELS_BROKER_URL: None MSDSS_MODELS_BACKEND_URL: None MSDSS_MODELS_FOLDER: None alt_env: MSDSS_MODELS_BROKER_URL_B: redis://localhost:6379/0 MSDSS_MODELS_BACKEND_URL_B: None MSDSS_MODELS_FOLDER_B: None backend_is_set: False