Spaces:
Running
Running
File size: 1,318 Bytes
6cfd9ed eda7ff7 1f1304e 6cfd9ed 927a8e5 6cfd9ed eda7ff7 6cfd9ed eda7ff7 d5cae3b eda7ff7 d5cae3b 6cfd9ed d5cae3b 6cfd9ed |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
import os
import json
def creaConfigFirestore(configuracion, ruta_archivo="archivos/config.json"):
# Paso 1: Obtener la variable de entorno
firestore_config_str = os.getenv(configuracion)
if firestore_config_str is None:
print(f"Error: La variable de entorno '{configuracion}' no está definida.")
else:
try:
# Paso 2: Convertir el string JSON en un diccionario de Python
firestore_config_dict = json.loads(firestore_config_str)
# Paso 3: Asegurarse de que la carpeta de destino exista
# os.makedirs() creará la carpeta y sus padres si no existen
# El parámetro 'exist_ok=True' evita que falle si la carpeta ya existe
os.makedirs(os.path.dirname(ruta_archivo), exist_ok=True)
# Paso 4: Escribir el diccionario en el archivo en la ruta especificada
with open(ruta_archivo, 'w') as archivo_json:
json.dump(firestore_config_dict, archivo_json, indent=4)
print(f"Archivo '{ruta_archivo}' creado exitosamente.")
except json.JSONDecodeError as e:
print(f"Error: El contenido de la variable de entorno no es un JSON válido. Detalles: {e}")
except IOError as e:
print(f"Error al escribir en el archivo: {e}") |