1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/crabfit_ynh.git synced 2024-09-03 18:16:21 +02:00

Merge pull request #2 from YunoHost-Apps/cleaning

cleaning
This commit is contained in:
oiseauroch 2024-04-01 22:06:57 +02:00 committed by GitHub
commit 7048806770
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 34 additions and 104 deletions

View file

@ -1,4 +1,3 @@
Crab Fit helps you fit your event around everyone's schedules.
Simply create an event above and send the link to everyone that is participating.
Results update live and you will be able to see a heat-map of when everyone is free.

View file

@ -1,2 +0,0 @@
- Needs a dedicated domain
- Temporarily downloads and compile cargo for the backend installation

View file

@ -1,2 +0,0 @@
- Nécessite un domaine dédié
- Télécharge et compile temporairement un cargo et le backend

View file

@ -2,7 +2,7 @@ packaging_format = 2
id = "crabfit"
name = "Crab Fit"
description.en = "Enter your availability to find a time that works for everyone! "
description.en = "Enter your availability to find a time that works for everyone"
description.fr = "Trouver un temps correspondant à tout le monde en rentrant vos disponibilités"
version = "1.0~ynh1"
@ -18,7 +18,7 @@ userdoc = "https://github.com/GRA0007/crab.fit"
code = "https://github.com/GRA0007/crab.fit"
[integration]
yunohost = ">= 11.1.21"
yunohost = ">= 11.2"
architectures = "all"
multi_instance = true
ldap = false
@ -43,16 +43,22 @@ ram.runtime = "100M"
sha256 = "cc87276d26242a90f32f1462319f0cff35c576f6c438cc20e68601f26701b33b"
[resources.system_user]
[resources.install_dir]
[resources.permissions]
main.url = "/"
api.url = "/api"
api.allowed = "visitors"
api.auth_header = false
api.show_tile = false
[resources.ports]
main.default = 3000
api.default = 3001
[resources.apt]
packages = "postgresql pkg-config libssl-dev"
packages = "postgresql, pkg-config, libssl-dev"
[resources.database]
type = "postgresql"

View file

@ -15,11 +15,6 @@ source /usr/share/yunohost/helpers
#=================================================
ynh_print_info --message="Declaring files to be backed up..."
### N.B. : the following 'ynh_backup' calls are only a *declaration* of what needs
### to be backuped and not an actual copy of any file. The actual backup that
### creates and fill the archive with the files happens in the core after this
### script is called. Hence ynh_backups calls takes basically 0 seconds to run.
#=================================================
# BACKUP THE APP MAIN DIR
#=================================================
@ -53,9 +48,6 @@ ynh_backup --src_path="/etc/systemd/system/${app}-back.service"
#=================================================
ynh_print_info --message="Backing up the POSTGRES database..."
### (However, things like Postgres dumps *do* take some time to run, though the
### copy of the generated dump to the archive still happens later)
ynh_psql_dump_db --database="$db_name" > db.sql
#=================================================

View file

@ -18,6 +18,7 @@ ynh_script_progression --message="Setting up source files..." --weight=1
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$install_dir"
chown -R $app:$app "$install_dir"
chmod -R o-rwx "$install_dir"
@ -49,11 +50,11 @@ ynh_script_progression --message="Adding configuration files..." --weight=1
# Replace the default .env.local with our own
rm $install_dir/frontend/.env.local
ynh_add_config --template="../conf/front.env" --destination="$install_dir/frontend/.env.local"
ynh_add_config --template="front.env" --destination="$install_dir/frontend/.env.local"
chmod 400 "$install_dir/frontend/.env.local"
chown $app:$app "$install_dir/frontend/.env.local"
ynh_add_config --template="../conf/back.env" --destination="$install_dir/api/.env"
ynh_add_config --template="back.env" --destination="$install_dir/api/.env"
chmod 400 "$install_dir/api/.env"
chown $app:$app "$install_dir/api/.env"
@ -61,12 +62,14 @@ chown $app:$app "$install_dir/api/.env"
# BUILD BACKEND
#=================================================
ynh_script_progression --message="Building crabfit backend..." --weight=10
build_backend
#=================================================
# BUILD FRONTEND
#=================================================
ynh_script_progression --message="Building crabfit frontend..." --weight=2
build_frontend
#=================================================

View file

@ -16,8 +16,6 @@ source /usr/share/yunohost/helpers
#=================================================
ynh_script_progression --message="Removing system configurations related to $app..." --weight=1
# This should be a symetric version of what happens in the install script
# Remove the service from the list of services known by YunoHost (added from `yunohost service add`)
ynh_script_progression --message="Removing $app service integration..." --weight=1
yunohost service remove "${app}-back"
@ -28,6 +26,7 @@ ynh_remove_systemd_config --service="${app}-front"
ynh_secure_remove --file="/etc/systemd/system/$app.target"
ynh_remove_nginx_config
ynh_remove_logrotate
ynh_secure_remove --file="/var/log/$app"

View file

@ -19,6 +19,7 @@ ynh_install_nodejs --nodejs_version=$nodejs_version
ynh_use_nodejs
ynh_restore_file --origin_path="$install_dir"
chown -R $app:$app "$install_dir"
chmod -R o-rwx "$install_dir"

View file

