Skip to content

Commit

Permalink
Merge pull request #52 from YunoHost-Apps/master-promotion
Browse files Browse the repository at this point in the history
Upgrade master from testing
  • Loading branch information
ewilly authored Jun 15, 2024
2 parents dfaa878 + a380210 commit 2f63fa9
Show file tree
Hide file tree
Showing 23 changed files with 86 additions and 39 deletions.
2 changes: 1 addition & 1 deletion ALL_README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# All available README files by language

- [Read the README in English](README.md)
- [Lee el README en español](README_es.md)
- [Lea el README en español](README_es.md)
- [Irakurri README euskaraz](README_eu.md)
- [Lire le README en français](README_fr.md)
- [Le o README en galego](README_gl.md)
Expand Down
6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@ Self-hosted photo and video management solution.
- Easy-to-use and friendly interface ;


**Shipped version:** 1.105.1~ynh1
**Shipped version:** 1.106.4~ynh1

## Screenshots

![Screenshot of Immich](./doc/screenshots/immich-screenshots.png)

## :red_circle: Antifeatures

- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability.

## Documentation and resources

- Official app website: <https://immich.app>
Expand Down
6 changes: 5 additions & 1 deletion README_es.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@ Self-hosted photo and video management solution.
- Easy-to-use and friendly interface ;


**Versión actual:** 1.105.1~ynh1
**Versión actual:** 1.106.4~ynh1

## Capturas

![Captura de Immich](./doc/screenshots/immich-screenshots.png)

## :red_circle: funcionalidades no deseadas

- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability.

## Documentaciones y recursos

- Sitio web oficial: <https://immich.app>
Expand Down
6 changes: 5 additions & 1 deletion README_eu.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@ Self-hosted photo and video management solution.
- Easy-to-use and friendly interface ;


**Paketatutako bertsioa:** 1.105.1~ynh1
**Paketatutako bertsioa:** 1.106.4~ynh1

## Pantaila-argazkiak

![Immich(r)en pantaila-argazkia](./doc/screenshots/immich-screenshots.png)

## :red_circle: Ezaugarri zalantzagarriak

- **Alfa softwarea**: Garapenaren hasierako fasean dago. Ezaugarri aldakor edo ezegonkorrak, erroreak eta segurtasun-arazoak izan ditzazke.

## Dokumentazioa eta baliabideak

- Aplikazioaren webgune ofiziala: <https://immich.app>
Expand Down
6 changes: 5 additions & 1 deletion README_fr.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@ Solution d'autohébergement pour a gestion de vos photos et vidéos.
- Interface conviviale et egronomique ;


**Version incluse :** 1.105.1~ynh1
**Version incluse :** 1.106.4~ynh1

## Captures d’écran

![Capture d’écran de Immich](./doc/screenshots/immich-screenshots.png)

## :red_circle: Anti-fonctionnalités

- **Logiciel en version alpha **: Le logiciel est au tout début de son développement. Il pourrait contenir des fonctionnalités changeantes ou instables, des bugs, et des failles de sécurité.

## Documentations et ressources

- Site officiel de l’app : <https://immich.app>
Expand Down
6 changes: 5 additions & 1 deletion README_gl.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@ Self-hosted photo and video management solution.
- Easy-to-use and friendly interface ;


**Versión proporcionada:** 1.105.1~ynh1
**Versión proporcionada:** 1.106.4~ynh1

## Capturas de pantalla

![Captura de pantalla de Immich](./doc/screenshots/immich-screenshots.png)

## :red_circle: Debes considerar

- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability.

## Documentación e recursos

- Web oficial da app: <https://immich.app>
Expand Down
6 changes: 5 additions & 1 deletion README_zh_Hans.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@ Self-hosted photo and video management solution.
- Easy-to-use and friendly interface ;


**分发版本:** 1.105.1~ynh1
**分发版本:** 1.106.4~ynh1

## 截图

![Immich 的截图](./doc/screenshots/immich-screenshots.png)

## :red_circle: 负面特征

- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability.

## 文档与资源

- 官方应用网站: <https://immich.app>
Expand Down
11 changes: 11 additions & 0 deletions conf/env-machine-learning
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
## Ports
IMMICH_HOST=127.0.0.1
IMMICH_PORT=__PORT_MACHINELEARNING__

## Database
DB_HOSTNAME=127.0.0.1
DB_PORT=__DB_PORT__
DB_USERNAME=__APP__
DB_PASSWORD=__DB_PWD__
DB_DATABASE_NAME=__APP__
DB_VECTOR_EXTENSION=pgvector
6 changes: 2 additions & 4 deletions conf/env → conf/env-server
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@ IMMICH_WEB_ROOT=__INSTALL_DIR__/app/www
IMMICH_REVERSE_GEOCODING_ROOT=__INSTALL_DIR__/app/resources

## Ports
SERVER_PORT=__PORT__
MICROSERVICES_PORT=__PORT_MICROSERVICES__
MACHINE_LEARNING_HOST=127.0.0.1
MACHINE_LEARNING_PORT=__PORT_MACHINELEARNING__
IMMICH_HOST=127.0.0.1
IMMICH_PORT=__PORT__
IMMICH_MACHINE_LEARNING_URL=http://127.0.0.1:__PORT_MACHINELEARNING__

