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 {
                // Verificamos que ya NO sale "null"
                echo "DESPLEGANDO: ${env.CONTAINER_NAME} en puerto ${env.PORT}"
                
                sh "docker compose -f deployments/docker-compose.yml up -d --build"
            }
        }
    }
}