pipeline {
    agent any

    stages {
        stage('Checkout') {
            steps {
                // Jenkins va prelua codul sursă din depozitul Git
                echo 'Se descarca codul...'
            }
        }

        stage('Build Docker Image') {
            steps {
                script {
                    // Construim imaginea și îi dăm un nume (tag)
                    sh 'cd project1 && docker build -f Dockerfile -t web-checker-app .'
                }
            }
        }

        stage('Run Checker') {
            steps {
                script {
                    // Rulăm containerul
                    sh 'docker run --rm web-checker-app'
                }
            }
        }
    }

    post {
        failure {
            script {
                def discordUrl = "https://discord.com/api/webhooks/1471492658336891013/T5s6ZKZjJjDMHXc3k3jjZdk6m5EV12bKF1wda9d5I_gZJrsDZQ1m1m078IiLJWK38mqa"
                def payload = """
                {
                    "content": "🚨 **ALERTA JENKINS** 🚨\\n**Proiect:** ${env.JOB_NAME}\\n**Status:** FAILED ❌\\n**Build Nr:** ${env.BUILD_NUMBER}\\n**Detalii:** ${env.BUILD_URL}"
                }
                """
                
                // Trimitem notificarea folosind curl
                sh "curl -H 'Content-Type: application/json' -d '${payload}' ${discordUrl}"
            }
        }
        success {
            echo "Totul a functionat perfect! Nu trimitem notificare pe Discord (ca sa nu facem spam)."
        }
    }
}