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

Merge pull request #21 from YunoHost-Apps/testing

Testing
This commit is contained in:
eric_G 2024-08-31 15:08:19 +02:00 committed by GitHub
commit 9e91f31144
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 162 additions and 321 deletions

View file

@ -5,4 +5,6 @@
- [Irakurri README euskaraz](README_eu.md)
- [Lire le README en français](README_fr.md)
- [Le o README en galego](README_gl.md)
- [Baca README dalam bahasa bahasa Indonesia](README_id.md)
- [Прочитать README на русский](README_ru.md)
- [阅读中文(简体)的 README](README_zh_Hans.md)

View file

@ -5,7 +5,7 @@ It shall NOT be edited by hand.
# Selfoss for YunoHost
[![Integration level](https://dash.yunohost.org/integration/selfoss.svg)](https://dash.yunohost.org/appci/app/selfoss) ![Working status](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Integration level](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Working status](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Install Selfoss with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
@ -19,7 +19,7 @@ It shall NOT be edited by hand.
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**Shipped version:** 2.19~ynh4
**Shipped version:** 2.19~ynh5
## Screenshots

View file

@ -5,7 +5,7 @@ No se debe editar a mano.
# Selfoss para Yunohost
[![Nivel de integración](https://dash.yunohost.org/integration/selfoss.svg)](https://dash.yunohost.org/appci/app/selfoss) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Nivel de integración](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Instalar Selfoss con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
@ -19,7 +19,7 @@ No se debe editar a mano.
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**Versión actual:** 2.19~ynh4
**Versión actual:** 2.19~ynh5
## Capturas

View file

@ -5,7 +5,7 @@ EZ editatu eskuz.
# Selfoss YunoHost-erako
[![Integrazio maila](https://dash.yunohost.org/integration/selfoss.svg)](https://dash.yunohost.org/appci/app/selfoss) ![Funtzionamendu egoera](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Mantentze egoera](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Integrazio maila](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Funtzionamendu egoera](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Mantentze egoera](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Instalatu Selfoss YunoHost-ekin](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
@ -19,7 +19,7 @@ EZ editatu eskuz.
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**Paketatutako bertsioa:** 2.19~ynh4
**Paketatutako bertsioa:** 2.19~ynh5
## Pantaila-argazkiak

View file

@ -5,7 +5,7 @@ Il NE doit PAS être modifié à la main.
# Selfoss pour YunoHost
[![Niveau dintégration](https://dash.yunohost.org/integration/selfoss.svg)](https://dash.yunohost.org/appci/app/selfoss) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Niveau dintégration](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Installer Selfoss avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
@ -18,7 +18,7 @@ Il NE doit PAS être modifié à la main.
Selfoss est un lecteur RSS polyvalent et une application Web d'agrégation de flux. Il vous permet de suivre facilement les mises à jour de différents sites Web, réseaux sociaux et autres plateformes, le tout en un seul endroit. Il est écrit en PHP, ce qui vous permet de l'exécuter pratiquement n'importe où.
**Version incluse:** 2.19~ynh4
**Version incluse:** 2.19~ynh5
## Captures décran

View file

@ -5,7 +5,7 @@ NON debe editarse manualmente.
# Selfoss para YunoHost
[![Nivel de integración](https://dash.yunohost.org/integration/selfoss.svg)](https://dash.yunohost.org/appci/app/selfoss) ![Estado de funcionamento](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Estado de mantemento](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Nivel de integración](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Estado de funcionamento](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Estado de mantemento](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Instalar Selfoss con YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
@ -19,7 +19,7 @@ NON debe editarse manualmente.
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**Versión proporcionada:** 2.19~ynh4
**Versión proporcionada:** 2.19~ynh5
## Capturas de pantalla

49
README_id.md Normal file
View file

@ -0,0 +1,49 @@
<!--
N.B.: README ini dibuat secara otomatis oleh <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
Ini TIDAK boleh diedit dengan tangan.
-->
# Selfoss untuk YunoHost
[![Tingkat integrasi](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Status kerja](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Status pemeliharaan](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Pasang Selfoss dengan YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
*[Baca README ini dengan bahasa yang lain.](./ALL_README.md)*
> *Paket ini memperbolehkan Anda untuk memasang Selfoss secara cepat dan mudah pada server YunoHost.*
> *Bila Anda tidak mempunyai YunoHost, silakan berkonsultasi dengan [panduan](https://yunohost.org/install) untuk mempelajari bagaimana untuk memasangnya.*
## Ringkasan
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**Versi terkirim:** 2.19~ynh5
## Tangkapan Layar
![Tangkapan Layar pada Selfoss](./doc/screenshots/screenshot1.png)
## Dokumentasi dan sumber daya
- Website aplikasi resmi: <https://selfoss.aditu.de/>
- Dokumentasi pengguna resmi: <https://selfoss.aditu.de/>
- Dokumentasi admin resmi: <https://github.com/fossar/selfoss/wiki>
- Depot kode aplikasi hulu: <https://github.com/fossar/selfoss>
- Gudang YunoHost: <https://apps.yunohost.org/app/selfoss>
- Laporkan bug: <https://github.com/YunoHost-Apps/selfoss_ynh/issues>
## Info developer
Silakan kirim pull request ke [`testing` branch](https://github.com/YunoHost-Apps/selfoss_ynh/tree/testing).
Untuk mencoba branch `testing`, silakan dilanjutkan seperti:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/selfoss_ynh/tree/testing --debug
atau
sudo yunohost app upgrade selfoss -u https://github.com/YunoHost-Apps/selfoss_ynh/tree/testing --debug
```
**Info lebih lanjut mengenai pemaketan aplikasi:** <https://yunohost.org/packaging_apps>

49
README_ru.md Normal file
View file

@ -0,0 +1,49 @@
<!--
Важно: этот README был автоматически сгенерирован <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
Он НЕ ДОЛЖЕН редактироваться вручную.
-->
# Selfoss для YunoHost
[![Уровень интеграции](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![Состояние работы](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![Состояние сопровождения](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![Установите Selfoss с YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
*[Прочтите этот README на других языках.](./ALL_README.md)*
> *Этот пакет позволяет Вам установить Selfoss быстро и просто на YunoHost-сервер.*
> *Если у Вас нет YunoHost, пожалуйста, посмотрите [инструкцию](https://yunohost.org/install), чтобы узнать, как установить его.*
## Обзор
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**Поставляемая версия:** 2.19~ynh5
## Снимки экрана
![Снимок экрана Selfoss](./doc/screenshots/screenshot1.png)
## Документация и ресурсы
- Официальный веб-сайт приложения: <https://selfoss.aditu.de/>
- Официальная документация пользователя: <https://selfoss.aditu.de/>
- Официальная документация администратора: <https://github.com/fossar/selfoss/wiki>
- Репозиторий кода главной ветки приложения: <https://github.com/fossar/selfoss>
- Магазин YunoHost: <https://apps.yunohost.org/app/selfoss>
- Сообщите об ошибке: <https://github.com/YunoHost-Apps/selfoss_ynh/issues>
## Информация для разработчиков
Пришлите Ваш запрос на слияние в [ветку `testing`](https://github.com/YunoHost-Apps/selfoss_ynh/tree/testing).
Чтобы попробовать ветку `testing`, пожалуйста, сделайте что-то вроде этого:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/selfoss_ynh/tree/testing --debug
или
sudo yunohost app upgrade selfoss -u https://github.com/YunoHost-Apps/selfoss_ynh/tree/testing --debug
```
**Больше информации о пакетировании приложений:** <https://yunohost.org/packaging_apps>

View file

@ -5,7 +5,7 @@
# YunoHost 上的 Selfoss
[![集成程度](https://dash.yunohost.org/integration/selfoss.svg)](https://dash.yunohost.org/appci/app/selfoss) ![工作状态](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![集成程度](https://dash.yunohost.org/integration/selfoss.svg)](https://ci-apps.yunohost.org/ci/apps/selfoss/) ![工作状态](https://ci-apps.yunohost.org/ci/badges/selfoss.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/selfoss.maintain.svg)
[![使用 YunoHost 安装 Selfoss](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=selfoss)
@ -19,7 +19,7 @@
Selfoss is a multipurpose RSS reader and feed aggregation web application. It allows you to easily follow updates from different web sites, social networks and other platforms, all in single place. It is written in PHP, allowing you to run it basically anywhere.
**分发版本:** 2.19~ynh4
**分发版本:** 2.19~ynh5
## 截图

View file

@ -1 +1 @@
*/15 * * * * __APP__ /usr/bin/php__PHPVERSION__ __INSTALL_DIR__/cliupdate.php >> __INSTALL_DIR__/data/logs/cliupdate.log
*/15 * * * * __APP__ /usr/bin/php__PHP_VERSION__ __INSTALL_DIR__/cliupdate.php >> __INSTALL_DIR__/data/logs/cliupdate.log

View file

@ -22,7 +22,7 @@ location __PATH__/ {
# Regex to match PHP files
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass unix:/var/run/php/php__PHPVERSION__-fpm-__NAME__.sock;
fastcgi_pass unix:/var/run/php/php__PHP_VERSION__-fpm-__APP__.sock;
fastcgi_index index.php;
include fastcgi_params;

View file

@ -1,30 +0,0 @@
version = "1.0"
[main]
name = "Selfoss configuration"
[main.php_fpm_config]
name = "PHP-FPM configuration"
[main.php_fpm_config.fpm_footprint]
ask = "Memory footprint"
type = "select"
choices.low = "Low, <= 20Mb per pool"
choices.medium = "Medium, between 20Mb and 40Mb per pool"
choices.high = "High, > 40Mb per pool"
choices.specific = "Use specific value"
default = "low"
[main.php_fpm_config.fpm_free_footprint]
visible = "fpm_footprint == 'specific'"
ask = "Memory footprint of the service?"
type = "number"
default = "0"
help = "Free field to specify exactly the footprint in Mb if you don't want to use one of the three previous values."
[main.php_fpm_config.fpm_usage]
ask = "Expected usage"
type = "select"
choices = ["low", "medium", "high"]
default = "low"
help = "low: Personal usage, behind the SSO. No RAM footprint when not used, but the impact on the processor can be high if many users are using the service.<br>medium: Low usage, few people or/and publicly accessible. Low RAM footprint, medium processor footprint when used.<br>high: High usage, frequently visited website. High RAM footprint, but lower on processor usage and quickly responding."

View file

@ -5,7 +5,7 @@ name = "Selfoss"
description.en = "Multipurpose RSS reader"
description.fr = "Lecteur RSS polyvalent"
version = "2.19~ynh4"
version = "2.19~ynh5"
maintainers = []
@ -17,7 +17,8 @@ userdoc = "https://selfoss.aditu.de/"
code = "https://github.com/fossar/selfoss"
[integration]
yunohost = ">= 11.2"
yunohost = ">= 11.2.29"
helpers_version = "2.1"
architectures = "all"
multi_instance = true
ldap = false
@ -47,6 +48,7 @@ ram.runtime = "50M"
[resources.system_user]
[resources.install_dir]
group = "www-data:r-x"
[resources.permissions]
main.url = "/"

View file

@ -1,17 +1,5 @@
#!/bin/bash
#=================================================
# COMMON VARIABLES
#=================================================
#=================================================
# PERSONAL HELPERS
#=================================================
#=================================================
# EXPERIMENTAL HELPERS
#=================================================
#=================================================
# FUTURE OFFICIAL HELPERS
# COMMON VARIABLES AND CUSTOM HELPERS
#=================================================

View file

@ -1,46 +1,28 @@
#!/bin/bash
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts
source ../settings/scripts/_common.sh
source /usr/share/yunohost/helpers
#=================================================
# DECLARE DATA AND CONF FILES TO BACKUP
#=================================================
ynh_print_info --message="Declaring files to be backed up..."
ynh_print_info "Declaring files to be backed up..."
#=================================================
# BACKUP THE APP MAIN DIR
#=================================================
ynh_backup --src_path="$install_dir"
ynh_backup "$install_dir"
#=================================================
# BACKUP THE NGINX CONFIGURATION
#=================================================
ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"
#=================================================
# BACKUP THE PHP-FPM CONFIGURATION
#=================================================
ynh_backup "/etc/php/$php_version/fpm/pool.d/$app.conf"
ynh_backup --src_path="/etc/php/$phpversion/fpm/pool.d/$app.conf"
#=================================================
# BACKUP A CRON FILE
#=================================================
ynh_backup --src_path="/etc/cron.d/$app"
ynh_backup "/etc/cron.d/$app"
#=================================================
# END OF SCRIPT
#=================================================
ynh_print_info --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)."
ynh_print_info "Backup script completed for $app. (YunoHost will then actually copy those files to the archive)."

View file

@ -1,23 +1,17 @@
#!/bin/bash
#=================================================
# GENERIC STARTING
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
source /usr/share/yunohost/helpers
#=================================================
# MODIFY URL IN NGINX CONF
#=================================================
ynh_script_progression --message="Updating NGINX web server configuration..." --weight=1
ynh_script_progression "Updating NGINX web server configuration..."
ynh_change_url_nginx_config
ynh_config_change_url_nginx
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Change of URL completed for $app" --last
ynh_script_progression "Change of URL completed for $app"

View file

@ -1,95 +0,0 @@
#!/bin/bash
#=================================================
# GENERIC STARTING
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
source /usr/share/yunohost/helpers
ynh_abort_if_errors
#=================================================
# RETRIEVE ARGUMENTS
#=================================================
phpversion=$(ynh_app_setting_get --app=$app --key=phpversion)
current_fpm_footprint=$(ynh_app_setting_get --app=$app --key=fpm_footprint)
#=================================================
# SPECIFIC GETTERS FOR TOML SHORT KEY
#=================================================
get__fpm_footprint() {
# Free footprint value for php-fpm
# Check if current_fpm_footprint is an integer
if [ "$current_fpm_footprint" -eq "$current_fpm_footprint" ] 2> /dev/null
then
echo "specific"
else
echo "$current_fpm_footprint"
fi
}
get__free_footprint() {
# Free footprint value for php-fpm
# Check if current_fpm_footprint is an integer
if [ "$current_fpm_footprint" -eq "$current_fpm_footprint" ] 2> /dev/null
then
# If current_fpm_footprint is an integer, that's a numeric value for the footprint
echo "$current_fpm_footprint"
else
echo "0"
fi
}
#=================================================
# SPECIFIC SETTERS FOR TOML SHORT KEYS
#=================================================
set__fpm_footprint() {
if [ "$fpm_footprint" != "specific" ]
then
ynh_app_setting_set --app=$app --key=fpm_footprint --value="$fpm_footprint"
fi
}
set__fpm_free_footprint() {
if [ "$fpm_footprint" = "specific" ]
then
ynh_app_setting_set --app=$app --key=fpm_footprint --value="$fpm_free_footprint"
fi
}
#=================================================
# GENERIC FINALIZATION
#=================================================
ynh_app_config_validate() {
_ynh_app_config_validate
if [ "${changed[fpm_usage]}" == "true" ] || [ "${changed[fpm_footprint]}" == "true" ] || [ "${changed[fpm_free_footprint]}" == "true" ]; then
# If fpm_footprint is set to 'specific', use $fpm_free_footprint value.
if [ "$fpm_footprint" = "specific" ]
then
fpm_footprint=$fpm_free_footprint
fi
if [ "$fpm_footprint" == "0" ]
then
ynh_print_err --message="When selecting 'specific', you have to set a footprint value into the field below."
exit 0
fi
fi
}
ynh_app_config_apply() {
_ynh_app_config_apply
ynh_add_fpm_config --phpversion=$phpversion --usage=$fpm_usage --footprint=$fpm_footprint
}
ynh_app_config_run $1

View file

@ -1,70 +1,42 @@
#!/bin/bash
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
source /usr/share/yunohost/helpers
fpm_footprint="low"
fpm_free_footprint=0
fpm_usage="low"
#=================================================
# STORE SETTINGS FROM MANIFEST
#=================================================
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
#=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE
#=================================================
ynh_script_progression --message="Setting up source files..." --weight=3
ynh_script_progression "Setting up source files..."
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$install_dir"
chmod -R o-rwx "$install_dir"
chown -R $app:www-data "$install_dir"
chmod g+w $install_dir/data/cache $install_dir/data/favicons $install_dir/data/logs $install_dir/data/thumbnails $install_dir/data/sqlite $install_dir/public
#=================================================
# PHP-FPM CONFIGURATION
#=================================================
ynh_script_progression --message="Configuring PHP-FPM..." --weight=1
ynh_script_progression "Configuring PHP-FPM..."
# Create a dedicated PHP-FPM config
ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint
ynh_config_add_phpfpm
# Create a dedicated NGINX config
ynh_add_nginx_config
ynh_config_add_nginx
#=================================================
# ADD A CONFIGURATION
#=================================================
ynh_script_progression --message="Adding a configuration file..." --weight=1
ynh_script_progression "Adding $app's configuration..."
ynh_add_config --template="config.ini" --destination="$install_dir/config.ini"
chmod 400 "$install_dir/config.ini"
chown $app:$app "$install_dir/config.ini"
ynh_config_add --template="config.ini" --destination="$install_dir/config.ini"
#=================================================
# SETUP A CRON
#=================================================
ynh_script_progression --message="Setuping a cron..." --weight=1
ynh_script_progression "Setuping a cron..."
ynh_add_config --template="cron" --destination="/etc/cron.d/$app"
chown root: "/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"
ynh_config_add --template="cron" --destination="/etc/cron.d/$app"
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Installation of $app completed" --last
ynh_script_progression "Installation of $app completed"

View file

@ -1,30 +1,21 @@
#!/bin/bash
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
source /usr/share/yunohost/helpers
#=================================================
# REMOVE NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1
ynh_script_progression "Removing NGINX web server configuration..."
# Remove the dedicated NGINX config
ynh_remove_nginx_config
ynh_config_remove_nginx
# Remove the dedicated PHP-FPM config
ynh_remove_fpm_config
ynh_config_remove_phpfpm
# Remove a cron file
ynh_secure_remove --file="/etc/cron.d/$app"
ynh_safe_rm "/etc/cron.d/$app"
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Removal of $app completed" --last
ynh_script_progression "Removal of $app completed"

View file

@ -1,50 +1,36 @@
#!/bin/bash
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts
source ../settings/scripts/_common.sh
source /usr/share/yunohost/helpers
#=================================================
# RESTORE THE APP MAIN DIR
#=================================================
ynh_script_progression --message="Restoring the app main directory..." --weight=1
ynh_script_progression "Restoring the app main directory..."
ynh_restore_file --origin_path="$install_dir"
chmod -R o-rwx "$install_dir"
chown -R $app:www-data "$install_dir"
ynh_restore "$install_dir"
#=================================================
# RESTORE THE PHP-FPM CONFIGURATION
#=================================================
ynh_script_progression --message="Restoring the PHP-FPM configuration..." --weight=1
ynh_script_progression "Restoring the PHP-FPM configuration..."
ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf"
ynh_restore "/etc/php/$php_version/fpm/pool.d/$app.conf"
ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_restore_file --origin_path="/etc/cron.d/$app"
chown root: "/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"
ynh_restore "/etc/cron.d/$app"
#=================================================
# GENERIC FINALIZATION
#=================================================
# RELOAD NGINX AND PHP-FPM
#=================================================
ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1
ynh_script_progression "Reloading NGINX web server and PHP-FPM..."
ynh_systemd_action --service_name=php$phpversion-fpm --action=reload
ynh_systemd_action --service_name=nginx --action=reload
ynh_systemctl --service=php$php_version-fpm --action=reload
ynh_systemctl --service=nginx --action=reload
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Restoration completed for $app" --last
ynh_script_progression "Restoration completed for $app"

View file

@ -1,91 +1,42 @@
#!/bin/bash
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
source /usr/share/yunohost/helpers
#=================================================
# CHECK VERSION
#=================================================
upgrade_type=$(ynh_check_app_version_changed)
#=================================================
# 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 "Upgrading source files..."
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="data"
fi
chmod -R o-rwx "$install_dir"
chown -R $app:www-data "$install_dir"
chmod g+w $install_dir/data/cache $install_dir/data/favicons $install_dir/data/logs $install_dir/data/thumbnails $install_dir/data/sqlite $install_dir/public
#=================================================
# PHP-FPM CONFIGURATION
#=================================================
ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=1
ynh_script_progression "Upgrading PHP-FPM configuration..."
# Create a dedicated PHP-FPM config
ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint
ynh_config_add_phpfpm
# Create a dedicated NGINX config
ynh_add_nginx_config
ynh_config_add_nginx
#=================================================
# UPDATE A CONFIG FILE
#=================================================
ynh_script_progression --message="Updating a configuration file..." --weight=1
ynh_script_progression "Updating configuration..."
ynh_add_config --template="config.ini" --destination="$install_dir/config.ini"
chmod 400 "$install_dir/config.ini"
chown $app:$app "$install_dir/config.ini"
ynh_config_add --template="config.ini" --destination="$install_dir/config.ini"
#=================================================
# SETUP A CRON
#=================================================
ynh_script_progression --message="Setuping a cron..." --weight=1
ynh_script_progression "Setuping a cron..."
ynh_add_config --template="cron" --destination="/etc/cron.d/$app"
chown root: "/etc/cron.d/$app"
chmod 644 "/etc/cron.d/$app"
ynh_config_add --template="cron" --destination="/etc/cron.d/$app"
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Upgrade of $app completed" --last
ynh_script_progression "Upgrade of $app completed"