1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/galene_ynh.git synced 2024-09-03 18:36:31 +02:00
* Update version 0.4.1
This commit is contained in:
Éric Gaspar 2021-11-06 11:29:22 +01:00 committed by GitHub
parent aaae7fbe83
commit b401534e66
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 85 additions and 45 deletions

View file

@ -27,7 +27,7 @@ Galène is a videoconference server (an “SFU”) that is easy to deploy and th
- activity detection - activity detection
**Shipped version:** 0.4.0~ynh3 **Shipped version:** 0.4.1~ynh1
**Demo:** https://galene.org:8443/ **Demo:** https://galene.org:8443/
@ -44,7 +44,9 @@ Galène is a videoconference server (an “SFU”) that is easy to deploy and th
#### Creating and configuring groups #### Creating and configuring groups
Groups are defined by JSON files located in the folder `/home/yunohost.app/galene/groups`. Each group is represented by a `GroupName.json` file. Groups are defined by JSON files located in the folder `/home/yunohost.app/galene/groups`. Each group is represented by a `GroupName.json` file.
To create a new group, you need to create a `GroupNameExample.json` file (you can also make subfolder groups, and the groups will be accessible with `https://domain.tld/group/subfolder/GroupName`). Various configuration options are available (see https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file). To create a new group, you need to create a `GroupNameExample.json` file and restart Galène service (you can also make subfolder groups, and the groups will be accessible with `https://domain.tld/group/subfolder/GroupName`). Various configuration options are available (see https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file).
When Galène is removed, the data directory (`/home/yunohost.app/galene/`) is preserved. If you want to remove it along with Galène, use the `--purge` option: `sudo yunohost app remove galene --purge`.
*NB: Spaces are supported in group file names.* *NB: Spaces are supported in group file names.*
@ -78,7 +80,7 @@ You can also install Galène with an external TURN server with this branch: http
### Server Statistics page ### Server Statistics page
Statistics are available under `/opt/yunohost/galene/stats.json`, with a human-readable version at `domain.ltd/stats.html`. This is only available to the server administrator. Statistics are available under `/opt/yunohost/galene/stats.json`, with a human-readable version at `domain.ltd/stats.html`. This is only available to the server administrator (the admin/password is set in the `config.json` file: `/opt/yunohost/galene/data/config.json`).
### How do I record my lecture? ### How do I record my lecture?

View file

