pipeline { agent any stages { stage('Configurar Entorno') { steps { script { // Aquí asignamos las variables directamente al entorno global de la ejecución if (env.BRANCH_NAME == 'master') { echo "--- MODO PRODUCCIÓN DETECTADO ---" env.CONTAINER_NAME = "django_app_master" env.PORT = "8001" env.DEBUG_MODE = "0" } else if (env.BRANCH_NAME == 'dev') { echo "--- MODO DESARROLLO DETECTADO ---" env.CONTAINER_NAME = "django_app_dev" env.PORT = "8000" env.DEBUG_MODE = "1" } } } } stage('Despliegue') { when { anyOf { branch 'dev'; branch 'master' } } steps { echo "EJECUTANDO DOCKER: ${env.CONTAINER_NAME} en el puerto ${env.PORT}" // Forzamos a Docker a leer las variables y usamos un nombre de proyecto fijo (-p) // Busca esta línea en tu Jenkinsfile y añade el final: sh "CONTAINER_NAME=${CONTAINER_NAME} PORT=${PORT} DEBUG_MODE=${DEBUG_MODE} docker compose -p django_bac -f deployments/docker-compose.yml up -d --build ${CONTAINER_NAME}" } } } } // Automatización activada