From 07d0276be2f79e5d50d812d042acaf26b985031b Mon Sep 17 00:00:00 2001 From: Hemmho <69148585+Hemmho@users.noreply.github.com> Date: Fri, 6 Aug 2021 15:49:22 +0200 Subject: [PATCH 01/20] Fix Define the port to avoid collisions on port 3000 --- conf/.env | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/conf/.env b/conf/.env index edc1b98..c3e1c0f 100644 --- a/conf/.env +++ b/conf/.env @@ -2,4 +2,7 @@ # If you set this setting, the user will not be able to select # the server and have to use synapse-admin with this server. -REACT_APP_SERVER=https://__SYNAPSE_DOMAIN__ \ No newline at end of file +REACT_APP_SERVER=https://__SYNAPSE_DOMAIN__ + +#Define the port to avoid collisions on port 3000 +PORT=9090 From 5ef4cd4460891df26847f429b92f854777d8bba7 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 20:02:36 +0200 Subject: [PATCH 02/20] Fix --- conf/.env | 4 ++-- scripts/install | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/conf/.env b/conf/.env index c3e1c0f..3738711 100644 --- a/conf/.env +++ b/conf/.env @@ -2,7 +2,7 @@ # If you set this setting, the user will not be able to select # the server and have to use synapse-admin with this server. -REACT_APP_SERVER=https://__SYNAPSE_DOMAIN__ +#REACT_APP_SERVER=https:// #Define the port to avoid collisions on port 3000 -PORT=9090 +PORT=__PORT__ diff --git a/scripts/install b/scripts/install index 6cee0d4..5f700a2 100644 --- a/scripts/install +++ b/scripts/install @@ -23,7 +23,7 @@ ynh_abort_if_errors domain=$YNH_APP_ARG_DOMAIN path_url="/" is_public=$YNH_APP_ARG_IS_PUBLIC -synapse_domain=$(yunohost app setting synapse domain) +#synapse_domain=$(yunohost app setting synapse domain) app=$YNH_APP_INSTANCE_NAME #================================================= From 7ec7134a9c4b1aa642ac58cd1c1a39005196c00c Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 20:11:14 +0200 Subject: [PATCH 03/20] Fix --- .../ISSUE_TEMPLATE.md | 35 +++++++++++------- .github/PULL_REQUEST_TEMPLATE.md | 16 +++++++++ conf/app.src | 4 +-- manifest.json | 13 +++++-- pull_request_template.md | 16 --------- scripts/backup | 2 -- scripts/install | 22 +++++------- scripts/restore | 26 ++++++-------- scripts/upgrade | 36 ++++++++----------- 9 files changed, 83 insertions(+), 87 deletions(-) rename issue_template.md => .github/ISSUE_TEMPLATE.md (54%) create mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 pull_request_template.md diff --git a/issue_template.md b/.github/ISSUE_TEMPLATE.md similarity index 54% rename from issue_template.md rename to .github/ISSUE_TEMPLATE.md index 07b5812..2729a6b 100644 --- a/issue_template.md +++ b/.github/ISSUE_TEMPLATE.md @@ -1,6 +1,6 @@ --- name: Bug report -about: Create a report to help us debug, it would be nice to fill the template as much as you can to help us, help you and help us all. +about: When creating a bug report, please use the following template to provide all the relevant information and help debugging efficiently. --- @@ -8,28 +8,30 @@ about: Create a report to help us debug, it would be nice to fill the template a 1. *Read this whole template first.* 2. *Determine if you are on the right place:* - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change_url...), you are on the right place!* - - *Otherwise, the issue may be due to Synapse Admin itself. Refer to its documentation or repository for help.* - - *If you have a doubt, post here, we will figure it out together.* + - *Otherwise, the issue may be due to the app itself. Refer to its documentation or repository for help.* + - *When in doubt, post here and we will figure it out together.* 3. *Delete the italic comments as you write over them below, and remove this guide.* --- -**Describe the bug** +### Describe the bug + *A clear and concise description of what the bug is.* -**Versions** +### Context + - Hardware: *VPS bought online / Old laptop or computer / Raspberry Pi at home / Internet Cube with VPN / Other ARM board / ...* - YunoHost version: x.x.x - I have access to my server: *Through SSH | through the webadmin | direct access via keyboard / screen | ...* -- Are you in a special context or did you perform some particular tweaking on your YunoHost instance ?: *no / yes* +- Are you in a special context or did you perform some particular tweaking on your YunoHost instance?: *no / yes* - If yes, please explain: - Using, or trying to install package version/branch: -- If upgrading, current package version: *can be found in the admin, or with `yunohost app info synapse-admin`* +- If upgrading, current package version: *can be found in the admin, or with `yunohost app info $app_id`* + +### Steps to reproduce -**To Reproduce** -*Steps to reproduce the behavior.* - *If you performed a command from the CLI, the command itself is enough. For example:* ```sh - sudo yunohost app install synapse-admin + sudo yunohost app install the_app ``` - *If you used the webadmin, please perform the equivalent command from the CLI first.* - *If the error occurs in your browser, explain what you did:* @@ -38,9 +40,16 @@ about: Create a report to help us debug, it would be nice to fill the template a 3. *Scroll down to '...'* 4. *See error* -**Expected behavior** +### Expected behavior + *A clear and concise description of what you expected to happen. You can remove this section if the command above is enough to understand your intent.* -**Logs** -*After a failed command, YunoHost makes the log available to you, but also to others, thanks to `yunohost log display [log name] --share`. The actual command, with the correct log name, is displayed at the end of the failed attempt in the CLI. Execute it and copy here the share link it outputs.* +### Logs + +*When an operation fails, YunoHost provides a simple way to share the logs.* +- *In the webadmin, the error message contains a link to the relevant log page. On that page, you will be able to 'Share with Yunopaste'. If you missed it, the logs of previous operations are also available under Tools > Logs.* +- *In command line, the command to share the logs is displayed at the end of the operation and looks like `yunohost log display [log name] --share`. If you missed it, you can find the log ID of a previous operation using `yunohost log list`.* + +*After sharing the log, please copypaste directly the link provided by YunoHost (to help readability, no need to copypaste the entire content of the log here, just the link is enough...)* + *If applicable and useful, add screenshots to help explain your problem.* diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..ef70e18 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,16 @@ +## Problem + +- *Description of why you made this PR* + +## Solution + +- *And how do you fix that problem* + +## PR Status + +- [ ] Code finished and ready to be reviewed/tested +- [ ] The fix/enhancement were manually tested (if applicable) + +## Automatic tests + +Automatic tests can be triggered on https://ci-apps-dev.yunohost.org/ *after creating the PR*, by commenting "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!". (N.B. : for this to work you need to be a member of the Yunohost-Apps organization) diff --git a/conf/app.src b/conf/app.src index 00c316a..489b389 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/Awesome-Technologies/synapse-admin/archive/0.8.0.tar.gz -SOURCE_SUM=33b1519c3b6631dac55228ca2cd126ab277d53d27eff8310170ed2343b7ca662 +SOURCE_URL=https://github.com/Awesome-Technologies/synapse-admin/archive/refs/tags/0.8.1.tar.gz +SOURCE_SUM=a939bc4f98246eac7c8cfb42f936129697bae2e9547541bcf6b4aafa816d6613 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 24b79ba..e22883c 100644 --- a/manifest.json +++ b/manifest.json @@ -3,11 +3,18 @@ "id": "synapse-admin", "packaging_format": 1, "description": { - "en": "Admin ui for Synapse", - "fr": "Admin ui pour Synapse" + "en": "Admin UI for Synapse", + "fr": "Admin UI pour Synapse" }, - "version": "0.8.0~ynh1", + "version": "0.8.1~ynh1", "url": "https://github.com/Awesome-Technologies/synapse-admin", + "upstream": { + "license": "Apache-2.0", + "website": "https://github.com/Awesome-Technologies/synapse-admin", + "admindoc": "https://yunohost.org/packaging_apps", + "userdoc": "https://yunohost.org/en/app_synapse-admin", + "code": "https://github.com/Awesome-Technologies/synapse-admin" + }, "license": "Apache-2.0", "maintainer": { "name": "" diff --git a/pull_request_template.md b/pull_request_template.md deleted file mode 100644 index 6c28fc5..0000000 --- a/pull_request_template.md +++ /dev/null @@ -1,16 +0,0 @@ -## Problem -- *Description of why you made this PR* - -## Solution -- *And how do you fix that problem* - -## PR Status -- [ ] Code finished. -- [ ] Tested with Package_check. -- [ ] Fix or enhancement tested. -- [ ] Upgrade from last version tested. -- [ ] Can be reviewed and tested. - -## Package_check results ---- -* 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!"* diff --git a/scripts/backup b/scripts/backup index 49eae83..3c0e9fa 100644 --- a/scripts/backup +++ b/scripts/backup @@ -43,8 +43,6 @@ ynh_backup --src_path="$final_path" ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" -#================================================= -# SPECIFIC BACKUP #================================================= # BACKUP SYSTEMD #================================================= diff --git a/scripts/install b/scripts/install index 5f700a2..07ffdb1 100644 --- a/scripts/install +++ b/scripts/install @@ -76,9 +76,13 @@ ynh_script_progression --message="Setting up source files..." --weight=2 ynh_app_setting_set --app=$app --key=final_path --value=$final_path # Download, check integrity, uncompress and patch the source from app.src -#ynh_setup_source --dest_dir=$final_path +ynh_setup_source --dest_dir=$final_path -git clone https://github.com/Awesome-Technologies/synapse-admin.git "$final_path" --quiet +#git clone https://github.com/Awesome-Technologies/synapse-admin.git "$final_path" --quiet + +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" #================================================= # NGINX CONFIGURATION @@ -103,10 +107,10 @@ ynh_system_user_create --username=$app --home_dir=$final_path #============================================== ynh_script_progression --message="Building $app... (this will take some time and resources!)" --weight=40 -pushd "$final_path" || ynh_die +pushd "$final_path" ynh_use_nodejs ynh_exec_warn_less yarn install -popd || ynh_die +popd #================================================= # SETUP SYSTEMD @@ -117,16 +121,6 @@ ynh_replace_string --match_string="__ENV_PATH__" --replace_string="$PATH" --targ ynh_add_systemd_config -#================================================= -# GENERIC FINALIZATION -#================================================= -# SECURE FILES AND DIRECTORIES -#================================================= -ynh_script_progression --message="Securing files and directories..." - -# Set permissions to app files -chown -R $app:$app $final_path - #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= diff --git a/scripts/restore b/scripts/restore index 8ca7db9..2acc344 100644 --- a/scripts/restore +++ b/scripts/restore @@ -46,6 +46,14 @@ ynh_script_progression --message="Restoring the NGINX configuration..." ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" +#================================================= +# RECREATE THE DEDICATED USER +#================================================= +ynh_script_progression --message="Recreating the dedicated system user..." --weight=1 + +# Create the dedicated user (if not existing) +ynh_system_user_create --username=$app --home_dir="$final_path" + #================================================= # RESTORE THE APP MAIN DIR #================================================= @@ -53,21 +61,9 @@ ynh_script_progression --message="Restoring the app main directory..." --weight= ynh_restore_file --origin_path="$final_path" -#================================================= -# RECREATE THE DEDICATED USER -#================================================= -ynh_script_progression --message="Recreating the dedicated system user..." --weight=1 - -# Create the dedicated user (if not existing) -ynh_system_user_create --username=$app - -#================================================= -# RESTORE USER RIGHTS -#================================================= -ynh_script_progression --message="Restoring user rights..." - -# Restore permissions on app files -chown -R $app:$app $final_path +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" #================================================= # SPECIFIC RESTORATION diff --git a/scripts/upgrade b/scripts/upgrade index df1a56e..4994f75 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -63,6 +63,14 @@ ynh_script_progression --message="Stopping a systemd service..." --weight=1 ynh_systemd_action --service_name=$app --action="stop" --log_path="systemd" +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Configuring system user..." --weight=1 + +# Create a system user +ynh_system_user_create --username=$app --home_dir="$final_path" + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= @@ -78,6 +86,10 @@ then ynh_setup_source --dest_dir=$final_path fi +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" + #================================================= # NGINX CONFIGURATION #================================================= @@ -99,14 +111,6 @@ ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version # Install Yarn ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg" -#================================================= -# CREATE DEDICATED USER -#================================================= -ynh_script_progression --message="Making sure dedicated system user exists..." --weight=1 - -# Create a dedicated user (if not existing) -ynh_system_user_create --username=$app - #================================================= # SPECIFIC UPGRADE #============================================== @@ -116,10 +120,10 @@ if [ "$upgrade_type" == "UPGRADE_APP" ] then ynh_script_progression --message="Building $app... (this will take some time and resources!)" --weight=60 - pushd "$final_path" || ynh_die + pushd "$final_path" ynh_use_nodejs ynh_exec_warn_less yarn install - popd || ynh_die + popd fi #================================================= @@ -128,22 +132,10 @@ fi ynh_script_progression --message="Configuring a systemd service..." --weight=2 ynh_replace_string --match_string="__ENV_PATH__" --replace_string="$PATH" --target_file="../conf/systemd.service" -ynh_replace_string --match_string="__YNH_NPM__" --replace_string="$ynh_npm" --target_file="../conf/systemd.service" -ynh_replace_string --match_string="__PORT__" --replace_string="$port" --target_file="../conf/systemd.service" # Create a dedicated systemd config ynh_add_systemd_config -#================================================= -# GENERIC FINALIZATION -#================================================= -# SECURE FILES AND DIRECTORIES -#================================================= -ynh_script_progression --message="Securing files and directories..." - -# Set permissions on app files -chown -R $app:$app $final_path - #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= From 88ff1d86b0894fb375778658c0474906c71372b8 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Fri, 6 Aug 2021 18:11:20 +0000 Subject: [PATCH 04/20] Auto-update README --- README.md | 47 ++++++++++++++++++----------------------------- README_fr.md | 46 +++++++++++++++------------------------------- 2 files changed, 33 insertions(+), 60 deletions(-) diff --git a/README.md b/README.md index 64ca3c5..947f018 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ + + # Synapse Admin for YunoHost [![Integration level](https://dash.yunohost.org/integration/synapse-admin.svg)](https://dash.yunohost.org/appci/app/synapse-admin) ![](https://ci-apps.yunohost.org/ci/badges/synapse-admin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/synapse-admin.maintain.svg) @@ -5,43 +10,25 @@ *[Lire ce readme en français.](./README_fr.md)* -> *This package allows you to install Synapse Admin 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.* +> *This package allows you to install Synapse Admin 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 -**Shipped version:** 0.8.0 +Admin UI for Synapse -## Screenshots +**Shipped version:** 0.8.1~ynh1 -![](https://raw.githubusercontent.com/Awesome-Technologies/synapse-admin/master/screenshots.jpg) -## Configuration -## Documentation +## Documentation and resources - * Official documentation: - * YunoHost documentation: https://yunohost.org/en/app_synapse-admin - -## YunoHost specific features - -#### Multi-user support - -* Is LDAP supported? **NO** -* Can the app be used by multiple users? **NO** - -#### Supported architectures - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/synapse-admin.svg)](https://ci-apps.yunohost.org/ci/apps/synapse-admin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/synapse-admin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/synapse-admin/) - -## Links - - * Report a bug: https://github.com/YunoHost-Apps/synapse-admin_ynh/issues - * Upstream app repository: https://github.com/Awesome-Technologies/synapse-admin - * YunoHost website: https://yunohost.org/ - ---- +* Official app website: https://github.com/Awesome-Technologies/synapse-admin +* Official user documentation: https://yunohost.org/en/app_synapse-admin +* Official admin documentation: https://yunohost.org/packaging_apps +* Upstream app code repository: https://github.com/Awesome-Technologies/synapse-admin +* YunoHost documentation for this app: https://yunohost.org/app_synapse-admin +* Report a bug: https://github.com/YunoHost-Apps/synapse-admin_ynh/issues ## Developer info @@ -53,3 +40,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/synapse-admin_ynh/tre or sudo yunohost app upgrade synapse-admin -u https://github.com/YunoHost-Apps/synapse-admin_ynh/tree/testing --debug ``` + +**More info regarding app packaging:** https://yunohost.org/packaging_apps \ No newline at end of file diff --git a/README_fr.md b/README_fr.md index 262b0c0..2908313 100644 --- a/README_fr.md +++ b/README_fr.md @@ -3,46 +3,28 @@ [![Niveau d'intégration](https://dash.yunohost.org/integration/synapse-admin.svg)](https://dash.yunohost.org/appci/app/synapse-admin) ![](https://ci-apps.yunohost.org/ci/badges/synapse-admin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/synapse-admin.maintain.svg) [![Installer Synapse Admin avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=synapse-admin) -*[Read this readme in english.](./README.md)* +*[Read this readme in english.](./README.md)* +*[Lire ce readme en français.](./README_fr.md)* -> *Ce package vous permet d'installer Synapse Admin rapidement et simplement sur un serveur YunoHost. -Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/install) pour apprendre comment l'installer.* +> *Ce package vous permet d'installer Synapse Admin rapidement et simplement sur un serveur YunoHost. +Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.* ## Vue d'ensemble +Admin UI pour Synapse -**Version incluse :** 0.8.0 +**Version incluse :** 0.8.1~ynh1 -## Captures d'écran -![](https://raw.githubusercontent.com/Awesome-Technologies/synapse-admin/master/screenshots.jpg) -## Configuration +## Documentations et ressources -## Documentation - - * Documentation officielle : - * Documentation YunoHost : https://yunohost.org/fr/app_synapse-admin - -## Caractéristiques spécifiques YunoHost - -#### Support multi-utilisateur - -* L'authentification LDAP est-elle prise en charge ? **Non** -* L'application peut-elle être utilisée par plusieurs utilisateurs ? **Non** - -#### Architectures supportées - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/synapse-admin.svg)](https://ci-apps.yunohost.org/ci/apps/synapse-admin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/synapse-admin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/synapse-admin/) - -## Liens - - * Signaler un bug : https://github.com/YunoHost-Apps/synapse-admin_ynh/issues - * Dépôt de l'application principale : https://github.com/Awesome-Technologies/synapse-admin - * Site web YunoHost : https://yunohost.org/ - ---- +* Site officiel de l'app : https://github.com/Awesome-Technologies/synapse-admin +* Documentation officielle utilisateur : https://yunohost.org/en/app_synapse-admin +* Documentation officielle de l'admin : https://yunohost.org/packaging_apps +* Dépôt de code officiel de l'app : https://github.com/Awesome-Technologies/synapse-admin +* Documentation YunoHost pour cette app : https://yunohost.org/app_synapse-admin +* Signaler un bug : https://github.com/YunoHost-Apps/synapse-admin_ynh/issues ## Informations pour les développeurs @@ -54,3 +36,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/synapse-admin_ynh/tre ou sudo yunohost app upgrade synapse-admin -u https://github.com/YunoHost-Apps/synapse-admin_ynh/tree/testing --debug ``` + +**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file From 48920cf6e3b76106471187e68dc24e8bc544ce75 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 20:17:32 +0200 Subject: [PATCH 05/20] Update install --- scripts/install | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/install b/scripts/install index 07ffdb1..023c911 100644 --- a/scripts/install +++ b/scripts/install @@ -69,6 +69,14 @@ ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version # Install Yarn ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg" +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Configuring system user..." --weight=3 + +# Create a system user +ynh_system_user_create --username=$app --home_dir=$final_path + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= @@ -92,14 +100,6 @@ ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config ynh_add_nginx_config -#================================================= -# CREATE DEDICATED USER -#================================================= -ynh_script_progression --message="Configuring system user..." --weight=3 - -# Create a system user -ynh_system_user_create --username=$app --home_dir=$final_path - #================================================= # SPECIFIC SETUP #============================================== From 422f8053cdc657ca99dfa23b32f1061b5ad0120d Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 20:25:16 +0200 Subject: [PATCH 06/20] Create screenshots.jpg --- doc/screenshots/screenshots.jpg | Bin 0 -> 227036 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/screenshots/screenshots.jpg diff --git a/doc/screenshots/screenshots.jpg b/doc/screenshots/screenshots.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9a0837598db7821afc304b0c0a7c0f0cc4760718 GIT binary patch literal 227036 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

