pipeline { agent any environment { APP_NAME = 'guardia-fa' DEPLOY_DIR = '/opt/guardia-fa' JAR_NAME = 'guardia-fa-1.0.0.jar' APP_PORT = '8017' GIT_REPO = 'http://127.0.0.1:9003/zio/guardia-fa.git' } stages { stage('Checkout') { steps { echo "GUARDiA FA 빌드 시작 - Branch: ${env.BRANCH_NAME}" } } stage('Frontend Build') { steps { dir('workspace/guardia-fa/frontend') { sh 'npm install' sh 'npm run build' } } } stage('Backend Build') { steps { dir('workspace/guardia-fa/backend') { sh 'mvn clean package -DskipTests' } } } stage('Deploy') { steps { sh """ systemctl stop guardia-fa || true sleep 2 mkdir -p ${DEPLOY_DIR} cp workspace/guardia-fa/backend/target/${JAR_NAME} ${DEPLOY_DIR}/${JAR_NAME} systemctl start guardia-fa sleep 5 curl -f http://localhost:${APP_PORT}/api/fa/dashboard/overview || exit 1 """ } } } post { success { echo "GUARDiA FA 8017 배포 성공" } failure { echo "GUARDiA FA 배포 실패 - 롤백 필요" } } }