1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/monica_ynh.git synced 2024-09-03 19:46:23 +02:00

Merge branch 'testing' into pr/81

This commit is contained in:
Éric Gaspar 2024-05-11 12:28:56 +02:00
commit 50c932422e
16 changed files with 48 additions and 102 deletions

View file

@ -19,7 +19,7 @@ It shall NOT be edited by hand.
Monica is an open-source web application to organize the interactions with your loved ones. I call it a PRM, or Personal Relationship Management. Think of it as a [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (a popular tool used by sales teams in the corporate world) for your friends or family.
**Shipped version:** 4.0.0~ynh3
**Shipped version:** 4.1.2~ynh1
## Screenshots

View file

@ -19,7 +19,7 @@ EZ editatu eskuz.
Monica is an open-source web application to organize the interactions with your loved ones. I call it a PRM, or Personal Relationship Management. Think of it as a [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (a popular tool used by sales teams in the corporate world) for your friends or family.
**Paketatutako bertsioa:** 4.0.0~ynh3
**Paketatutako bertsioa:** 4.1.2~ynh1
## Pantaila-argazkiak

View file

@ -16,10 +16,9 @@ Il NE doit PAS être modifié à la main.
## Vue densemble
Monica is an open-source web application to organize the interactions with your loved ones. I call it a PRM, or Personal Relationship Management. Think of it as a [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (a popular tool used by sales teams in the corporate world) for your friends or family.
Monica est une application web open source pour organiser les interactions avec vos proches. J'appelle cela Gestion des Relations Personnelles. Considérez-le comme un [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (un outil populaire utilisé par les équipes commerciales du monde de l'entreprise) pour vos amis ou votre famille.
**Version incluse:** 4.0.0~ynh3
**Version incluse:** 4.1.2~ynh1
## Captures décran

View file

@ -19,7 +19,7 @@ NON debe editarse manualmente.
Monica is an open-source web application to organize the interactions with your loved ones. I call it a PRM, or Personal Relationship Management. Think of it as a [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (a popular tool used by sales teams in the corporate world) for your friends or family.
**Versión proporcionada:** 4.0.0~ynh3
**Versión proporcionada:** 4.1.2~ynh1
## Capturas de pantalla

View file

@ -3,7 +3,7 @@
请勿手动编辑。
-->
# YunoHost 的 Monica
# YunoHost 的 Monica
[![集成程度](https://dash.yunohost.org/integration/monica.svg)](https://dash.yunohost.org/appci/app/monica) ![工作状态](https://ci-apps.yunohost.org/ci/badges/monica.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/monica.maintain.svg)
@ -19,7 +19,7 @@
Monica is an open-source web application to organize the interactions with your loved ones. I call it a PRM, or Personal Relationship Management. Think of it as a [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (a popular tool used by sales teams in the corporate world) for your friends or family.
**分发版本:** 4.0.0~ynh3
**分发版本:** 4.1.2~ynh1
## 截图

View file

@ -1,29 +0,0 @@
;; Test complet
; Manifest
domain="domain.tld"
path="/path"
is_public=1
language="fr"
admin="john"
password="1Strong-Password"
; Checks
pkg_linter=1
setup_sub_dir=1
setup_root=1
setup_nourl=0
setup_private=1
setup_public=1
upgrade=1
# 3.7.0~ynh2
upgrade=1 from_commit=272460bc0f447d859dc4058f4977119892fa7a9e
backup_restore=1
multi_instance=1
port_already_use=0
change_url=0
;;; Options
Email=
Notification=none
;;; Upgrade options
; commit=272460bc0f447d859dc4058f4977119892fa7a9e
name=Merge pull request #64
manifest_arg=domain=DOMAIN&path=PATH&is_public=1&language=fr&admin=USER&password=pass&port=666&

View file

@ -1,4 +0,0 @@
; Additional php.ini defines, specific to this pool of workers.
php_admin_value[upload_max_filesize] = 50M
php_admin_value[post_max_size] = 50M

3
doc/ADMIN_fr.md Normal file
View file

@ -0,0 +1,3 @@
* Vous pouvez vous connecter en utilisant l'adresse e-mail de l'utilisateur choisi lors de l'installation et le mot de passe fourni lors de l'installation
* Les nouvelles inscriptions sont désactivées, vous pouvez ouvrir le registre pour tous en changeant la valeur **APP_DISABLE_SIGNUP** en **false** dans **.env**.
* Il n'y a **pas d'interface d'administration** dans l'application Monica actuellement.

1
doc/DESCRIPTION_fr.md Normal file
View file

@ -0,0 +1 @@
Monica est une application web open source pour organiser les interactions avec vos proches. J'appelle cela Gestion des Relations Personnelles. Considérez-le comme un [CRM](https://en.wikipedia.org/wiki/Customer_relationship_management) (un outil populaire utilisé par les équipes commerciales du monde de l'entreprise) pour vos amis ou votre famille.

View file

@ -5,7 +5,7 @@ name = "Monica"
description.en = "Personal Relationship Manager"
description.fr = "Gestionnaire de relations personnelles"
version = "4.0.0~ynh3"
version = "4.1.2~ynh1"
maintainers = ["Sebastian Gumprich"]
@ -18,8 +18,11 @@ code = "https://github.com/monicahq/monica"
yunohost = ">= 11.2"
architectures = "all"
multi_instance = true
ldap = false
sso = false
disk = "50M"
ram.build = "50M"
ram.runtime = "50M"
@ -54,8 +57,8 @@ ram.runtime = "50M"
[resources.sources]
[resources.sources.main]
url = "https://github.com/monicahq/monica/archive/v4.0.0.zip"
sha256 = "5b108525a2f5fedc0a2bb82a49d3de47d087b33082fb21e64f874d387304ed9f"
url = "https://github.com/monicahq/monica/archive/v4.1.2.zip"
sha256 = "792bb0af6bfb33abd3c4694eed309cf6c33001e589328c418bb1231e063d60d6"
autoupdate.strategy = "latest_github_tag"
[resources.system_user]
@ -67,7 +70,7 @@ ram.runtime = "50M"
main.url = "/"
[resources.apt]
packages = "mariadb-server, php8.1-bcmath, php8.1-cli, php8.1-curl, php8.1-dom, php8.1-gd, php8.1-gmp, php8.1-iconv, php8.1-intl, php8.1-mbstring, php8.1-mysql, php8.1-mysqli, php8.1-opcache, php8.1-redis, php8.1-xml, php8.1-zip"
packages = "mariadb-server, php8.2-bcmath, php8.2-cli, php8.2-curl, php8.2-dom, php8.2-gd, php8.2-gmp, php8.2-iconv, php8.2-intl, php8.2-mbstring, php8.2-mysql, php8.2-mysqli, php8.2-opcache, php8.2-redis, php8.2-xml, php8.2-zip"
extras.yarn.repo = "deb https://dl.yarnpkg.com/debian/ stable main"
extras.yarn.key = "https://dl.yarnpkg.com/debian/pubkey.gpg"

View file

@ -4,11 +4,11 @@
# COMMON VARIABLES
#=================================================
phpversion="8.1"
phpversion="8.2"
YNH_COMPOSER_VERSION="2.5.1"
YNH_COMPOSER_VERSION="2.6.5"
NODEJS_VERSION=18
NODEJS_VERSION=20
#=================================================
# PERSONAL HELPERS

View file

@ -15,18 +15,12 @@ source /usr/share/yunohost/helpers
random_key=$(ynh_string_random --length=32)
email=$(ynh_user_get_info --username=$admin --key="mail")
fpm_footprint="low"
fpm_free_footprint=0
fpm_usage="low"
#=================================================
# STORE SETTINGS FROM MANIFEST
#=================================================
ynh_app_setting_set --app=$app --key=random_key --value=$random_key
ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint
ynh_app_setting_set --app=$app --key=fpm_free_footprint --value=$fpm_free_footprint
ynh_app_setting_set --app=$app --key=fpm_usage --value=$fpm_usage
#=================================================
# STANDARD MODIFICATIONS
@ -53,7 +47,7 @@ chown -R $app:www-data "$install_dir"
#=================================================
ynh_script_progression --message="Configuring PHP-FPM..." --weight=1
ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint
ynh_add_fpm_config
# Create a dedicated NGINX config
ynh_add_nginx_config
@ -63,9 +57,9 @@ ynh_add_nginx_config
#=================================================
# INSTALL COMPOSER DEPENDENCIES
#=================================================
ynh_script_progression --message="Installing composer dependencies..."
ynh_script_progression --message="Installing Composer dependencies..."
ynh_exec_warn_less ynh_install_composer --phpversion="$phpversion" --workdir="$install_dir"
ynh_exec_warn_less ynh_install_composer --phpversion="$phpversion" --composerversion="$YNH_COMPOSER_VERSION" --workdir="$install_dir"
chmod 750 "$install_dir"
chmod -R o-rwx "$install_dir"
@ -91,11 +85,11 @@ ynh_replace_string --target_file="$install_dir/package.json" --match_string="php
#=================================================
# DEPLOY
#=================================================
ynh_script_progression --message="Deploying..."
ynh_script_progression --message="Deploying $app..."
pushd "$install_dir"
ynh_use_nodejs
ynh_exec_warn_less ynh_exec_as $app $ynh_node_load_PATH yarn install
ynh_exec_warn_less ynh_exec_as $app $ynh_node_load_PATH yarn install --production
ynh_exec_warn_less ynh_exec_as $app $ynh_node_load_PATH yarn run production
ynh_exec_warn_less ynh_exec_as $app php$phpversion artisan setup:production --force --email=$email --password=$password
ynh_exec_warn_less ynh_exec_as $app php$phpversion artisan passport:client --password -n > key.txt
@ -115,6 +109,13 @@ ynh_store_file_checksum --file="$install_dir/.env"
chmod 400 "$install_dir/.env"
chown $app:$app "$install_dir/.env"
#==================================================
# FIX PHP VERSION
#==================================================
ynh_script_progression --message="Fixing PHP version in package.json..." --weight=1
ynh_replace_string --target_file="$install_dir/package.json" --match_string="php artisan lang:generate -vvv" --replace_string="php$phpversion artisan lang:generate -vvv"
#=================================================
# INSTALL THE CRON FILE
#=================================================

View file

@ -12,7 +12,7 @@ source /usr/share/yunohost/helpers
#=================================================
# REMOVE NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1
ynh_script_progression --message="Removing system configurations related to $app..." --weight=1
# Remove the dedicated NGINX config
ynh_remove_nginx_config

View file

@ -40,7 +40,7 @@ ynh_install_nodejs --nodejs_version=$NODEJS_VERSION
#=================================================
# RESTORE THE PHP-FPM CONFIGURATION
#=================================================
ynh_script_progression --message="Restoring the PHP-FPM configuration..."
ynh_script_progression --message="Restoring system configurations related to $app..." --weight=1
ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf"

View file

@ -15,48 +15,13 @@ source /usr/share/yunohost/helpers
email=$(ynh_user_get_info --username=$admin --key=mail)
#=================================================
# CHECK VERSION
#=================================================
upgrade_type=$(ynh_check_app_version_changed)
#=================================================
# STANDARD UPGRADE STEPS
#=================================================
# ENSURE DOWNWARD COMPATIBILITY
#=================================================
ynh_script_progression --message="Ensuring downward compatibility..." --weight=1
# If fpm_footprint doesn't exist, create it
if [ -z "${fpm_footprint:-}" ]; then
fpm_footprint=low
ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint
fi
# If fpm_free_footprint doesn't exist, create it
if [ -z "${fpm_free_footprint:-}" ]; then
fpm_free_footprint=0
ynh_app_setting_set --app=$app --key=fpm_free_footprint --value=$fpm_free_footprint
fi
# If fpm_usage doesn't exist, create it
if [ -z "${fpm_usage:-}" ]; then
fpm_usage=low
ynh_app_setting_set --app=$app --key=fpm_usage --value=$fpm_usage
fi
#=================================================
# 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" --keep=".env"
fi
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$install_dir" --keep=".env"
chmod -R o-rwx "$install_dir"
chown -R $app:www-data "$install_dir"
@ -71,10 +36,10 @@ ynh_install_nodejs --nodejs_version=$NODEJS_VERSION
#=================================================
# PHP-FPM CONFIGURATION
#=================================================
ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=1
ynh_script_progression --message="Updating $app's configuration files..." --weight=1
# Create a dedicated PHP-FPM config
ynh_add_fpm_config --phpversion=$phpversion --usage=$fpm_usage --footprint=$fpm_footprint
ynh_add_fpm_config
# Create a dedicated NGINX config
ynh_add_nginx_config
@ -156,12 +121,19 @@ ynh_store_file_checksum --file="$install_dir/.env"
chmod 400 "$install_dir/.env"
chown $app:$app "$install_dir/.env"
#==================================================
# FIX PHP VERSION
#==================================================
ynh_script_progression --message="Fixing PHP version in package.json..." --weight=1
ynh_replace_string --target_file="$install_dir/package.json" --match_string="php artisan lang:generate -vvv" --replace_string="php$phpversion artisan lang:generate -vvv"
#=================================================
# INSTALL THE CRON FILE
#=================================================
ynh_script_progression --message="Setuping a cron..." --weight=1
ynh_add_config --template="../conf/cron" --destination="/etc/cron.d/$app"
ynh_add_config --template="cron" --destination="/etc/cron.d/$app"
chown root: "/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"