pipeline {
    agent any

    environment {
        SONAR_HOST_URL = 'http://192.168.1.22:9000'
        SONAR_TOKEN = credentials('sonar-token')
    }

    stages {
        stage('Sonar Scan') {
            when {
                expression {
                    return env.BRANCH_NAME != null
                }
            }
            steps {
                sh """
                  sonar-scanner \
                    -Dsonar.projectKey=${env.JOB_NAME} \
                    -Dsonar.projectName=${env.JOB_NAME} \
                    -Dsonar.branch.name=${env.BRANCH_NAME} \
                    -Dsonar.sources=. \
                    -Dsonar.host.url=${SONAR_HOST_URL} \
                    -Dsonar.login=${SONAR_TOKEN}
                """
            }
        }
    }
}