EthicApp-Development / ethicapp-main

EthicApp's main repository containing backend and frontend applications
MIT License
1 stars 1 forks source link

[ethicapp-v2-ca] Mejorar nombres de ciertas variables de entorno y parámetros #347

Closed claudio-alvarez closed 1 month ago

claudio-alvarez commented 3 months ago

Descripción general

Hay algunos detalles sobre variables de entorno que tienen que ser mejorados por razones de consistencia.

Primero, la variable de entorno CONTENT_ANALYSIS_SERVICE lleva valores True y False válidos en Python (que corresponde al stack con que está implementado el servicio), pero considerando que se trata de variables de entorno esto se ve extraño. Generalmente, con variables de entorno el valor va completamente en mayúsculas o completamente en minúsculas. Dado que las variables mismas las declaramos en mayúsculas, usemos valores en minúscula para distinguirlos claramente de las variables.

CONTENT_ANALYSIS_SERVICE=True  # Debería ser "true/false"

Segundo, hay una variable que se llama REDIS_HOST_NAME, y tiene un valor default RedisContainer. No usamos PascalCase para nombres compuestos de contenedores, sino kebab-case (redis-container). De hecho, así ha quedado definida CONTENT_ANALYSIS_HOST_NAME, con valor default content-analysis. Sugiero como nombre ethicapp-redis.

En la variable ETHICAPP_API_KEY el valor default es DevelopmentApiKey. En la documentación no tenemos una explicación sobre cómo se debe setear esta variable y qué valor podría tener. Sugiero agregar un comentario antes de esa entrada en .env, y además agregar a README.md indicación de que debe setearse apropiadamente. Sugiero adoptar un valor default que no sea trivial, por ejemplo, un fragmento de UUID, a6fd-b101de177f49

¿Por qué es necesario?

Por consistencia y para adoptar una decisión clara respecto al nombramiento de de variables de entorno y sus valores posibles.

claudio-alvarez commented 3 months ago

@sdiazgt a la variable de entorno ETHICAPP_API_KEY definitivamente hay que cambiarle el nombre, pues no es una API_KEY para EthicApp, es una api-key para el servicio de análisis de contenido. Ponle CONTENT_ANALYSIS_API_KEY.

grep -nr ETHICAPP_API_KEY *   
content-analysis/app.py:27:validation_api_key = os.environ.get("ETHICAPP_API_KEY")
docker-compose.content-analysis.yml:26:      ETHICAPP_API_KEY: ${ETHICAPP_API_KEY}
docker-compose.content-analysis.yml:40:      ETHICAPP_API_KEY: ${ETHICAPP_API_KEY}
docker-compose.yml:35:      ETHICAPP_API_KEY: ${ETHICAPP_API_KEY}
ethicapp/backend/middleware/validate-session.js:7:    if (apiKey && apiKey === `${process.env.ETHICAPP_API_KEY}`) {