1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/synapse-admin_ynh.git synced 2024-09-03 20:26:34 +02:00

Merge pull request #13 from YunoHost-Apps/fix

This commit is contained in:
tituspijean 2022-09-29 12:05:55 +02:00 committed by GitHub
commit 602215d88e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 82 additions and 60 deletions

View file

@ -5,7 +5,7 @@ It shall NOT be edited by hand.
# 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)
[![Integration level](https://dash.yunohost.org/integration/synapse-admin.svg)](https://dash.yunohost.org/appci/app/synapse-admin) ![Working status](https://ci-apps.yunohost.org/ci/badges/synapse-admin.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/synapse-admin.maintain.svg)
[![Install Synapse Admin with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=synapse-admin)
*[Lire ce readme en français.](./README_fr.md)*
@ -20,27 +20,27 @@ Admin UI for Synapse
**Shipped version:** 0.8.5~ynh1
## Screenshots
![](./doc/screenshots/screenshots.jpg)
![Screenshot of Synapse Admin](./doc/screenshots/screenshots.jpg)
## Documentation and resources
* Official app website: https://github.com/Awesome-Technologies/synapse-admin
* 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
* Official app website: <https://github.com/Awesome-Technologies/synapse-admin>
* 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
Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/synapse-admin_ynh/tree/testing).
To try the testing branch, please proceed like that.
```
``` bash
sudo yunohost app install https://github.com/YunoHost-Apps/synapse-admin_ynh/tree/testing --debug
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
**More info regarding app packaging:** <https://yunohost.org/packaging_apps>

View file

@ -1,10 +1,14 @@
<!--
N.B.: This README was automatically generated by https://github.com/YunoHost/apps/tree/master/tools/README-generator
It shall NOT be edited by hand.
-->
# Synapse Admin pour YunoHost
[![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)
[![Niveau d'intégration](https://dash.yunohost.org/integration/synapse-admin.svg)](https://dash.yunohost.org/appci/app/synapse-admin) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/synapse-admin.status.svg) ![Statut de maintenance](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)*
*[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, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.*
@ -13,30 +17,30 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour
Admin UI pour Synapse
**Version incluse :** 0.8.5~ynh1
**Version incluse :** 0.8.5~ynh1
## Captures d'écran
![](./doc/screenshots/screenshots.jpg)
![Capture d'écran de Synapse Admin](./doc/screenshots/screenshots.jpg)
## Documentations et ressources
* Site officiel de l'app : https://github.com/Awesome-Technologies/synapse-admin
* 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
* Site officiel de l'app : <https://github.com/Awesome-Technologies/synapse-admin>
* 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
Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/synapse-admin_ynh/tree/testing).
Pour essayer la branche testing, procédez comme suit.
```
``` bash
sudo yunohost app install https://github.com/YunoHost-Apps/synapse-admin_ynh/tree/testing --debug
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
**Plus d'infos sur le packaging d'applications :** <https://yunohost.org/packaging_apps>

View file

@ -1,9 +1,11 @@
;; Test complet
; pre-install
sudo yunohost tools update apps
sudo yunohost app install https://github.com/YunoHost-Apps/synapse_ynh/tree/823f98a8cbe108ad4cc0e38e280a83401dca2b9f -a "domain=sub.domain.tld&server_name=$server_name&is_free_registration=$is_free_registration&jitsi_server=$jitsi_server" --force
; Manifest
domain="domain.tld"
synapse_app="synapse"
synapse_domain="sub.domain.tld"
path="/path"
admin="john"
is_public=1
; Checks
pkg_linter=1
@ -18,4 +20,4 @@
change_url=1
;;; Options
Email=
Notification=none
Notification=none

8
conf/endpoint.nginx.conf Normal file
View file

@ -0,0 +1,8 @@
location /_synapse/admin {
proxy_pass http://localhost:__SYNAPSE_PORT__;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
client_max_body_size 100M;
}

View file

@ -15,31 +15,3 @@ location / {
# Include SSOWAT user panel.
include conf.d/yunohost_panel.conf.inc;
}
location /.well-known/acme-challenge {
proxy_pass http://127.0.0.1:8009;
}
location /.well-known/matrix/server {
return 200 '{ "m.server": "__SYNAPSE_DOMAIN__:443" }';
}
location /.well-known/matrix/client {
return 200 '{ "m.homeserver": { "base_url": "https://__SYNAPSE_DOMAIN__" } }';
}
location /_matrix {
proxy_pass http://127.0.0.1:8008;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_read_timeout 600;
client_max_body_size 100M;
}
location /_synapse/admin {
proxy_pass http://127.0.0.1:8008;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_read_timeout 600;
client_max_body_size 100M;
}

View file

@ -31,14 +31,17 @@
"type": "domain"
},
{
"name": "synapse_domain",
"type": "domain",
"name": "synapse_app",
"type": "string",
"ask": {
"en": "The domain of your Synapse server",
"fr": "Le domain de votre serveur Synapse"
"en": "Input the Synapse app ID you wish to connect to.",
"fr": "Entrez l'ID de l'app Synapse à laquelle vous souhaitez vous connecter."
},
"example": "synapse.example.com",
"default": ""
"help": {
"en": "Leave the default value if you have only one Synapse server installed.",
"fr": "Laissez la valeur par défaut si vous n'avez installé qu'un seul serveur Synapse."
},
"default": "synapse"
},
{
"name": "is_public",

View file

@ -25,6 +25,8 @@ app=$YNH_APP_INSTANCE_NAME
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
domain=$(ynh_app_setting_get --app=$app --key=domain)
synapse_app=$(ynh_app_setting_get --app=$app --key=synapse_app)
synapse_domain=$(ynh_app_setting_get --app=$app --key=synapse_domain)
#=================================================
# DECLARE DATA AND CONF FILES TO BACKUP
@ -42,6 +44,7 @@ ynh_backup --src_path="$final_path"
#=================================================
ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_backup --src_path="/etc/nginx/conf.d/${synapse_domain}.d/$app.endpoint.conf"
#=================================================
# BACKUP LOGROTATE

View file

@ -23,7 +23,9 @@ ynh_abort_if_errors
domain=$YNH_APP_ARG_DOMAIN
path_url="/"
is_public=$YNH_APP_ARG_IS_PUBLIC
synapse_domain=$YNH_APP_ARG_SYNAPSE_DOMAIN
synapse_app=$YNH_APP_ARG_SYNAPSE_APP
synapse_domain=$(ynh_app_setting_get --app=$synapse_app --key=domain)
synapse_port=$(ynh_app_setting_get --app=$synapse_app --key=synapse_port)
app=$YNH_APP_INSTANCE_NAME
@ -45,7 +47,9 @@ ynh_script_progression --message="Storing installation settings..." --weight=2
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=synapse_app --value=$synapse_app
ynh_app_setting_set --app=$app --key=synapse_domain --value=$synapse_domain
ynh_app_setting_set --app=$app --key=synapse_port --value=$synapse_port
#=================================================
# STANDARD MODIFICATIONS
@ -98,6 +102,9 @@ ynh_script_progression --message="Configuring NGINX web server..." --weight=2
# Create a dedicated NGINX config
ynh_add_nginx_config
# Create NGINX config to access /_synapse/admin endpoint
ynh_add_config --template="endpoint.nginx.conf" --destination="/etc/nginx/conf.d/${synapse_domain}.d/$app.endpoint.conf"
#=================================================
# SPECIFIC SETUP
#==============================================

View file

@ -19,6 +19,8 @@ app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
port=$(ynh_app_setting_get --app=$app --key=port)
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
synapse_app=$(ynh_app_setting_get --app=$app --key=synapse_app)
synapse_domain=$(ynh_app_setting_get --app=$synapse_app --key=synapse_domain)
#=================================================
# STANDARD REMOVE
@ -70,9 +72,13 @@ ynh_secure_remove --file="$final_path"
#=================================================
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=5
# Remove the dedicated nginx config
# Remove the dedicated NGINX config
ynh_remove_nginx_config
# Remove NGINX config that enabled /_synapse/admin endpoint
ynh_secure_remove --file="/etc/nginx/conf.d/${synapse_domain}.d/synapse-admin.conf"
ynh_secure_remove --file="/etc/nginx/conf.d/${synapse_domain}.d/$app.endpoint.conf"
#=================================================
# GENERIC FINALIZATION
#=================================================

View file

@ -26,6 +26,7 @@ app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
path_url=$(ynh_app_setting_get --app=$app --key=path)
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
synapse_domain=$(ynh_app_setting_get --app=$app --key=synapse_domain)
#=================================================
# CHECK IF THE APP CAN BE RESTORED
@ -42,6 +43,7 @@ test ! -d $final_path || ynh_die --message="There is already a directory: $final
ynh_script_progression --message="Restoring the NGINX configuration..."
ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_restore_file --origin_path="/etc/nginx/conf.d/${synapse_domain}.d/$app.endpoint.conf"
#=================================================
# RECREATE THE DEDICATED USER

View file

@ -20,7 +20,7 @@ domain=$(ynh_app_setting_get --app=$app --key=domain)
path_url=$(ynh_app_setting_get --app=$app --key=path)
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
port=$(ynh_app_setting_get --app=$app --key=port)
synapse_domain=$(ynh_app_setting_get --app=$app --key=synapse_domain)
synapse_app=$(ynh_app_setting_get --app=$app --key=synapse_app)
#=================================================
# CHECK VERSION
@ -58,6 +58,18 @@ if ynh_legacy_permissions_exists; then
ynh_app_setting_delete --app=$app --key=is_public
fi
# If synapse_app doesn't exist, create it and assume it is `synapse`
if [ -z "$synapse_app" ]; then
synapse_app="synapse"
ynh_app_setting_set --app=$app --key=synapse_app --value=$synapse_app
fi
# Reload and store Synapse's settings, in case of they changed
synapse_domain=$(ynh_app_setting_get --app=$synapse_app --key=domain)
synapse_port=$(ynh_app_setting_get --app=$synapse_app --key=synapse_port)
ynh_app_setting_set --app=$app --key=synapse_domain --value=$synapse_domain
ynh_app_setting_set --app=$app --key=synapse_port --value=$synapse_port
#=================================================
# STANDARD UPGRADE STEPS
#=================================================
@ -98,6 +110,9 @@ ynh_script_progression --message="Upgrading NGINX web server configuration..." -
# Create a dedicated nginx config
ynh_add_nginx_config
# Create NGINX config to access /_synapse/admin endpoint
ynh_add_config --template="endpoint.nginx.conf" --destination="/etc/nginx/conf.d/${synapse_domain}.d/$app.endpoint.conf"
#=================================================
# UPGRADE DEPENDENCIES
#=================================================