Jenkinsfile 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. node {
  2. env.NODEJS_HOME = "${tool 'NodeJS'}"
  3. // on linux / mac
  4. env.PATH="${env.NODEJS_HOME}/bin:${env.PATH}"
  5. // on windows
  6. //env.PATH="${env.NODEJS_HOME};${env.PATH}"
  7. sh 'npm --version'
  8. stage('checkout') {
  9. deleteDir()
  10. checkout scm
  11. sh "git checkout test"
  12. }
  13. stage('Stop Containers') {
  14. sh 'docker ps | grep "workflow_" -v | awk -F " " \'{ if(NR>1) print $1}\' |xargs docker kill |xargs docker rm || true'
  15. sh 'docker system prune -f'
  16. }
  17. // stage('Push Docker image to Nexus') {
  18. // withDockerRegistry([credentialsId: 'nexus', url: 'https://nexus.foodgame.fr']) {
  19. // // Définition des variables
  20. // def dockerImageName = 'workflow_jenkins_1'
  21. // def dockerImageTag = 'latest'
  22. // def nexusRepository = 'fatboar_repo'
  23. // // Étape de balisage de l'image Docker pour le registre Nexus
  24. // sh "docker tag ${dockerImageName}:${dockerImageTag} ${nexusRepository}/${dockerImageName}:${dockerImageTag}"
  25. // // Étape de poussée de l'image Docker vers le registre Nexus
  26. // sh "docker push ${nexusRepository}/${dockerImageName}:${dockerImageTag}"
  27. // }
  28. // }
  29. stage('Build Docker MEAN Stack(PreProduction Deployment)') {
  30. sh 'docker-compose -v'
  31. sh 'docker-compose stop'
  32. sh 'docker-compose build'
  33. sh 'docker-compose up -d'
  34. }
  35. stage('Fin du Pipeline') {
  36. sh 'echo "Félicitation tout s\'est bien déroulé!"'
  37. }
  38. }