backup 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #!/bin/bash
  2. #=================================================
  3. # GENERIC START
  4. #=================================================
  5. # IMPORT GENERIC HELPERS
  6. #=================================================
  7. source ../settings/scripts/_common.sh
  8. source /usr/share/yunohost/helpers
  9. #=================================================
  10. # MANAGE SCRIPT FAILURE
  11. #=================================================
  12. # Exit if an error occurs during the execution of the script
  13. ynh_abort_if_errors
  14. #=================================================
  15. # LOAD SETTINGS
  16. #=================================================
  17. ynh_script_progression --message="Load settings" --weight=2
  18. app=$YNH_APP_INSTANCE_NAME
  19. final_path=$(ynh_app_setting_get $app final_path)
  20. path_url=$(ynh_app_setting_get $app path)
  21. domain=$(ynh_app_setting_get $app domain)
  22. #=================================================
  23. # STANDARD BACKUP STEPS
  24. #=================================================
  25. # BACKUP THE MAIN APP DIRECTORIES
  26. #=================================================
  27. ynh_script_progression --message="Backup the app main directories" --weight=5
  28. CHECK_SIZE "$final_path"
  29. ynh_backup "$final_path"
  30. CHECK_SIZE "/etc/.pihole"
  31. ynh_backup "/etc/.pihole"
  32. CHECK_SIZE "/etc/pihole"
  33. ynh_backup "/etc/pihole"
  34. CHECK_SIZE "/opt/pihole"
  35. ynh_backup "/opt/pihole"
  36. #=================================================
  37. # BACKUP NGINX CONFIGURATION
  38. #=================================================
  39. ynh_script_progression --message="Backup nginx configuration"
  40. ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"
  41. #=================================================
  42. # BACKUP PHP-FPM CONFIGURATION
  43. #=================================================
  44. ynh_script_progression --message="Backup php-fpm configuration"
  45. ynh_backup "/etc/php/7.0/fpm/pool.d/$app.conf"
  46. #=================================================
  47. # SPECIFIC BACKUP
  48. #=================================================
  49. # BACKUP CRON FILE
  50. #=================================================
  51. ynh_script_progression --message="Backup cron file"
  52. ynh_backup "/etc/cron.d/pihole"
  53. #=================================================
  54. # BACKUP SPECIFIC FILES
  55. #=================================================
  56. ynh_script_progression --message="Backup specific files"
  57. ynh_backup "/usr/local/bin/pihole"
  58. ynh_backup "/etc/bash_completion.d/pihole"
  59. ynh_backup "/etc/sudoers.d/pihole"
  60. ynh_backup "/etc/init.d/pihole-FTL"
  61. ynh_backup "/usr/bin/pihole-FTL"
  62. ynh_backup "/etc/dnsmasq.d/01-pihole.conf"
  63. if test -e "/etc/dnsmasq.d/02-pihole-dhcp.conf"; then
  64. ynh_backup "/etc/dnsmasq.d/02-pihole-dhcp.conf"
  65. fi
  66. if test -e "/etc/dnsmasq.d/03-pihole-wildcard.conf"; then
  67. ynh_backup "/etc/dnsmasq.d/03-pihole-wildcard.conf"
  68. fi
  69. if test -e "/etc/dnsmasq.d/04-pihole-static-dhcp.conf"; then
  70. ynh_backup "/etc/dnsmasq.d/04-pihole-static-dhcp.conf"
  71. fi
  72. ynh_backup "/usr/share/yunohost/hooks/conf_regen/50-dnsmasq_$app"
  73. #=================================================
  74. # END OF SCRIPT
  75. #=================================================
  76. ynh_script_progression --message="Backup completed" --last