added Jenkinsfile

This commit is contained in:
2025-03-04 22:03:02 +01:00
parent 882bc0f26b
commit 37daa1f566

76
Jenkinsfile vendored Normal file
View File

@@ -0,0 +1,76 @@
pipeline {
agent {
dockerfile true
}
tools {
nodejs "nodejs"
maven "mvn"
}
environment {
DOCKER_IMAGE_NAME = "paypoint-backend"
DOCKER_REGISTRY = "veenm" // Optioneel als je Docker image naar Docker Hub wilt pushen
TRUENAS_HOST = "192.168.2.31:9000" // IP-adres van TrueNAS
TRUENAS_SSH_USER = "jenkins" // Gebruiker voor SSH
TRUENAS_SSH_KEY = credentials('ssh-true-nas') // Voeg een SSH-sleutel toe in Jenkins credentials
}
stages {
stage('Checkout') {
steps {
git 'https://git.melvanveen.nl/veenm/paypoint-backend.git' // Vervang door jouw repository URL
}
}
stage('Build Quarkus') {
steps {
script {
// Installeer de Angular dependencies en bouw de app
sh './mvnw package'
}
}
}
// stage('Build Docker Image') {
// steps {
// script {
// // Bouw het Docker image
// sh 'systemctl start docker'
// sh 'docker build -t weetikveel .'
// }
// }
// }
// stage('Deploy to TrueNAS') {
// steps {
// script {
// // SSH naar TrueNAS en stop de oude container (indien nodig)
// sh """
// ssh -i $TRUENAS_SSH_KEY $TRUENAS_SSH_USER@$TRUENAS_HOST 'docker stop $DOCKER_IMAGE_NAME || true && docker rm $DOCKER_IMAGE_NAME || true'
// """
// // Push het Docker image naar TrueNAS (optioneel als je een registry gebruikt)
// sh 'docker tag $DOCKER_IMAGE_NAME $TRUENAS_HOST/$DOCKER_IMAGE_NAME'
// sh 'docker push $TRUENAS_HOST/$DOCKER_IMAGE_NAME' // Alleen als je Docker Hub gebruikt, of een lokaal registry.
//
// // Deploy het Docker image naar TrueNAS via SSH
// sh """
// ssh -i $TRUENAS_SSH_KEY $TRUENAS_SSH_USER@$TRUENAS_HOST '
// docker pull $TRUENAS_HOST/$DOCKER_IMAGE_NAME &&
// docker run -d -p 80:80 --name $DOCKER_IMAGE_NAME $TRUENAS_HOST/$DOCKER_IMAGE_NAME
// '
// """
// }
// }
// }
}
post {
success {
echo "Deployment succesvol!"
}
failure {
echo "Er is een fout opgetreden tijdens de deployment."
}
}
}