the-tip-top-backend/Jenkinsfile

54 lines
1.4 KiB
Groovy

pipeline {
agent any
environment {
REGISTRY = 'registry.wk-archi-o24a-15m-g3.fr'
BACK_IMAGE = "${REGISTRY}/the-tip-top-backend"
}
stages {
stage('Checkout') {
steps {
git branch: 'main', url: 'https://gitea.wk-archi-o24a-15m-g3.fr/wkadmin/the-tip-top-backend.git'
}
}
stage('Build Backend') {
steps {
sh '''
npm ci
npm run build || true
docker build -t $BACK_IMAGE:latest .
'''
}
}
stage('Push Image') {
steps {
sh '''
docker login $REGISTRY -u $REGISTRY_USER -p $REGISTRY_PASS
docker push $BACK_IMAGE:latest
'''
}
}
stage('Deploy Backend') {
steps {
sshagent(['vps-ssh-key']) {
sh '''
ssh debian@51.75.24.29 "
cd /srv/devops/the-tip-top &&
docker compose up -d --build backend
"
'''
}
}
}
}
post {
success { echo "✅ Backend déployé avec succès" }
failure { echo "❌ Échec du pipeline Backend" }
}
}