| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #!/bin/bash
- #=================================================
- # IMPORT GENERIC HELPERS
- #=================================================
- source _common.sh
- source /usr/share/yunohost/helpers
- #=================================================
- # ENSURE DOWNWARD COMPATIBILITY
- #=================================================
- ynh_script_progression --message="Ensuring downward compatibility..."
- _fix_frequencies
- _set_frequencies
- # If encrypt doesn't exist, create it
- if [ -z "${encrypt:-}" ]; then
- encrypt="$(grep "^encrypt=" "$install_dir/Backup_list.conf" | cut -d= -f2)"
- if [ "$encrypt" = true ]; then
- encrypt=1
- else
- encrypt=0
- fi
- ynh_app_setting_set --app="$app" --key="encrypt" --value="$encrypt"
- fi
- # If core_backup doesn't exist, create it
- if [ -z "${core_backup:-}" ]; then
- core_backup="$(grep "^ynh_core_backup=" "$install_dir/Backup_list.conf" | cut -d= -f2)"
- ynh_app_setting_set --app="$app" --key="core_backup" --value="$core_backup"
- fi
- # If apps_backup doesn't exist, create it
- if [ -z "${apps_backup:-}" ]; then
- apps_backup="$(grep --count --max-count=1 "^ynh_app_backup=" "$install_dir/Backup_list.conf")"
- ynh_app_setting_set --app="$app" --key="apps_backup" --value="$apps_backup"
- fi
- # If overwrite_cron doesn't exist, create it
- if [ -z "${overwrite_cron:-}" ]; then
- overwrite_cron=1
- ynh_app_setting_set --app="$app" --key="overwrite_cron" --value="$overwrite_cron"
- fi
- # If admin_mail_html doesn't exist, create it
- if [ -z "${admin_mail_html:-}" ]; then
- admin_mail_html=1
- ynh_app_setting_set --app="$app" --key="admin_mail_html" --value="$admin_mail_html"
- fi
- #=================================================
- # DOWNLOAD, CHECK AND UNPACK SOURCE
- #=================================================
- ynh_script_progression --message="Upgrading source files..." --weight=2
- # Download, check integrity, uncompress and patch the source from app.src
- ynh_setup_source --dest_dir="$install_dir" --full_replace=1 --keep="passkey Backup_list.conf"
- chown -R "root:root" "$install_dir"
- #=================================================
- # UPDATE A CONFIG FILE
- #=================================================
- ynh_script_progression --message="Updating $app's configuration files..." --weight=1
- #=================================================
- # REAPPLY SYSTEM CONFIGURATIONS
- #=================================================
- ynh_script_progression --message="Upgrading system configurations related to $app..." --weight=1
- # Use logrotate to manage app-specific logfile(s)
- ynh_use_logrotate --non-append
- if (( overwrite_cron == 1 )); then
- # Add Cron configuration file
- ynh_add_config --template="archivist.cron" --destination="/etc/cron.d/$app"
- fi
- #=================================================
- # END OF SCRIPT
- #=================================================
- ynh_script_progression --message="Upgrade of $app completed" --last
|