laucher.sh 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #!/bin/bash
  2. # bdlgplanner.sh
  3. CMD=$1
  4. PARAM=${2:-all}
  5. RESTART=0
  6. SUCCESS=0
  7. ROOT="/home/clovis/bdlg"
  8. FRONTEND_FOLDER="${ROOT}/bdlg-planner-front"
  9. BACKEND_FOLDER="${ROOT}/bdlg-planner-backend"
  10. STATIC_FOLDER="${BACKEND_FOLDER}/src/main/resources/static"
  11. PID_FILE="${ROOT}/pid.file"
  12. if [ $CMD = 'update' ]
  13. then
  14. if [ $PARAM = 'all' ] || [ $PARAM = 'front' ]
  15. then
  16. echo "[INFO] Mise à jour du frontend"
  17. cd $FRONTEND_FOLDER
  18. git pull > "${ROOT}/log.txt" 2>&1
  19. npm i > "${ROOT}/log.txt" 2>&1
  20. npm run build > "${ROOT}/log.txt" 2>&1
  21. rm -r $STATIC_FOLDER
  22. mv "${FRONTEND_FOLDER}/dist" $STATIC_FOLDER
  23. RESTART=1
  24. fi
  25. if [ $PARAM = 'all' ] || [ $PARAM = 'back' ]
  26. then
  27. echo "[INFO] Mise à jour du backend"
  28. cd $BACKEND_FOLDER
  29. git pull > "${ROOT}/log.txt" 2>&1
  30. mvn clean > "${ROOT}/log.txt" 2>&1
  31. RESTART=1
  32. fi
  33. elif [ $CMD = 'restart' ]
  34. then
  35. RESTART=1
  36. fi
  37. if ( [ $CMD = 'stop' ] || [ $RESTART -gt 0 ] ) && [ -f $PID_FILE ]
  38. then
  39. echo "[INFO] Arrêt du serveur en cours"
  40. kill $(cat $PID_FILE)
  41. SUCCESS=1
  42. fi
  43. if [ $CMD = 'start' ] || [ $RESTART -gt 0 ]
  44. then
  45. echo "[INFO] Démarrage du serveur en cours"
  46. cd $BACKEND_FOLDER
  47. nohup mvn spring-boot:run > "${ROOT}/log.txt" 2>&1 &
  48. echo $! > $PID_FILE
  49. echo "[INFO] Log disponible dans ${ROOT}/log.txt"
  50. SUCCESS=1
  51. fi
  52. if [ $SUCCESS -eq 0 ]
  53. then
  54. echo "Utilisation: [COMMANDE] [OPTION]"
  55. echo "Avec COMMANDE dans la liste suivante: update "
  56. echo " update Met à jour les fichiers sources et relance le serveur"
  57. echo " start Lance le serveur"
  58. echo " stop Arrète le serveur"
  59. echo " kill Redémarre le serveur"
  60. echo ""
  61. echo "OPTION uniquement avec la commande update"
  62. echo " '' ou all Tout le code source est mis à jour"
  63. echo " front Tout le code de la partie frontend est mis à jour"
  64. echo " back Tout le code de la partie backend est mis à jour"
  65. exit 1
  66. fi