#!/bin/bash source _common.sh source /usr/share/yunohost/helpers #================================================= # STOP SYSTEMD SERVICE #================================================= ynh_script_progression "Stopping $app's systemd service..." ynh_systemctl --service=$app --action="stop" #================================================= # CREATE DEDICATED USER #================================================= ynh_script_progression "Making sure dedicated system user exists..." if grep dialout -q < /etc/group; then usermod -a -G dialout "$app" fi if grep i2c -q < /etc/group; then usermod -a -G i2c "$app" fi if grep gpio -q < /etc/group; then usermod -a -G gpio "$app" fi #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= # FIXME: this is still supported but the recommendation is now to *always* re-setup the app sources wether or not the upstream sources changed if ynh_app_upstream_version_changed then ynh_script_progression "Upgrading source files..." # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" #REMOVEME? Assuming the install dir is setup using ynh_setup_source, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chmod 750 "$install_dir" #REMOVEME? Assuming the install dir is setup using ynh_setup_source, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chmod -R o-rwx "$install_dir" #REMOVEME? Assuming the install dir is setup using ynh_setup_source, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chown -R $app: "$install_dir" fi #================================================= # NGINX CONFIGURATION #================================================= ynh_script_progression "Upgrading NGINX web server configuration..." # Create a dedicated NGINX config ynh_config_add_nginx #================================================= # SETUP SYSTEMD #================================================= ynh_script_progression "Upgrading systemd configuration..." # Create a dedicated systemd config ynh_config_add_systemd #================================================= # SETUP LOGROTATE #================================================= ynh_script_progression "Upgrading logrotate configuration..." # Use logrotate to manage app-specific logfile(s) ynh_config_add_logrotate "/var/log/$app/$app.log" #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression "Integrating service in YunoHost..." yunohost service add $app --description="Zwave integration in domoticz" --log="/var/log/$app/$app.log" #================================================= # START SYSTEMD SERVICE #================================================= ynh_script_progression "Starting $app's systemd service..." ynh_systemctl --service=$app --action="start" --wait_until="Listening on port" -t 30 #================================================= # END OF SCRIPT #================================================= ynh_script_progression "Upgrade of $app completed"