## Database
Expand Down
8 changes: 4 additions & 4 deletions conf/immich-machine-learning-start.sh
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
#!/bin/bash

set -a
source "__INSTALL_DIR__/env"
source "__INSTALL_DIR__/env-machine-learning"
set +a

cd "__INSTALL_DIR__/app/machine-learning"
source venv/bin/activate

: "${MACHINE_LEARNING_HOST:=127.0.0.1}"
: "${MACHINE_LEARNING_PORT:=__PORT_MACHINELEARNING__}"
: "${IMMICH_HOST:=127.0.0.1}"
: "${IMMICH_PORT:=__PORT_MACHINELEARNING__}"
: "${MACHINE_LEARNING_WORKERS:=1}"
: "${MACHINE_LEARNING_WORKER_TIMEOUT:=120}"

exec gunicorn app.main:app \
-k app.config.CustomUvicornWorker \
-b "$IMMICH_HOST":"$IMMICH_PORT" \
-w "$MACHINE_LEARNING_WORKERS" \
-b "$MACHINE_LEARNING_HOST":"$MACHINE_LEARNING_PORT" \
-t "$MACHINE_LEARNING_WORKER_TIMEOUT" \
--log-config-json log_conf.json \
--graceful-timeout 0
2 changes: 1 addition & 1 deletion conf/immich-machine-learning.service
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Restart=on-failure
User=__APP__
Group=__APP__
WorkingDirectory=__INSTALL_DIR__/app
EnvironmentFile=__INSTALL_DIR__/env
EnvironmentFile=__INSTALL_DIR__/env-machine-learning
ExecStart=__INSTALL_DIR__/app/machine-learning/start.sh
StandardOutput=append:/var/log/__APP__/__APP__-machine-learning.log
StandardError=inherit
Expand Down
2 changes: 1 addition & 1 deletion conf/immich-microservices.service
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ User=__APP__
Group=__APP__
WorkingDirectory=__INSTALL_DIR__/app
Environment="__YNH_NODE_LOAD_PATH__"
EnvironmentFile=__INSTALL_DIR__/env
EnvironmentFile=__INSTALL_DIR__/env-server
ExecStart=__YNH_NODE__ __INSTALL_DIR__/app/dist/main microservices
StandardOutput=append:/var/log/__APP__/__APP__-microservices.log
StandardError=inherit
Expand Down
2 changes: 1 addition & 1 deletion conf/immich-server-start.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/bash

set -a
. "__INSTALL_DIR__/env"
. "__INSTALL_DIR__/env-server"
set +a

cd "__INSTALL_DIR__/app"
Expand Down
2 changes: 1 addition & 1 deletion conf/immich-server.service
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ User=__APP__
Group=__APP__
WorkingDirectory=__INSTALL_DIR__/app
Environment="__YNH_NODE_LOAD_PATH__"
EnvironmentFile=__INSTALL_DIR__/env
EnvironmentFile=__INSTALL_DIR__/env-server
ExecStart=__YNH_NODE__ __INSTALL_DIR__/app/dist/main __APP__
StandardOutput=append:/var/log/__APP__/__APP__-server.log
StandardError=inherit
Expand Down
3 changes: 2 additions & 1 deletion doc/PRE_INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
As the pyhton version shipped in Debian stable is not always supported, a recent version could be built during the installation process. It may take a while to achieve that (15 to 60 minutes).

This package provides support for the JPEG, PNG, WebP, AVIF (limited to 8-bit depth), TIFF, GIF and SVG (input) image formats.
HEIC/HEIF file format is not supported (see cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600).
**HEIC/HEIF file format is not supported** (see cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600).

Please ensure **your mobile app and server are on the same version**. Otherwise, you won't be able to access the app.
3 changes: 2 additions & 1 deletion doc/PRE_INSTALL_fr.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Comme la version python livrée dans Debian stable n'est pas toujours prise en charge, une version récente pourrait être construite pendant le processus d'installation. Cela peut prendre un certain temps pour y parvenir (15 à 60 minutes).

Ce package supporte les formats d'images suivant : JPEG, PNG, WebP, AVIF (limité à profondeur de couleur de 8 bits), TIFF, GIF et SVG.
Le format HEIC/HEIF n'est pas supporté (cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600).
**Le format HEIC/HEIF n'est pas supporté** (cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600).

Assurez-vous que **l'application mobile et le serveur sont sur la même version**. Dans le cas contraire vous risquez de ne pas pouvoir accèder à l'application.
7 changes: 3 additions & 4 deletions manifest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ name = "Immich"
description.en = "Photo and video backup solution directly from your mobile phone"
description.fr = "Sauvegarde de photos et de vidéos directement depuis votre mobile"

version = "1.105.1~ynh1"
version = "1.106.4~ynh1"

maintainers = ["ewilly"]

Expand Down Expand Up @@ -42,14 +42,13 @@ ram.runtime = "500M"
[resources.sources]