@ -9,52 +9,6 @@
source _common.sh
source /usr/share/yunohost/helpers
# Settings are automatically loaded as bash variables
# in every app script context, therefore typically these will exist:
# - $domain
# - $path
# - $language
# - $install_dir
# - $port
# ...
# In the context of upgrade,
# - resources are automatically provisioned / updated / deleted (depending on existing resources)
# - a safety backup is automatically created by the core and will be restored if the upgrade fails
### This helper will compare the version of the currently installed app and the version of the upstream package.
### $upgrade_type can have 2 different values
### - UPGRADE_APP if the upstream app version has changed
### - UPGRADE_PACKAGE if only the YunoHost package has changed
### ynh_check_app_version_changed will stop the upgrade if the app is up to date.
### UPGRADE_APP should be used to upgrade the core app only if there's an upgrade to do.
upgrade_type=$(ynh_check_app_version_changed)
#=================================================
# STANDARD UPGRADE STEPS
#=================================================
# ENSURE DOWNWARD COMPATIBILITY
#=================================================
#ynh_script_progression --message="Ensuring downward compatibility..." --weight=1
#
# N.B. : the followings setting migrations snippets are provided as *EXAMPLES*
# of what you may want to do in some cases (e.g. a setting was not defined on
# some legacy installs and you therefore want to initiaze stuff during upgrade)
#
# If db_name doesn't exist, create it
#if [ -z "$db_name" ]; then
# db_name=$(ynh_sanitize_dbid --db_name=$app)
# ynh_app_setting_set --app=$app --key=db_name --value=$db_name
#fi
# If install_dir doesn't exist, create it
#if [ -z "$install_dir" ]; then
# install_dir=/var/www/$app
# ynh_app_setting_set --app=$app --key=install_dir --value=$install_dir
#fi
#=================================================
# STOP SYSTEMD SERVICE
#=================================================
@ -68,17 +22,13 @@ ynh_systemd_action --service_name="${app}-back" --action="stop" --log_path="/var
#=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE
#=================================================
ynh_script_progression --message="Upgrading source files..." --weight=1
if [ "$upgrade_type" == "UPGRADE_APP" ]
then
ynh_script_progression --message="Upgrading source files..." --weight=1
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$install_dir"
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$install_dir"
chown -R $app:$app "$install_dir"
chmod -R o-rwx "$install_dir"
fi
chown -R $app:$app "$install_dir"
chmod -R o-rwx "$install_dir"
ynh_install_nodejs --nodejs_version=$nodejs_version
ynh_use_nodejs
@ -88,13 +38,11 @@ ynh_use_nodejs
#=================================================
ynh_script_progression --message="Upgrading system configurations related to $app..." --weight=1
# This should be a literal copypasta of what happened in the install's "System configuration" section
# Create a dedicated NGINX config using the conf/nginx.conf template
ynh_add_nginx_config
# Create a dedicated systemd config
ynh_add_config --template="../conf/crabfit.target" --destination="/etc/systemd/system/$app.target"
ynh_add_config --template="crabfit.target" --destination="/etc/systemd/system/$app.target"
ynh_add_systemd_config --service="${app}-front" --template="crabfit-front.service"
ynh_add_systemd_config --service="${app}-back" --template="crabfit-back.service"
@ -110,42 +58,28 @@ ynh_use_logrotate
#=================================================
ynh_script_progression --message="Updating a configuration file..." --weight=1
### Same as during install
###
### The file will automatically be backed-up if it's found to be manually modified (because
### ynh_add_config keeps track of the file's checksum)
# Replace the default .env.local with our own
rm $install_dir/frontend/.env.local
ynh_add_config --template="../conf/front.env" --destination="$install_dir/frontend/.env.local"
ynh_add_config --template="front.env" --destination="$install_dir/frontend/.env.local"
chmod 400 "$install_dir/frontend/.env.local"
chown $app:$app "$install_dir/frontend/.env.local"
ynh_add_config --template="../conf/back.env" --destination="$install_dir/api/.env"
ynh_add_config --template="back.env" --destination="$install_dir/api/.env"
chmod 400 "$install_dir/api/.env"
chown $app:$app "$install_dir/api/.env"
### For more complex cases where you want to replace stuff using regexes,
### you shoud rely on ynh_replace_string (which is basically a wrapper for sed)
### When doing so, you also need to manually call ynh_store_file_checksum
###
### ynh_replace_string --match_string="match_string" --replace_string="replace_string" --target_file="$install_dir/some_config_file"
### ynh_store_file_checksum --file="$install_dir/some_config_file"
#=================================================
# BUILD BACKEND
#=================================================
ynh_script_progression --message="Building crabfit backend..." --weight=10
build_backend
if [ "$upgrade_type" == "UPGRADE_APP" ]
then
#=================================================
# BUILD BACKEND
#=================================================
ynh_script_progression --message="Building crabfit backend..." --weight=10
build_backend
#=================================================
# BUILD FRONTEND
#=================================================
ynh_script_progression --message="Building crabfit frontend..." --weight=2
#=================================================
# BUILD FRONTEND
#=================================================
ynh_script_progression --message="Building crabfit frontend..." --weight=2
build_frontend
fi
build_frontend
#=================================================
# START SYSTEMD SERVICE