import os
import json
def compact_env_vars(env_vars, fallback_values):
"""
Compactly outputs environment variables as JSON, with fallback values.
Args:
env_vars (dict): A dictionary of environment variables.
fallback_values (dict): A dictionary of fallback values for missing env vars.
Returns:
str: A JSON string representing the compacted environment variables.
"""
compacted_vars = {}
for key, value in env_vars.items():
compacted_vars[key] = value
# Apply fallbacks
for key, fallback in fallback_values.items():
if key not in compacted_vars:
compacted_vars[key] = fallback
return json.dumps(compacted_vars, indent=4) #indent for readability
if __name__ == '__main__':
# Example Usage:
env = os.environ.copy() #copy the current environment
fallback = {
"DATABASE_URL": "default_database_url",
"API_KEY": "default_api_key",
"DEBUG": True
}
compacted_json = compact_env_vars(env, fallback)
print(compacted_json)
Add your comment