diff --git a/scripts/change_url b/scripts/change_url new file mode 100644 index 0000000..b377908 --- /dev/null +++ b/scripts/change_url @@ -0,0 +1,39 @@ +#!/bin/bash + +#================================================= +# GENERIC STARTING +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +#================================================= +# ENSURE DOWNWARD COMPATIBILITY +#================================================= + +# Before version 2.x æneria could be installed under a path, +# this functionnality has been deprecated since version 2.0.0 and æneria +# now need to be installed under its own domain. +# If the app is currently installed under a path, we warn the admin +# that he should move the app under its own domain +if [ "$path" != "/" ]; then + ynh_die --message="Since version 2.0.0, $app need to be installed under its own domain. \ + Before upgrading, change $app URL: delete the path and switch to a new domain if needed." +fi + +#================================================= +# STANDARD MODIFICATIONS +#================================================= +# MODIFY URL IN NGINX CONF +#================================================= +ynh_script_progression --message="Updating NGINX web server configuration..." --weight=3 + +ynh_change_url_nginx_config + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Change of URL completed for $app" --last \ No newline at end of file diff --git a/scripts/install b/scripts/install index db80303..2f5653e 100644 --- a/scripts/install +++ b/scripts/install @@ -57,11 +57,11 @@ ynh_script_progression --message="Installing aeneria..." --weight=1 # Install aeneria pushd $install_dir - ynh_exec_as $app php$phpversion bin/console aeneria:install "$app" -n - # Create admin user - mail=$(ynh_user_get_info --username="$admin" --key='mail') - ynh_exec_as $app php$phpversion bin/console aeneria:user:add "$mail" "$(ynh_string_random)" -n - ynh_exec_as $app php$phpversion bin/console aeneria:user:grant "$mail" + ynh_exec_as $app php$phpversion bin/console aeneria:install "$app" -n + # Create admin user + mail=$(ynh_user_get_info --username="$admin" --key='mail') + ynh_exec_as $app php$phpversion bin/console aeneria:user:add "$mail" "$(ynh_string_random)" -n + ynh_exec_as $app php$phpversion bin/console aeneria:user:grant "$mail" popd #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 2b4b859..4f90781 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -24,8 +24,8 @@ ynh_script_progression --message="Ensuring downward compatibility..." # If minutes or hour do not exist, create them if [ -z "${minutes:-}" ] || [ -z "${hour:-}" ]; then - # Generate random running schedule, and save $hour and $minutes as app parameters - generate_random_minutes_hour + # Generate random running schedule, and save $hour and $minutes as app parameters + generate_random_minutes_hour fi # Before version 2.x æneria could be installed under a path, @@ -34,8 +34,8 @@ fi # If the app is currently installed under a path, we warn the admin # that he should move the app under its own domain if [ -n "$path" ]; then - ynh_die --message="Since version 2.0.0, $app need to be installed under its own domain. \ - Before upgrading, change $app URL: delete the path and switch to a new domain if needed." + ynh_die --message="Since version 2.0.0, $app need to be installed under its own domain. \ + Before upgrading, change $app URL: delete the path and switch to a new domain if needed." fi #================================================= @@ -44,24 +44,24 @@ fi if [ "$upgrade_type" == "UPGRADE_APP" ] then - ynh_script_progression --message="Upgrading source files..." + ynh_script_progression --message="Upgrading source files..." - # For aeneria source update, we use a temporary directory because - # without it, patches can't be apply correctly: - # In 'app-00-ldap-auth.patch' we create a new file, if we try - # to apply the patch a second time while the file already exists, it - # throws a warning leading to an upgrade fail. + # For aeneria source update, we use a temporary directory because + # without it, patches can't be apply correctly: + # In 'app-00-ldap-auth.patch' we create a new file, if we try + # to apply the patch a second time while the file already exists, it + # throws a warning leading to an upgrade fail. - # Create tmpdir for new sources - tmpdir="$(ynh_smart_mktemp min_size=300)" + # Create tmpdir for new sources + tmpdir="$(ynh_smart_mktemp min_size=300)" - # Download, check integrity, uncompress and patch the source from app.src - ynh_setup_source --dest_dir="$tmpdir" + # Download, check integrity, uncompress and patch the source from app.src + ynh_setup_source --dest_dir="$tmpdir" - # Replace the old aeneria by the new one - ynh_secure_remove --file="$install_dir" - mv "$tmpdir" "$install_dir" - ynh_secure_remove --file="$tmpdir" + # Replace the old aeneria by the new one + ynh_secure_remove --file="$install_dir" + mv "$tmpdir" "$install_dir" + ynh_secure_remove --file="$tmpdir" fi chmod -R o-rwx "$install_dir" @@ -101,20 +101,20 @@ ynh_script_progression --message="Upgrading $app..." --weight=1 # Install dependencies and aeneria pushd $install_dir - ynh_exec_as $app php$phpversion bin/console cache:clear -n - ynh_exec_as $app php$phpversion bin/console doctrine:migrations:migrate -n + ynh_exec_as $app php$phpversion bin/console cache:clear -n + ynh_exec_as $app php$phpversion bin/console doctrine:migrations:migrate -n - # Set admin user - mail=$(ynh_user_get_info --username="$admin" --key='mail') - user_exists=$(ynh_exec_as $app php$phpversion bin/console aeneria:user:exist "$mail") - if [ $user_exists -eq 0 ] - then - user_pass=$(ynh_string_random) - ynh_exec_as $app php$phpversion bin/console aeneria:user:add "$mail" "$user_pass" -n - fi + # Set admin user + mail=$(ynh_user_get_info --username="$admin" --key='mail') + user_exists=$(ynh_exec_as $app php$phpversion bin/console aeneria:user:exist "$mail") + if [ $user_exists -eq 0 ] + then + user_pass=$(ynh_string_random) + ynh_exec_as $app php$phpversion bin/console aeneria:user:add "$mail" "$user_pass" -n + fi - # Regenerate RSA keys - ynh_exec_as $app php$phpversion bin/console aeneria:generate-key -n + # Regenerate RSA keys + ynh_exec_as $app php$phpversion bin/console aeneria:generate-key -n popd #=================================================