pipeline {
	
	agent any
	
    stages {
        stage('npm打包构建') {
            steps {
                echo "\n--------------- npm打包构建 start ---------------\n"
                nodejs('nodejs-20.15.0') {
                    sh "npm install pnpm -g"
                    sh "pnpm config set registry https://registry.npmmirror.com/"
                    sh 'pnpm install'
                    sh 'pnpm build'

                }
                echo "\n--------------- npm打包构建 end ---------------\n"
            }
        }
        
         stage('检测代码质量') {
            steps {
                echo "\n--------------- 检测代码质量 start ---------------\n"
                sh '/var/jenkins_home/sonar-scanner/bin/sonar-scanner -Dsonar.projectname=${JOB_NAME} -Dsonar.projectKey=${JOB_NAME} -Dsonar.sources=./ -Dsonar.java.binaries=dist/ -Dsonar.host.url=http://192.168.1.98:9000 -Dsonar.login=551922b1e3e147a901476aac071d3ae20fa5d363'
                echo "\n--------------- 检测代码质量 end ---------------\n"
            }
        }
        
        stage('运行docker-compose文件构建上传') {
            steps {
                echo "\n--------------- 运行docker-compose文件构建上传 start ---------------\n"
                sh '''
                    docker-compose -f docker-compose-build.yml build
                    docker-compose -f docker-compose-build.yml push
                    docker image prune -f
                '''
                echo "\n--------------- 运行docker-compose文件构建上传 end ---------------\n"
            }
        }
    }
}