wt 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 z 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 LfIygid;R|lNm~x$ literal 0 HcmV?d00001 From 462f4a37a52a2025fecf66fd6c19a1f87dbe2593 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Fri, 6 Aug 2021 18:25:23 +0000 Subject: [PATCH 07/20] Auto-update README --- README.md | 4 ++++ README_fr.md | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/README.md b/README.md index 947f018..e8c61cc 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,10 @@ Admin UI for Synapse +## Screenshots + +![](./doc/screenshots/screenshots.jpg) + ## Documentation and resources * Official app website: https://github.com/Awesome-Technologies/synapse-admin diff --git a/README_fr.md b/README_fr.md index 2908313..bde5e7f 100644 --- a/README_fr.md +++ b/README_fr.md @@ -17,6 +17,10 @@ Admin UI pour Synapse +## Captures d'écran + +![](./doc/screenshots/screenshots.jpg) + ## Documentations et ressources * Site officiel de l'app : https://github.com/Awesome-Technologies/synapse-admin From 325de5c0f6aef77a96d16d59651aae7d2bd134ad Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:00:06 +0200 Subject: [PATCH 08/20] Fix --- scripts/_common.sh | 3 +-- scripts/install | 8 ++++++-- scripts/upgrade | 11 ++++++----- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index b9bfcbe..6726bba 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,8 +4,7 @@ # COMMON VARIABLES #================================================= -# dependencies used by the app -pkg_dependencies="" +version_commit="5262518699e86852feb3967f65d1dc6376c3d069" nodejs_version=12 diff --git a/scripts/install b/scripts/install index 023c911..42c8e5d 100644 --- a/scripts/install +++ b/scripts/install @@ -84,9 +84,13 @@ ynh_script_progression --message="Setting up source files..." --weight=2 ynh_app_setting_set --app=$app --key=final_path --value=$final_path # Download, check integrity, uncompress and patch the source from app.src -ynh_setup_source --dest_dir=$final_path +#ynh_setup_source --dest_dir=$final_path -#git clone https://github.com/Awesome-Technologies/synapse-admin.git "$final_path" --quiet +git clone --quiet https://github.com/Awesome-Technologies/synapse-admin.git -b master "$final_path" +# Reset branch to the level of update we needed +pushd "$final_path" + git reset --hard --quiet $version_commit +popd chmod 750 "$final_path" chmod -R o-rwx "$final_path" diff --git a/scripts/upgrade b/scripts/upgrade index 4994f75..6782b45 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -79,11 +79,12 @@ if [ "$upgrade_type" == "UPGRADE_APP" ] then ynh_script_progression --message="Upgrading source files..." --weight=160 - # Remove the app directory securely - ynh_secure_remove --file=$final_path - - # Download, check integrity, uncompress and patch the source from app.src - ynh_setup_source --dest_dir=$final_path + pushd "$final_path" + git fetch --quiet + git checkout stable --quiet + git pull --quiet + git reset --hard $version_commit --quiet + popd fi chmod 750 "$final_path" From 7b3f80119216c4bad17483ecde47822f1dce24b9 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:08:32 +0200 Subject: [PATCH 09/20] Fix --- scripts/install | 2 -- scripts/remove | 2 -- scripts/restore | 3 --- scripts/upgrade | 2 -- 4 files changed, 9 deletions(-) diff --git a/scripts/install b/scripts/install index 42c8e5d..9cac71e 100644 --- a/scripts/install +++ b/scripts/install @@ -61,8 +61,6 @@ ynh_app_setting_set --app=$app --key=port --value=$port #================================================= ynh_script_progression --message="Installing dependencies..." --weight=20 -ynh_install_app_dependencies $pkg_dependencies - # Install Nodejs ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version diff --git a/scripts/remove b/scripts/remove index 3003512..ed9f121 100644 --- a/scripts/remove +++ b/scripts/remove @@ -47,8 +47,6 @@ ynh_remove_systemd_config ynh_script_progression --message="Removing dependencies..." --weight=1 # Remove metapackage and its dependencies -ynh_remove_app_dependencies - ynh_remove_nodejs #================================================= diff --git a/scripts/restore b/scripts/restore index 2acc344..fb96666 100644 --- a/scripts/restore +++ b/scripts/restore @@ -72,9 +72,6 @@ chown -R $app:www-data "$final_path" #================================================= ynh_script_progression --message="Reinstalling dependencies..." --weight=7 -# Define and install dependencies -ynh_install_app_dependencies $pkg_dependencies - # Install Nodejs ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version diff --git a/scripts/upgrade b/scripts/upgrade index 6782b45..0f2959f 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -104,8 +104,6 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Upgrading dependencies..." --weight=18 -ynh_install_app_dependencies $pkg_dependencies - # Install Nodejs ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version From bbd280b6f5c689fd0bb19ea809fb179538efae68 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:15:54 +0200 Subject: [PATCH 10/20] Update install --- scripts/install | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scripts/install b/scripts/install index 9cac71e..8c99aeb 100644 --- a/scripts/install +++ b/scripts/install @@ -102,6 +102,13 @@ ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config ynh_add_nginx_config +#================================================= +# ADD A CONFIGURATION +#================================================= +ynh_script_progression --message="Adding a configuration file..." --time --weight=1 + +ynh_add_config --template="../conf/.env" --destination="$final_path/.env" + #================================================= # SPECIFIC SETUP #============================================== From 8fe4423cc25e3ad08f41b169343c1b440f0dddce Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:22:26 +0200 Subject: [PATCH 11/20] Update install --- scripts/install | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index 8c99aeb..0ab8660 100644 --- a/scripts/install +++ b/scripts/install @@ -93,6 +93,7 @@ popd chmod 750 "$final_path" chmod -R o-rwx "$final_path" chown -R $app:www-data "$final_path" +chown -R $app:$app $final_path/node_modules #================================================= # NGINX CONFIGURATION @@ -105,7 +106,7 @@ ynh_add_nginx_config #================================================= # ADD A CONFIGURATION #================================================= -ynh_script_progression --message="Adding a configuration file..." --time --weight=1 +ynh_script_progression --message="Adding a configuration file..." --weight=1 ynh_add_config --template="../conf/.env" --destination="$final_path/.env" @@ -119,6 +120,7 @@ ynh_script_progression --message="Building $app... (this will take some time and pushd "$final_path" ynh_use_nodejs ynh_exec_warn_less yarn install + chown -R $app:$app $final_path/node_modules popd #================================================= From 6f193358ab3fd65c15388a9409b90131d9dbb73a Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:24:33 +0200 Subject: [PATCH 12/20] Update install --- scripts/install | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index 0ab8660..11c6b81 100644 --- a/scripts/install +++ b/scripts/install @@ -117,10 +117,11 @@ ynh_add_config --template="../conf/.env" --destination="$final_path/.env" #============================================== ynh_script_progression --message="Building $app... (this will take some time and resources!)" --weight=40 +chown -R $app: $final_path + pushd "$final_path" ynh_use_nodejs ynh_exec_warn_less yarn install - chown -R $app:$app $final_path/node_modules popd #================================================= From 829d47a0a4882f1f4c92b6b132ff6e59758db4b9 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:26:05 +0200 Subject: [PATCH 13/20] Update install --- scripts/install | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/install b/scripts/install index 11c6b81..3b59683 100644 --- a/scripts/install +++ b/scripts/install @@ -93,7 +93,6 @@ popd chmod 750 "$final_path" chmod -R o-rwx "$final_path" chown -R $app:www-data "$final_path" -chown -R $app:$app $final_path/node_modules #================================================= # NGINX CONFIGURATION From 6d67a903bbc9a94c6e3c11d036e3961f9d8d2357 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 6 Aug 2021 21:29:05 +0200 Subject: [PATCH 14/20] Update install --- scripts/install | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 3b59683..c40e47b 100644 --- a/scripts/install +++ b/scripts/install @@ -116,13 +116,13 @@ ynh_add_config --template="../conf/.env" --destination="$final_path/.env" #============================================== ynh_script_progression --message="Building $app... (this will take some time and resources!)" --weight=40 -chown -R $app: $final_path - pushd "$final_path" ynh_use_nodejs ynh_exec_warn_less yarn install popd +chown -R $app: $final_path + #================================================= # SETUP SYSTEMD #================================================= From fc07726ac0574e271e2917d623b85768d8bf78df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Tue, 10 Aug 2021 23:08:18 +0200 Subject: [PATCH 15/20] Update manifest.json Co-authored-by: Alexandre Aubin --- manifest.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/manifest.json b/manifest.json index e22883c..9611a67 100644 --- a/manifest.json +++ b/manifest.json @@ -11,8 +11,6 @@ "upstream": { "license": "Apache-2.0", "website": "https://github.com/Awesome-Technologies/synapse-admin", - "admindoc": "https://yunohost.org/packaging_apps", - "userdoc": "https://yunohost.org/en/app_synapse-admin", "code": "https://github.com/Awesome-Technologies/synapse-admin" }, "license": "Apache-2.0", From 7d425aaf14e2d133e99c0384b3c23190d05984f8 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Tue, 10 Aug 2021 21:08:20 +0000 Subject: [PATCH 16/20] Auto-update README --- README.md | 2 -- README_fr.md | 2 -- 2 files changed, 4 deletions(-) diff --git a/README.md b/README.md index e8c61cc..1366ca4 100644 --- a/README.md +++ b/README.md @@ -28,8 +28,6 @@ Admin UI for Synapse ## Documentation and resources * Official app website: https://github.com/Awesome-Technologies/synapse-admin -* Official user documentation: https://yunohost.org/en/app_synapse-admin -* Official admin documentation: https://yunohost.org/packaging_apps * Upstream app code repository: https://github.com/Awesome-Technologies/synapse-admin * YunoHost documentation for this app: https://yunohost.org/app_synapse-admin * Report a bug: https://github.com/YunoHost-Apps/synapse-admin_ynh/issues diff --git a/README_fr.md b/README_fr.md index bde5e7f..63209c8 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,8 +24,6 @@ Admin UI pour Synapse ## Documentations et ressources * Site officiel de l'app : https://github.com/Awesome-Technologies/synapse-admin -* Documentation officielle utilisateur : https://yunohost.org/en/app_synapse-admin -* Documentation officielle de l'admin : https://yunohost.org/packaging_apps * Dépôt de code officiel de l'app : https://github.com/Awesome-Technologies/synapse-admin * Documentation YunoHost pour cette app : https://yunohost.org/app_synapse-admin * Signaler un bug : https://github.com/YunoHost-Apps/synapse-admin_ynh/issues From 4bf4841499ea7b8f5d3d34c16638d22aefc4497a Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Thu, 12 Aug 2021 16:10:18 +0200 Subject: [PATCH 17/20] Update install --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index c40e47b..78c4658 100644 --- a/scripts/install +++ b/scripts/install @@ -112,7 +112,7 @@ ynh_add_config --template="../conf/.env" --destination="$final_path/.env" #================================================= # SPECIFIC SETUP #============================================== -# INSTALL CODIMD +# INSTALL SYNAPSE-ADMIN #============================================== ynh_script_progression --message="Building $app... (this will take some time and resources!)" --weight=40 From 13bcc076fb8432e6bcb79e90232f83fee60f21e3 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 23 Aug 2021 13:17:50 +0200 Subject: [PATCH 18/20] Update check_process --- check_process | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/check_process b/check_process index 754f2e2..852de38 100644 --- a/check_process +++ b/check_process @@ -13,7 +13,7 @@ setup_public=1 upgrade=1 backup_restore=1 - multi_instance=1 + multi_instance=0 change_url=1 ;;; Options Email= From fd2d3d0a8c4b322f9b60b9b8b44f2b39231064f0 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 23 Aug 2021 13:18:14 +0200 Subject: [PATCH 19/20] Update restore --- scripts/restore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/restore b/scripts/restore index fb96666..31fb592 100644 --- a/scripts/restore +++ b/scripts/restore @@ -98,7 +98,7 @@ yunohost service add $app --description "UI admin for Synapse" --log="/var/log/$ #================================================= ynh_script_progression --message="Starting a systemd service..." --weight=1 -ynh_systemd_action --service_name=$app --action="start" --log_path="systemd" --line_match="HTTP Server listening" +ynh_systemd_action --service_name=$app --action="start" --log_path="systemd" #--line_match="HTTP Server listening" #================================================= # GENERIC FINALIZATION From 5d0fa00cc71df31ae9957e9d747ef49e8659451a Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 23 Aug 2021 17:06:21 +0200 Subject: [PATCH 20/20] Fix --- scripts/_common.sh | 2 +- scripts/upgrade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 6726bba..e70b795 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,7 +4,7 @@ # COMMON VARIABLES #================================================= -version_commit="5262518699e86852feb3967f65d1dc6376c3d069" +version_commit="40d0813898bccb30f00e585718176be8e4821bbe" nodejs_version=12 diff --git a/scripts/upgrade b/scripts/upgrade index 0f2959f..945183c 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -81,7 +81,7 @@ then pushd "$final_path" git fetch --quiet - git checkout stable --quiet + git checkout master --quiet git pull --quiet git reset --hard $version_commit --quiet popd