DevPath · Aprende a programar ESPTEN

Despliegue, entornos y secretos

Entornos, configuración y secretos

Tres entornos, un mismo código

El mismo código se ejecuta en varios entornos:

Lo que cambia entre entornos no es el código: es la configuración (URL de la base de datos, claves de API, nivel de logs...).

Variables de entorno y 12-factor

La metodología 12-factor propone, entre otras cosas, separar la configuración del código y leerla del entorno. En Node eso es process.env:

const config = {
  puerto: process.env.PORT || 3000,
  baseDatos: process.env.DATABASE_URL,
  entorno: process.env.NODE_ENV || "development",
};

Así el mismo artefacto (la misma build) corre en dev, staging y prod solo cambiando las variables. Nunca metas valores de producción incrustados en el código.

Gestión de secretos

Las claves y contraseñas son secretos. Reglas de oro:

# .env queda IGNORADO por Git; se versiona solo el ejemplo sin valores reales
echo ".env" >> .gitignore
git add .env.example   # documenta QUÉ variables hacen falta, no sus valores

Feature flags

Un feature flag es un interruptor que activa o desactiva una función sin volver a desplegar. Sirve para lanzar a un porcentaje de usuarios, hacer pruebas A/B o apagar algo que está fallando al instante.

if (featureActiva(flags, "nuevo-checkout", usuario)) {
  mostrarNuevoCheckout();
} else {
  mostrarCheckoutClasico();
}
Pon esto en práctica

DevPath es un curso práctico: aquí lees la teoría; en la app la pones en práctica con ejercicios que se ejecutan de verdad, sin conexión.

Empezar gratis en la app →
← Dónde desplegarInfraestructura como código →