@ -23,7 +23,7 @@ Galène est un serveur de visioconférence (un « SFU ») facile à déployer et
- détection d'activité - détection d'activité
**Version incluse :** 0.4.0~ynh3 **Version incluse :** 0.4.1~ynh1
**Démo :** https://galene.org:8443/ **Démo :** https://galene.org:8443/
@ -40,7 +40,9 @@ Les salles de réunion *Galène* sont appelées « groupes ». Tout groupe est a
#### Ajouter et configurer des groupes #### Ajouter et configurer des groupes
Les groupes sont définis par des fichiers JSON situés dans le dossier `/home/yunohost.app/galene/groups`. Chaque groupe est représenté par un fichier `GroupName.json`. Les groupes sont définis par des fichiers JSON situés dans le dossier `/home/yunohost.app/galene/groups`. Chaque groupe est représenté par un fichier `GroupName.json`.
Pour créer un nouveau groupe, vous devez créer un fichier `GroupNameExample.json` (vous pouvez également créer un sous-dossier, et les groupes seront accessibles avec` https://domain.tld/group/subfolder/GroupName`). Différentes options de configurations sont disponibles (voir https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file). Pour créer un nouveau groupe, vous devez créer un fichier `GroupNameExample.json` et redémarrer le service Galène (vous pouvez également créer un sous-dossier, et les groupes seront accessibles avec` https://domain.tld/group/subfolder/GroupName`). Différentes options de configurations sont disponibles (voir https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file).
Lorsque Galène est supprimé, le répertoire de données (`/home/yunohost.app/galene/`) est conservé. Si vous souhaitez le supprimer avec Galène, utilisez l'option `--purge` : `sudo yunohost app remove galene --purge`.
*NB : les espaces sont pris en charge dans les noms de fichiers de groupe.* *NB : les espaces sont pris en charge dans les noms de fichiers de groupe.*
@ -74,7 +76,7 @@ Vous pouvez également installer *Galène* avec un serveur TURN externe avec cet
### Statistiques du serveur ### Statistiques du serveur
Les statistiques sont disponibles sous `/opt/yunohost/galene/stats.json`, avec une version lisible sur `domain.ltd/stats.html`. Cette page n'est disponible que pour l'administrateur du serveur. Les statistiques sont disponibles sous `/opt/yunohost/galene/stats.json`, avec une version lisible sur `domain.ltd/stats.html`. Cette page n'est disponible que pour l'administrateur du serveur (le mot de passe et l'administrateur sont définis dans le fichier `config.json` : `/opt/yunohost/galene/data/config.json`).
### Comment enregistrer ma conférence ? ### Comment enregistrer ma conférence ?

View file

@ -15,6 +15,7 @@
setup_private=1 setup_private=1
setup_public=1 setup_public=1
upgrade=1 upgrade=1
upgrade=1 from_commit=aaae7fbe83ce001fabd40509882e765a5d8da2c1
backup_restore=1 backup_restore=1
multi_instance=0 multi_instance=0
change_url=1 change_url=1
@ -22,6 +23,6 @@
Email= Email=
Notification=none Notification=none
;;; Upgrade options ;;; Upgrade options
; commit=CommitHash ; commit=aaae7fbe83ce001fabd40509882e765a5d8da2c1
name=Name and date of the commit. name=Testing (#62)
manifest_arg=domain=DOMAIN&path=PATH&admin=USER&language=fr&is_public=1&password=pass&port=666& manifest_arg=domain=DOMAIN&path=PATH&admin=USER&language=fr&is_public=1&password=pass&port=666&

View file

@ -1,7 +1,6 @@
SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4/galene_0.4_Linux_386.tar.gz SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4.1/galene_0.4.1_Linux_386.tar.gz
SOURCE_SUM=ef933459f6564e3533bc8ea0db4f5adddee774f480dce4ba7be086116b46bc52 SOURCE_SUM=823d890aa6e55ec522b9b0c95b6e09fa83b8fdda9347cd25dcd4ddeffb763064
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_IN_SUBDIR=true SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=
SOURCE_EXTRACT=true SOURCE_EXTRACT=true

View file

@ -1,7 +1,6 @@
SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4/galene_0.4_Linux_amd64.tar.gz SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4.1/galene_0.4.1_Linux_amd64.tar.gz
SOURCE_SUM=2530187e021a792753c78e3b8449b23b88b0e9349dda263eb815ef46e8d16330 SOURCE_SUM=e6a96c8fc5c25ea9fd6e137b9a9da7e9ebfb96945aecf7cf80a9eb7a83c124f3
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_IN_SUBDIR=true SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=
SOURCE_EXTRACT=true SOURCE_EXTRACT=true

View file

@ -1,7 +1,6 @@
SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4/galene_0.4_Linux_arm6.tar.gz SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4.1/galene_0.4.1_Linux_arm6.tar.gz
SOURCE_SUM=56a7be3fe0210b920f1883dfb054268ffeb21f4e822c4b1f1527c40e95b57952 SOURCE_SUM=4a017aa340f81494a14414485ffccc53b461b58c2e70bc178f6037c65ddf534c
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_IN_SUBDIR=true SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=
SOURCE_EXTRACT=true SOURCE_EXTRACT=true

View file

@ -1,7 +1,6 @@
SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4/galene_0.4_Linux_arm64.tar.gz SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4.1/galene_0.4.1_Linux_arm64.tar.gz
SOURCE_SUM=5281e7f0918d9df4de4f61028a15d0c876346a5e202f22849e69ffd3153cd82a SOURCE_SUM=14a89b18792ae60165003ac9c81a7059a8697a6b43be8c41244db486a9527c86
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_IN_SUBDIR=true SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=
SOURCE_EXTRACT=true SOURCE_EXTRACT=true

View file

@ -1,7 +1,6 @@
SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4/galene_0.4_Linux_arm7.tar.gz SOURCE_URL=https://github.com/YunoHost-Apps/galene_ynh/releases/download/v0.4.1/galene_0.4.1_Linux_arm7.tar.gz
SOURCE_SUM=3af918cf297fbc53d6d109fa0b3d465907af87c93c9da87bf78601ad618fb505 SOURCE_SUM=dcad2e7f4d76d345fd6b5966e00db633388b3aa21be774c45a892d3bcfc16d3d
SOURCE_SUM_PRG=sha256sum SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=tar.gz SOURCE_FORMAT=tar.gz
SOURCE_IN_SUBDIR=true SOURCE_IN_SUBDIR=true
SOURCE_FILENAME=
SOURCE_EXTRACT=true SOURCE_EXTRACT=true

4
conf/config.json Normal file
View file

@ -0,0 +1,4 @@
{
"canonicalHost": "__DOMAIN__",
"admin":[{"username":"__ADMIN__","password":"__PASSWORD__"}]
}

View file

@ -5,7 +5,9 @@
#### Creating and configuring groups #### Creating and configuring groups
Groups are defined by JSON files located in the folder `/home/yunohost.app/galene/groups`. Each group is represented by a `GroupName.json` file. Groups are defined by JSON files located in the folder `/home/yunohost.app/galene/groups`. Each group is represented by a `GroupName.json` file.
To create a new group, you need to create a `GroupNameExample.json` file (you can also make subfolder groups, and the groups will be accessible with `https://domain.tld/group/subfolder/GroupName`). Various configuration options are available (see https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file). To create a new group, you need to create a `GroupNameExample.json` file and restart Galène service (you can also make subfolder groups, and the groups will be accessible with `https://domain.tld/group/subfolder/GroupName`). Various configuration options are available (see https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file).
When Galène is removed, the data directory (`/home/yunohost.app/galene/`) is preserved. If you want to remove it along with Galène, use the `--purge` option: `sudo yunohost app remove galene --purge`.
*NB: Spaces are supported in group file names.* *NB: Spaces are supported in group file names.*
@ -39,7 +41,7 @@ You can also install Galène with an external TURN server with this branch: http
### Server Statistics page ### Server Statistics page
Statistics are available under `/opt/yunohost/galene/stats.json`, with a human-readable version at `domain.ltd/stats.html`. This is only available to the server administrator. Statistics are available under `/opt/yunohost/galene/stats.json`, with a human-readable version at `domain.ltd/stats.html`. This is only available to the server administrator (the admin/password is set in the `config.json` file: `/opt/yunohost/galene/data/config.json`).
### How do I record my lecture? ### How do I record my lecture?

View file

@ -5,7 +5,9 @@ Les salles de réunion *Galène* sont appelées « groupes ». Tout groupe est a
#### Ajouter et configurer des groupes #### Ajouter et configurer des groupes
Les groupes sont définis par des fichiers JSON situés dans le dossier `/home/yunohost.app/galene/groups`. Chaque groupe est représenté par un fichier `GroupName.json`. Les groupes sont définis par des fichiers JSON situés dans le dossier `/home/yunohost.app/galene/groups`. Chaque groupe est représenté par un fichier `GroupName.json`.
Pour créer un nouveau groupe, vous devez créer un fichier `GroupNameExample.json` (vous pouvez également créer un sous-dossier, et les groupes seront accessibles avec` https://domain.tld/group/subfolder/GroupName`). Différentes options de configurations sont disponibles (voir https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file). Pour créer un nouveau groupe, vous devez créer un fichier `GroupNameExample.json` et redémarrer le service Galène (vous pouvez également créer un sous-dossier, et les groupes seront accessibles avec` https://domain.tld/group/subfolder/GroupName`). Différentes options de configurations sont disponibles (voir https://github.com/YunoHost-Apps/galene_ynh/wiki/Configuration-file).
Lorsque Galène est supprimé, le répertoire de données (`/home/yunohost.app/galene/`) est conservé. Si vous souhaitez le supprimer avec Galène, utilisez l'option `--purge` : `sudo yunohost app remove galene --purge`.
*NB : les espaces sont pris en charge dans les noms de fichiers de groupe.* *NB : les espaces sont pris en charge dans les noms de fichiers de groupe.*
@ -39,7 +41,7 @@ Vous pouvez également installer *Galène* avec un serveur TURN externe avec cet
### Statistiques du serveur ### Statistiques du serveur
Les statistiques sont disponibles sous `/opt/yunohost/galene/stats.json`, avec une version lisible sur `domain.ltd/stats.html`. Cette page n'est disponible que pour l'administrateur du serveur. Les statistiques sont disponibles sous `/opt/yunohost/galene/stats.json`, avec une version lisible sur `domain.ltd/stats.html`. Cette page n'est disponible que pour l'administrateur du serveur (le mot de passe et l'administrateur sont définis dans le fichier `config.json` : `/opt/yunohost/galene/data/config.json`).
### Comment enregistrer ma conférence ? ### Comment enregistrer ma conférence ?

View file

@ -6,7 +6,7 @@
"en": "Videoconferencing server that is easy to deploy", "en": "Videoconferencing server that is easy to deploy",
"fr": "Serveur de visioconférence facile à déployer" "fr": "Serveur de visioconférence facile à déployer"
}, },
"version": "0.4.0~ynh3", "version": "0.4.1~ynh1",
"url": "https://galene.org/", "url": "https://galene.org/",
"upstream": { "upstream": {
"license": "MIT", "license": "MIT",
@ -22,7 +22,7 @@
"email": "" "email": ""
}, },
"requirements": { "requirements": {
"yunohost": ">= 4.2.4" "yunohost": ">= 4.2.8"
}, },
"multi_instance": false, "multi_instance": false,
"services": [ "services": [
@ -32,13 +32,11 @@
"install" : [ "install" : [
{ {
"name": "domain", "name": "domain",
"type": "domain", "type": "domain"
"example": "example.com"
}, },
{ {
"name": "admin", "name": "admin",
"type": "user", "type": "user"
"example": "johndoe"
}, },
{ {
"name": "password", "name": "password",
@ -46,8 +44,7 @@
"help": { "help": {
"en": "Set the administrator password (between 8 and 30 characters)", "en": "Set the administrator password (between 8 and 30 characters)",
"fr": "Définissez le mot de passe administrateur (entre 8 et 30 caractères)" "fr": "Définissez le mot de passe administrateur (entre 8 et 30 caractères)"
}, }
"example": "Choose a password"
}, },
{ {
"name": "is_public", "name": "is_public",

View file

@ -29,6 +29,8 @@ ynh_script_progression --message="Loading installation settings..." --weight=1
# Needed for helper "ynh_add_nginx_config" # Needed for helper "ynh_add_nginx_config"
final_path=$(ynh_app_setting_get --app=$app --key=final_path) final_path=$(ynh_app_setting_get --app=$app --key=final_path)
port=$(ynh_app_setting_get --app=$app --key=port) port=$(ynh_app_setting_get --app=$app --key=port)
admin=$(ynh_app_setting_get --app=$app --key=admin)
password=$(ynh_app_setting_get --app=$app --key=password)
#================================================= #=================================================
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
@ -101,6 +103,17 @@ then
ynh_store_file_checksum --file="/etc/nginx/conf.d/$new_domain.d/$app.conf" ynh_store_file_checksum --file="/etc/nginx/conf.d/$new_domain.d/$app.conf"
fi fi
#=================================================
# CREATE DATA AND GROUPS FOLDER
#=================================================
ynh_script_progression --message="Updating configuration file..." --weight=2
domain="$new_domain"
ynh_add_config --template="../conf/config.json" --destination="$final_path/data/config.json"
chmod 400 "$final_path/data/config.json"
chown $app:$app "$final_path/data/config.json"
#================================================= #=================================================
# GENERIC FINALISATION # GENERIC FINALISATION
#================================================= #=================================================

View file

@ -50,6 +50,7 @@ ynh_script_progression --message="Storing installation settings..." --weight=4
ynh_app_setting_set --app=$app --key=domain --value=$domain 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=path --value=$path_url
ynh_app_setting_set --app=$app --key=admin --value=$admin ynh_app_setting_set --app=$app --key=admin --value=$admin
ynh_app_setting_set --app=$app --key=password --value=$password
ynh_app_setting_set --app=$app --key=group_name --value="$group_name" ynh_app_setting_set --app=$app --key=group_name --value="$group_name"
ynh_app_setting_set --app=$app --key=group_description --value="$group_description" ynh_app_setting_set --app=$app --key=group_description --value="$group_description"
@ -103,9 +104,11 @@ chown -R $app:www-data "$final_path"
# Create data folder # Create data folder
mkdir -p "$final_path/data" mkdir -p "$final_path/data"
echo $admin:$password > "$final_path/data/passwd"
chmod 400 "$final_path/data/passwd" ynh_add_config --template="../conf/config.json" --destination="$final_path/data/config.json"
chown $app: "$final_path/data/passwd"
chmod 400 "$final_path/data/config.json"
chown $app:$app "$final_path/data/config.json"
#================================================= #=================================================
# NGINX CONFIGURATION # NGINX CONFIGURATION

View file

@ -55,12 +55,12 @@ ynh_secure_remove --file="$final_path"
# REMOVE DATA DIR # REMOVE DATA DIR
#================================================= #=================================================
# # Remove the app data directory with the command `yunohost app remove --purge` # Remove the app data directory with the command `yunohost app remove galene --purge`
# if [ "${YNH_APP_PURGE:-0}" -eq 1 ] if [ "${YNH_APP_PURGE:-0}" -eq 1 ]
# then then
# ynh_script_progression --message="Removing $app data directory..." --weight=2 ynh_script_progression --message="Removing $app data directory..." --weight=2
# ynh_secure_remove --file="$datadir" ynh_secure_remove --file="$datadir"
# fi fi
#================================================= #=================================================
# REMOVE NGINX CONFIGURATION # REMOVE NGINX CONFIGURATION

View file

@ -19,6 +19,7 @@ app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain) domain=$(ynh_app_setting_get --app=$app --key=domain)
path_url=$(ynh_app_setting_get --app=$app --key=path) path_url=$(ynh_app_setting_get --app=$app --key=path)
admin=$(ynh_app_setting_get --app=$app --key=admin) admin=$(ynh_app_setting_get --app=$app --key=admin)
password=$(ynh_app_setting_get --app=$app --key=password)
final_path=$(ynh_app_setting_get --app=$app --key=final_path) final_path=$(ynh_app_setting_get --app=$app --key=final_path)
group_name=$(ynh_app_setting_get --app=$app --key=group_name) group_name=$(ynh_app_setting_get --app=$app --key=group_name)
port=$(ynh_app_setting_get --app=$app --key=port) port=$(ynh_app_setting_get --app=$app --key=port)
@ -99,13 +100,31 @@ if [ "$upgrade_type" == "UPGRADE_APP" ]
then then
ynh_script_progression --message="Upgrading source files..." --weight=2 ynh_script_progression --message="Upgrading source files..." --weight=2
ynh_setup_source --dest_dir="$final_path" --source_id="$architecture" --keep="$final_path/data/passwd" ynh_setup_source --dest_dir="$final_path" --source_id="$architecture" #--keep="$final_path/data/config.json"
fi fi
chmod 750 "$final_path" chmod 750 "$final_path"
chmod -R o-rwx "$final_path" chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path" chown -R $app:www-data "$final_path"
#=================================================
# UPGRADING CONFIGURATION FILE
#=================================================
ynh_script_progression --message="Upgrading configuration file..." --weight=2
# Create data folder
mkdir -p "$final_path/data"
# We remove the old admin/password file if present
if [ -f "$final_path/data/passwd" ] ; then
ynh_secure_remove --file="$final_path/data/passwd"
fi
ynh_add_config --template="../conf/config.json" --destination="$final_path/data/config.json"
chmod 400 "$final_path/data/config.json"
chown $app:$app "$final_path/data/config.json"
#================================================= #=================================================
# NGINX CONFIGURATION # NGINX CONFIGURATION
#================================================= #=================================================