pipeline {
    agent { label 'mac-mini' }

    environment {
        NAS = "happyhome@jisangs.synology.me"
        NAS_PORT = "21022"
        NAS_TMP = "/volume1/docker/service/jisangs/chocomae-stage/tmp"
        ARCHIVE = "chocomae-build-${BUILD_NUMBER}.tar.gz"
    }

    stages {
        stage('Package') {
            steps {
                sh 'chmod +x deploy/stage-jenkins/*.sh && ./deploy/stage-jenkins/package.sh'
            }
        }
        stage('Upload') {
            steps {
                sh '''
                    ssh -p ${NAS_PORT} ${NAS} "mkdir -p ${NAS_TMP}"
                    scp -O -P ${NAS_PORT} ${ARCHIVE} deploy/stage-jenkins/remote_deploy.sh ${NAS}:${NAS_TMP}/
                '''
            }
        }
        stage('Deploy') {
            steps {
                sh '''
                    ssh -p ${NAS_PORT} ${NAS} \
                        "bash ${NAS_TMP}/remote_deploy.sh ${ARCHIVE}"
                '''
            }
        }
    }

    post {
        always {
            sh 'rm -fv ${ARCHIVE} || true'
        }
        success {
            echo "✓ chocomae-stage 배포 성공 (build #${BUILD_NUMBER})"
        }
        failure {
            echo "✗ 배포 실패 — Deploy stage였다면 NAS에서 자동 롤백됨. Console Output 확인"
        }
    }
}