97 lines
2.5 KiB
Groovy
97 lines
2.5 KiB
Groovy
pipeline {
|
|
agent any
|
|
|
|
environment {
|
|
NODE_ENV = 'production'
|
|
}
|
|
|
|
tools {
|
|
nodejs 'nodejs' // Ensure this matches the name defined in Jenkins
|
|
}
|
|
|
|
stages {
|
|
stage('Checkout') {
|
|
steps {
|
|
script {
|
|
try {
|
|
// Code aus dem Repository holen
|
|
git branch: 'develop', url: 'http://172.19.0.2:3000/Ismail/NodeMap.git'
|
|
} catch (Exception e) {
|
|
error "Branch 'develop' exists nicht im Repository"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Check Node.js Version') {
|
|
steps {
|
|
script {
|
|
sh 'node --version'
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Install Dependencies') {
|
|
steps {
|
|
script {
|
|
try {
|
|
// Install dependencies
|
|
sh 'npm install'
|
|
} catch (Exception e) {
|
|
error "Dependency Installation failed: ${e.message}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Build') {
|
|
steps {
|
|
script {
|
|
try {
|
|
// Build the project
|
|
sh 'npm run build'
|
|
} catch (Exception e) {
|
|
error "Build failed: ${e.message}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Test') {
|
|
steps {
|
|
script {
|
|
try {
|
|
// Run tests
|
|
sh 'npm test'
|
|
} catch (Exception e) {
|
|
error "Tests failed: ${e.message}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Deploy') {
|
|
steps {
|
|
script {
|
|
try {
|
|
// Add your deployment steps here
|
|
// For example: sh 'npm run deploy'
|
|
echo 'Deployment steps go here'
|
|
} catch (Exception e) {
|
|
error "Deployment failed: ${e.message}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
post {
|
|
success {
|
|
echo 'Build, tests, and deployment were successful!'
|
|
}
|
|
failure {
|
|
echo 'Build, tests, or deployment failed.'
|
|
}
|
|
}
|
|
}
|