guardia-fa/Jenkinsfile

54 lines
1.2 KiB
Groovy

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 배포 실패 - 롤백 필요"
}
}
}