From 656d6d596059cfeab91ac62acfe742f8c0be6a0f Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Mar 2021 22:17:26 +0100 Subject: [PATCH 1/3] Fix linter --- README.md | 10 ++++------ check_process | 3 --- manifest.json | 18 +++--------------- pull_request_template.md | 4 +--- 4 files changed, 8 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 836ec36..f9eb8e2 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,16 @@ # Cesium package for YunoHost [![Integration level](https://dash.yunohost.org/integration/cesium.svg)](https://dash.yunohost.org/appci/app/cesium) ![](https://ci-apps.yunohost.org/ci/badges/cesium.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/cesium.maintain.svg) -[![Install Cesium with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=cesium) - +[![Install Cesium with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=cesium) > *This package allows you to install Cesium quickly and simply on a YunoHost server. If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview [Cesium](https://cesium.app) is an [Unhosted webapp](https://unhosted.org) client for any [Duniter](https://duniter.org) crypto-currency. -It allows you to manage your wallet, certify your friends, and more ! +It allows you to manage your wallet, certify your friends, and more! -**Shipped version:** v1.6.7 +**Shipped version:** 1.6.7 ## YunoHost specific features @@ -29,8 +28,7 @@ It allows you to manage your wallet, certify your friends, and more ! --- -Developer info ----------------- +## Developer info Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/cesium_ynh/tree/testing). diff --git a/check_process b/check_process index a07eca3..46cac3a 100644 --- a/check_process +++ b/check_process @@ -17,9 +17,6 @@ multi_instance=0 port_already_use=0 change_url=1 -;;; Levels - # If the level 5 (Package linter) is forced to 1. Please add justifications here. - Level 5=auto ;;; Options Email= Notification=none diff --git a/manifest.json b/manifest.json index a0ffb24..ef6adc8 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Duniter client to manage wallets, certifications in a libre money.", "fr": "Client Duniter pour gérer ses portes-monnaie, les certifications au sein d’une monnaie libre." }, - "version": "v1.6.7~ynh1", + "version": "1.6.7~ynh2", "url": "https://github.com/duniter/cesium", "license": "AGPL-3.0-or-later", "maintainer": { @@ -15,7 +15,7 @@ "url": "https://moul.re" }, "requirements": { - "yunohost": ">> 3.7.0" + "yunohost": ">> 4.1.7" }, "multi_instance": false, "services": [ @@ -25,30 +25,18 @@ "install" : [ { "name": "domain", - "type": "domain", - "ask": { - "en": "Choose a domain name for Cesium", - "fr": "Choisissez un nom de domaine pour Césium" - }, + "type": "domain", "example": "example.com" }, { "name": "path", "type": "path", - "ask": { - "en": "Choose a path for Cesium", - "fr": "Choisissez un chemin pour Césium" - }, "example": "/cesium", "default": "/cesium" }, { "name": "is_public", "type": "boolean", - "ask": { - "en": "Is it a public application?", - "fr": "Est-ce une application publique ?" - }, "help": { "en": "If it is a public application, there will not have authentification", "fr": "Si l'application est publique, il n'y aura pas d'authentification" diff --git a/pull_request_template.md b/pull_request_template.md index 57c93b6..6c28fc5 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -13,6 +13,4 @@ ## Package_check results --- -*If you have access to [App Continuous Integration for packagers](https://yunohost.org/#/packaging_apps_ci) you can provide a link to the package_check results like below, replacing '-NUM-' in this link by the PR number and USERNAME by your username on the ci-apps-dev. Or you provide a screenshot or a pastebin of the results* - -[![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/cesium_ynh%20PR-NUM-%20(USERNAME)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/cesium_ynh%20PR-NUM-%20(USERNAME)/) +* An automatic package_check will be launch at https://ci-apps-dev.yunohost.org/, when you add a specific comment to your Pull Request: "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!"* From 1faffd17f34add66dca4701fc7b45898c7770e0d Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Mar 2021 22:17:42 +0100 Subject: [PATCH 2/3] Update upgrade --- scripts/upgrade | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index eb14649..d5f3fca 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -63,18 +63,6 @@ ynh_clean_setup () { # Exit if an error occurs during the execution of the script ynh_abort_if_errors -#================================================= -# CHECK THE PATH -#================================================= - -# Normalize the URL path syntax -# N.B. : this is for app installations before YunoHost 2.7 -# where this value might be something like /foo/ or foo/ -# instead of /foo .... -# If nobody installed your app before 2.7, then you may -# safely remove this line -path_url=$(ynh_normalize_url_path --path_url=$path_url) - #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= From 5b6f020376c1055fa0ddee9962f62535daef5199 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Tue, 16 Mar 2021 21:25:15 +0100 Subject: [PATCH 3/3] Fix --- scripts/install | 10 ++-------- scripts/upgrade | 21 +++++++++------------ 2 files changed, 11 insertions(+), 20 deletions(-) diff --git a/scripts/install b/scripts/install index 03e125b..4a575e0 100644 --- a/scripts/install +++ b/scripts/install @@ -47,7 +47,6 @@ ynh_script_progression --message="Storing installation settings..." ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url -ynh_app_setting_set --app=$app --key=is_public --value=$is_public #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -63,11 +62,9 @@ ynh_setup_source --dest_dir="$final_path" #================================================= ynh_script_progression --message="Configuring nginx web server..." -### `ynh_add_nginx_config` will use the file conf/nginx.conf # Create a dedicated nginx config ynh_add_nginx_config - if [ "$path_url" != "/" ] then ynh_replace_string "^#sub_path_only" "" "/etc/nginx/conf.d/$domain.d/$app.conf" @@ -86,16 +83,13 @@ chown -R www-data: $final_path #================================================= # SETUP SSOWAT #================================================= -ynh_script_progression --message="Configuring SSOwat..." - -# Remove the public access -ynh_app_setting_delete --app=$app --key=skipped_uris +ynh_script_progression --message="Configuring permissions..." # If app is public, add url to SSOWat conf as skipped_uris and read-only mode if [ $is_public -eq 1 ] then # unprotected_uris allows SSO credentials to be passed anyway. - ynh_permission_update --permission "main" --add "visitors" + ynh_permission_update --permission="main" --add="visitors" # activate read-only ynh_replace_string --match_string='"readonly": false,' --replace_string='"readonly": true,' --target_file="$final_path/config.js" fi diff --git a/scripts/upgrade b/scripts/upgrade index d5f3fca..95cf51d 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -19,7 +19,6 @@ app=$YNH_APP_INSTANCE_NAME domain=$(ynh_app_setting_get --app=$app --key=domain) path_url=$(ynh_app_setting_get --app=$app --key=path) -is_public=$(ynh_app_setting_get --app=$app --key=is_public) final_path=$(ynh_app_setting_get --app=$app --key=final_path) #================================================= @@ -34,21 +33,19 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= ynh_script_progression --message="Ensuring downward compatibility..." -# Fix is_public as a boolean value -if [ "$is_public" = "Yes" ]; then - ynh_app_setting_set --app=$app --key=is_public --value=1 - is_public=1 -elif [ "$is_public" = "No" ]; then - ynh_app_setting_set --app=$app --key=is_public --value=0 - is_public=0 -fi - # If final_path doesn't exist, create it if [ -z "$final_path" ]; then final_path=/var/www/$app ynh_app_setting_set --app=$app --key=final_path --value=$final_path fi +# Cleaning legacy permissions +if ynh_legacy_permissions_exists; then + ynh_legacy_permissions_delete_all + + ynh_app_setting_delete --app=$app --key=is_public +fi + #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= @@ -99,12 +96,12 @@ chown -R www-data: $final_path #================================================= # SETUP SSOWAT #================================================= -ynh_script_progression --message="Upgrading SSOwat configuration..." +ynh_script_progression --message="Upgrading configuring permissions..." # If app is public, add url to SSOWat conf as skipped_uris and read-only mode if [[ $is_public -eq 1 ]]; then # unprotected_uris allows SSO credentials to be passed anyway. - ynh_permission_update --permission "main" --add "visitors" + ynh_permission_update --permission="main" --add="visitors" # activate read-only ynh_replace_string --match_string='"readonly": false,' --replace_string='"readonly": true,' --target_file="$final_path/config.js" fi