[resources.sources.main]
url = "https://github.com/immich-app/immich/archive/refs/tags/v1.105.1.tar.gz"
sha256 = "1e38ee3329bc3e20c94b8bb5daa30741479bcca7ef7bf7353b458fcb9ddb376d"
url = "https://github.com/immich-app/immich/archive/refs/tags/v1.106.4.tar.gz"
sha256 = "3655cc78287d9a350f51c8913018dbe92d9c6501b1f4d72ce58bd6d9a9308841"

autoupdate.strategy = "latest_github_release"

[resources.ports]
main.default = 3001
microservices.default = 3002
machinelearning.default = 3003

[resources.system_user]
Expand Down
4 changes: 1 addition & 3 deletions scripts/_common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -145,8 +145,6 @@ myynh_install_immich() {
cp -a "$source_dir/server/resources" "$install_dir/app/"
cp -a "$source_dir/server/package.json" "$install_dir/app/"
cp -a "$source_dir/server/package-lock.json" "$install_dir/app/"
cp -a "$source_dir/server/start-microservices.sh" "$install_dir/app/"
cp -a "$source_dir/server/start-server.sh" "$install_dir/app/"
cp -a "$source_dir/LICENSE" "$install_dir/app/"
# Install custom start.sh script
ynh_add_config --template="immich-server-start.sh" --destination="$install_dir/app/start.sh"
Expand Down Expand Up @@ -187,7 +185,7 @@ myynh_install_immich() {
cd "$install_dir/app"
ynh_exec_warn_less "$ynh_npm" install sharp

# Use 127.0.0.1 for microservices
# Use 127.0.0.1
sed -i -e "[email protected](port)@app.listen(port, '127.0.0.1')@g" "$install_dir/app/dist/main.js"

# Install geonames
Expand Down
2 changes: 1 addition & 1 deletion scripts/change_url
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ ynh_change_url_nginx_config
#=================================================
ynh_script_progression --message="Starting a systemd service..." --weight=1

ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log"
ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log"

Expand Down
12 changes: 8 additions & 4 deletions scripts/install
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,13 @@ myynh_install_immich
#=================================================
ynh_script_progression --message="Adding a configuration file..."

ynh_add_config --template="env" --destination="$install_dir/env"
chmod 600 "$install_dir/env"
chown $app:$app "$install_dir/env"
ynh_add_config --template="env-server" --destination="$install_dir/env-server"
chmod 600 "$install_dir/env-server"
chown $app:$app "$install_dir/env-server"

ynh_add_config --template="env-machine-learning" --destination="$install_dir/env-machine-learning"
chmod 600 "$install_dir/env-machine-learning"
chown $app:$app "$install_dir/env-machine-learning"

#=================================================
# SYSTEM CONFIGURATION
Expand Down Expand Up @@ -87,7 +91,7 @@ ynh_add_fail2ban_config --logpath="/var/log/$app/$app-server.log" --failregex="$
#=================================================
ynh_script_progression --message="Starting a systemd service..."

ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log"
ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log"

Expand Down
2 changes: 1 addition & 1 deletion scripts/restore
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ ynh_restore_file --origin_path="/var/log/$app/"
#=================================================
ynh_script_progression --message="Reloading NGINX web server and $app's service..." --weight=1

ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log"
ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log"

Expand Down
14 changes: 9 additions & 5 deletions scripts/upgrade
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,14 @@ ynh_script_progression --message="Updating $app's configuration files..." --weig

db_pwd=$(ynh_app_setting_get --app="$app" --key=psql_pwd)
db_port=$(ynh_app_setting_get --app="$app" --key=psql_port)
ynh_add_config --template="env" --destination="$install_dir/env"
chmod 600 "$install_dir/env"
chown $app:$app "$install_dir/env"

ynh_add_config --template="env-server" --destination="$install_dir/env-server"
chmod 600 "$install_dir/env-server"
chown $app:$app "$install_dir/env-server"

ynh_add_config --template="env-machine-learning" --destination="$install_dir/env-machine-learning"
chmod 600 "$install_dir/env-machine-learning"
chown $app:$app "$install_dir/env-machine-learning"

#=================================================
# REAPPLY SYSTEM CONFIGURATIONS
Expand Down Expand Up @@ -89,8 +94,7 @@ ynh_add_fail2ban_config --logpath="/var/log/$app/$app-server.log" --failregex="$
# START SYSTEMD SERVICE
#=================================================
ynh_script_progression --message="Starting a systemd service..." --weight=1

ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log"
ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log"
ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log"

Expand Down
7 changes: 7 additions & 0 deletions tests.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,10 @@
test_format = 1.0

[default]
# -------------------------------
# Commits to test upgrade from dfaa8785a61758eea4fe558ffe6a3090a9efdfb0
# v1.105.1 with separeted microservices container/process
# -------------------------------
test_upgrade_from.dfaa878.name = "1.105.1~ynh1"
test_upgrade_from.dfaa878.args.domain = "sub.domain.tld"
test_upgrade_from.dfaa878.args.init_main_permission = "visitors"

0 comments on commit 2f63fa9

Please sign in to comment.