Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correct upgrade #73

Merged
merged 17 commits into from Mar 18, 2022
1 change: 1 addition & 0 deletions scripts/_common.sh
Expand Up @@ -6,6 +6,7 @@

# dependencies used by the app
pkg_dependencies="postgresql postgresql-contrib libstdc++6 rabbitmq-server libcurl4-dev"
extra_dependencies="onlyoffice-documentserver"

#=================================================
# PERSONAL HELPERS
Expand Down
1 change: 1 addition & 0 deletions scripts/backup
Expand Up @@ -52,6 +52,7 @@ ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
#=================================================

ynh_backup --src_path="/etc/onlyoffice"
ynh_backup --src_path="/var/lib/onlyoffice/documentserver/App_Data/cache/files" --not_mandatory

#=================================================
# BACKUP THE POSTGRESQL DATABASE
Expand Down
26 changes: 15 additions & 11 deletions scripts/install
Expand Up @@ -72,14 +72,6 @@ ynh_script_progression --message="Configuring system user..."
# Create a system user
ynh_system_user_create --username=$app

#=================================================
# ADD ONLYOFFICE REPOSITORY
#=================================================
ynh_script_progression --message="Add OnlyOffice repository..."

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
ynh_install_extra_repo --repo="deb http://download.onlyoffice.com/repo/debian squeeze main" --append

#=================================================
# INSTALL DEPENDENCIES
#=================================================
Expand Down Expand Up @@ -130,11 +122,14 @@ echo onlyoffice-documentserver onlyoffice/db-name string $db_name | debconf-set-
#=================================================
ynh_script_progression --message="Install OnlyOffice..."

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5

# The onlyoffice dev had the magnificent idea to add a "nginx restart" during
# the install/configure of their package, which is awful since that will
# restart nginx and the whole webadmin and maybe even the yunohost command
# running the install ...
ynh_exec_warn_less ynh_add_app_dependencies --package="onlyoffice-documentserver"

ynh_install_extra_app_dependencies --repo="https://download.onlyoffice.com/repo/debian squeeze main" --package=$extra_dependencies

#=================================================
# MODIFY A CONFIG FILE
Expand All @@ -151,6 +146,17 @@ ynh_script_progression --message="Storing the config file checksum..."
# Calculate and store the config file checksum into the app settings
ynh_store_file_checksum --file="/etc/onlyoffice/documentserver/default.json"

#=================================================
# GENERIC FINALIZATION
#=================================================
# SECURE FILES AND DIRECTORIES
#=================================================

# Set permissions to app files
chmod 750 "$final_path"
chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path"

#=================================================
# RELOAD ONLYOFFICE
#=================================================
Expand All @@ -167,8 +173,6 @@ ynh_script_progression --message="Generating fonts..."

/usr/bin/documentserver-generate-allfonts.sh

#=================================================
# GENERIC FINALIZATION
#=================================================
# SETUP SSOWAT
#=================================================
Expand Down
2 changes: 1 addition & 1 deletion scripts/remove
Expand Up @@ -55,7 +55,7 @@ ynh_script_progression --message="Removing dependencies..."

# Remove metapackage and its dependencies
ynh_remove_app_dependencies
ynh_remove_extra_repo
#ynh_remove_extra_repo

dpkg --configure -a

Expand Down
32 changes: 21 additions & 11 deletions scripts/restore
Expand Up @@ -58,16 +58,6 @@ ynh_script_progression --message="Recreating the dedicated system user..."
# Create the dedicated user (if not existing)
ynh_system_user_create --username=$app

#=================================================
# SPECIFIC RESTORATION
#=================================================
# ADD ONLYOFFICE REPOSITORY
#=================================================
ynh_script_progression --message="Add OnlyOffice repository..."

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
ynh_install_extra_repo --repo="deb http://download.onlyoffice.com/repo/debian squeeze main" --append

#=================================================
# REINSTALL DEPENDENCIES
#=================================================
Expand All @@ -76,6 +66,8 @@ ynh_script_progression --message="Reinstalling dependencies..."
# Define and install dependencies
ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies

#=================================================
# SPECIFIC RESTORATION
#=================================================
# RESTORE THE POSTGRESQL DATABASE
#=================================================
Expand All @@ -101,7 +93,9 @@ echo onlyoffice-documentserver onlyoffice/db-name string $db_name | debconf-set-
#=================================================
ynh_script_progression --message="Reinstalling OnlyOffice..."

ynh_exec_warn_less ynh_add_app_dependencies --package="onlyoffice-documentserver"
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5

ynh_install_extra_app_dependencies --repo="https://download.onlyoffice.com/repo/debian squeeze main" --package=$extra_dependencies

#=================================================
# RESTORE THE CONFIGURATION
Expand All @@ -110,13 +104,29 @@ ynh_script_progression --message="Restoring the configuration..."

ynh_restore_file --origin_path="/etc/onlyoffice"

#=================================================
# RESTORE THE CACHE
#=================================================
ynh_restore_file --origin_path="/var/lib/onlyoffice/documentserver/App_Data/cache/files"

#=================================================
# REGENERATE FONTS
#=================================================
ynh_script_progression --message="Generating fonts..."

/usr/bin/documentserver-generate-allfonts.sh

#=================================================
# GENERIC FINALIZATION
#=================================================
# SECURE FILES AND DIRECTORIES
#=================================================

# Set permissions to app files
chmod 750 "$final_path"
chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path"

#=================================================
# RELOAD ONLYOFFICE
#=================================================
Expand Down
37 changes: 21 additions & 16 deletions scripts/upgrade
Expand Up @@ -80,6 +80,13 @@ ynh_script_progression --message="Making sure dedicated system user exists..."
# Create a dedicated user (if not existing)
ynh_system_user_create --username=$app

#=================================================
# UPGRADE DEPENDENCIES
#=================================================
ynh_script_progression --message="Upgrading dependencies..."

ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies

#=================================================
# STANDARD UPGRADE STEPS
#=================================================
Expand All @@ -96,23 +103,8 @@ fi
# Create a dedicated nginx config
ynh_add_nginx_config "nextclouddomain"

#=================================================
# UPGRADE DEPENDENCIES
#=================================================
ynh_script_progression --message="Upgrading dependencies..."

ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies

#=================================================
# SPECIFIC UPGRADE
#=================================================
# ADD ONLYOFFICE REPOSITORY
#=================================================
ynh_script_progression --message="Add OnlyOffice repository..."

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
ynh_install_extra_repo --repo="deb http://download.onlyoffice.com/repo/debian squeeze main" --append

#=================================================
# CONFIGURE ONLYOFFICE
#=================================================
Expand All @@ -130,7 +122,11 @@ echo onlyoffice-documentserver onlyoffice/db-name string $db_name | debconf-set-
#=================================================
ynh_script_progression --message="Upgrading OnlyOffice..."

ynh_exec_warn_less ynh_add_app_dependencies --package="onlyoffice-documentserver"
ynh_remove_extra_repo --name="$app" # backward compat
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5

# ynh_remove_app_dependencies
ynh_install_extra_app_dependencies --repo="https://download.onlyoffice.com/repo/debian squeeze main" --package=$extra_dependencies

#=================================================
# MODIFY A CONFIG FILE
Expand All @@ -153,6 +149,15 @@ ynh_script_progression --message="Generating fonts..."

#=================================================
# GENERIC FINALIZATION
#=================================================
# SECURE FILES AND DIRECTORIES
#=================================================

# Set permissions to app files
chmod 750 "$final_path"
chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path"

#=================================================
# RELOAD ONLYOFFICE
#=================================================
Expand Down