Files
portfolio-v2/Jenkinsfile
2026-03-16 21:46:45 +01:00

50 lines
1.1 KiB
Groovy

pipeline {
agent any
environment {
DEPLOY_DIR = '/var/www/portfolio'
}
stages {
stage('Checkout') {
steps {
checkout scm
}
}
stage('Install') {
steps {
sh 'npm install'
}
}
stage('Build') {
steps {
sh 'npm run build'
}
}
stage('Deploy') {
steps {
sh '''
cp -r .next /var/www/portfolio/
cp -r public /var/www/portfolio/ 2>/dev/null || true
cp package.json /var/www/portfolio/
cp -r node_modules /var/www/portfolio/
'''
sh '''
ssh -o StrictHostKeyChecking=no root@172.17.0.1 "cd /var/www/portfolio && pm2 delete portfolio || true && pm2 start npm --name portfolio -- start -- -p 3333 && pm2 save"
'''
}
}
}
post {
success {
echo '✅ Portfolio deployed!'
}
failure {
echo '❌ Deploy fehlgeschlagen!'
}
}
}