You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #!/bin/bash
  2. REPO="/opt/siimee.git"
  3. commands=(
  4. "cd ${REPO}"
  5. "git --git-dir=${REPO} --work-tree=${REPO} checkout master -f"
  6. "cd ${REPO}/backend && rm -f ${REPO}/backend/package-lock.json && npm install"
  7. "echo no build needed!"
  8. "cd ${REPO}/frontend && rm -f ${REPO}/frontend/package-lock.json && npm install"
  9. "npm run build"
  10. "mkdir ${REPO}/frontend/dist/assets/fonts"
  11. "cp ${REPO}/frontend/assets/fonts/icomoon.* ${REPO}/frontend/dist/assets/fonts"
  12. # "cd ${REPO}/backend && npm run generate && npm run reseed"
  13. "pm2 restart siimee_backend -i -1 -n siimee_backend"
  14. )
  15. steps=(
  16. "navigate to project…"
  17. "git checkout…"
  18. "backend npm install…"
  19. "building backend…"
  20. "frontend npm install…"
  21. "building frontend…"
  22. "making font directory..."
  23. "copying fonts..."
  24. # "regenerate db data…"
  25. "start-up…"
  26. )
  27. SPAN=80
  28. COUNT=0
  29. hr() {
  30. printf "\n"
  31. for i in $(seq 0 $SPAN) ; do
  32. printf $1
  33. done
  34. printf "\n"
  35. }
  36. print_step() {
  37. hr "-"
  38. let step_count=$COUNT+1
  39. printf "* POST-RECEIVE | Step: ${step_count} of ${#steps[@]}: ${1}"
  40. hr "-"
  41. printf "\n"
  42. let COUNT++
  43. }
  44. run() {
  45. # Header line
  46. printf "\n\n"
  47. printf "** SIIMEE **"
  48. hr "="
  49. printf "\nStarting POST-RECEIVE…"
  50. # Body
  51. for step in ${!steps[@]}; do
  52. printf "\n"
  53. print_step "${steps[$step]}"
  54. eval "${commands[$step]}"
  55. done
  56. # Footer line
  57. printf "\n"
  58. hr "="
  59. }
  60. run