upgrade 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/bin/bash
  2. #=================================================
  3. # GENERIC STARTING
  4. #=================================================
  5. # IMPORT GENERIC HELPERS
  6. #=================================================
  7. source _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. app=$YNH_APP_INSTANCE_NAME
  18. domain=$(ynh_app_setting_get $app domain)
  19. path_url=$(ynh_app_setting_get $app path)
  20. is_public=$(ynh_app_setting_get $app is_public)
  21. final_path=$(ynh_app_setting_get $app final_path)
  22. server_name=$(ynh_app_setting_get $app server_name)
  23. #=================================================
  24. # CHECK VERSION
  25. #=================================================
  26. ynh_abort_if_up_to_date
  27. #=================================================
  28. sudo mkdir -m 0700 -p /var/cache/labriqueinternet/vpnclient/
  29. sudo tar czf "/var/cache/labriqueinternet/vpnclient/rollback_$(date +%Y-%m-%d-%H%M%S).tgz" /etc/openvpn/ /etc/yunohost/apps/vpnclient/ &> /dev/null
  30. tmpdir=$(mktemp -dp /tmp/ vpnclient-upgrade-XXXXX)
  31. sudo cp -a /etc/yunohost/apps/vpnclient/settings.yml "${tmpdir}/"
  32. sudo cp -a /etc/openvpn/keys/ "${tmpdir}/"
  33. if [ ! -e /etc/openvpn/client.conf.tpl.restore ] || ! cmp -s /etc/openvpn/client.conf.tpl{,.restore}; then
  34. sudo cp -a /etc/openvpn/client.conf.tpl "${tmpdir}/"
  35. fi
  36. export VPNCLIENT_UPGRADE=1
  37. sudo bash /etc/yunohost/apps/vpnclient/scripts/remove &> /dev/null
  38. bash ./install "${domain}" "${path}" "${server_name}"
  39. sudo rmdir /etc/openvpn/keys/
  40. sudo cp -a "${tmpdir}/keys/" /etc/openvpn/keys/
  41. sudo cp -a "${tmpdir}/settings.yml" /etc/yunohost/apps/vpnclient/
  42. sudo cp -a "${tmpdir}/client.conf.tpl" /etc/openvpn/ 2> /dev/null
  43. sudo rm -r "${tmpdir}/"
  44. # Changes
  45. if [ -z "$(ynh_setting vpnclient dns0)" ]; then
  46. sudo yunohost app setting vpnclient dns0 -v 89.234.141.66
  47. sudo yunohost app setting vpnclient dns1 -v 2001:913::8
  48. fi
  49. ynh_systemctl start ynh-vpnclient