diff --git a/scripts/_common.sh b/scripts/_common.sh index 7123bfb..b02cd8c 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -8,6 +8,9 @@ YNH_PHP_VERSION="7.3" extra_php_dependencies="php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-bz2 php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-apcu-bc php${YNH_PHP_VERSION}-apcu php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-ldap" +HUMHUB_AUTH_BASIC_VERSION=0.1.0 +HUMHUB_AUTH_BASIC_PATH="/protected/modules/auth-basic" + #================================================= # PERSONAL HELPERS #================================================= @@ -70,6 +73,16 @@ myynh_urlencode() { return 0 } +install_sso() { + tmp_auth_basic_module="$(mktemp /tmp/humhub_ynh.XXXXXX)" + wget -q -O $tmp_auth_basic_module "https://github.com/smart4life/humhub-auth-basic/archive/refs/tags/$HUMHUB_AUTH_BASIC_VERSION.tar.gz" + + tar xf $tmp_auth_basic_module -C $final_path/protected/modules + mv $final_path/protected/modules/humhub-auth-basic* $final_path/$HUMHUB_AUTH_BASIC_PATH + + ynh_secure_remove $tmp_auth_basic_module +} + #================================================= # EXPERIMENTAL HELPERS #================================================= diff --git a/scripts/install b/scripts/install index a57b1fc..e88538f 100644 --- a/scripts/install +++ b/scripts/install @@ -136,6 +136,8 @@ ynh_systemd_action --service_name=nginx --action=reload # Installation with curl ynh_script_progression --message="Finalizing installation..." --weight=2 +install_sso + pushd $final_path/protected php${YNH_PHP_VERSION} yii migrate/up --includeModuleMigrations=1 --interactive=0 @@ -173,6 +175,8 @@ pushd $final_path/protected php${YNH_PHP_VERSION} yii settings/set user auth.allowGuestAccess '0' php${YNH_PHP_VERSION} yii settings/set user auth.internalUsersCanInvite '0' + php${YNH_PHP_VERSION} yii module/enable auth-basic + popd # Remove the public access @@ -210,7 +214,7 @@ chown -R $app $final_path/assets chown -R $app $final_path/protected/config chown -R $app $final_path/protected/modules chown -R $app $final_path/protected/runtime -chown -R $app $final_path/uploads/* +chown -R $app $final_path/uploads #================================================= # SETUP CRON CONFIGURATION diff --git a/scripts/restore b/scripts/restore index ca8c817..9403391 100644 --- a/scripts/restore +++ b/scripts/restore @@ -83,7 +83,7 @@ chown -R $app $final_path/assets chown -R $app $final_path/protected/config chown -R $app $final_path/protected/modules chown -R $app $final_path/protected/runtime -chown -R $app $final_path/uploads/* +chown -R $app $final_path/uploads #================================================= # RESTORE THE PHP-FPM CONFIGURATION diff --git a/scripts/upgrade b/scripts/upgrade index f29f28d..767532f 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -84,6 +84,20 @@ then # Delete old source ynh_secure_remove --file="$final_path.old" + + if [[ ! -d $final_path/$HUMHUB_AUTH_BASIC_PATH ]]; then + install_sso + + pushd $final_path/protected + php${YNH_PHP_VERSION} yii module/enable auth-basic + popd + else + current_version=$(cat $final_path/$HUMHUB_AUTH_BASIC_PATH/module.json | jq -j '.version') + if [ "$current_version" != "$HUMHUB_AUTH_BASIC_VERSION" ]; then + ynh_secure_remove $final_path/$HUMHUB_AUTH_BASIC_PATH + install_sso + fi + fi fi #================================================= @@ -163,7 +177,7 @@ chown -R $app $final_path/assets chown -R $app $final_path/protected/config chown -R $app $final_path/protected/modules chown -R $app $final_path/protected/runtime -chown -R $app $final_path/uploads/* +chown -R $app $final_path/uploads #================================================= # RELOAD NGINX