mirror of
https://github.com/immich-app/immich.git
synced 2025-12-20 17:25:35 +03:00
chore(ml): installable package (#17153)
* app -> immich_ml * fix test ci * omit file name * add new line * add new line
This commit is contained in:
43
machine-learning/immich_ml/__main__.py
Normal file
43
machine-learning/immich_ml/__main__.py
Normal file
@@ -0,0 +1,43 @@
|
||||
import os
|
||||
import signal
|
||||
import subprocess
|
||||
from pathlib import Path
|
||||
|
||||
from .config import log, non_prefixed_settings, settings
|
||||
|
||||
if source_ref := os.getenv("IMMICH_SOURCE_REF"):
|
||||
log.info(f"Initializing Immich ML [{source_ref}]")
|
||||
else:
|
||||
log.info("Initializing Immich ML")
|
||||
|
||||
module_dir = Path(__file__).parent
|
||||
|
||||
try:
|
||||
with subprocess.Popen(
|
||||
[
|
||||
"python",
|
||||
"-m",
|
||||
"gunicorn",
|
||||
"immich_ml.main:app",
|
||||
"-k",
|
||||
"immich_ml.config.CustomUvicornWorker",
|
||||
"-c",
|
||||
module_dir / "gunicorn_conf.py",
|
||||
"-b",
|
||||
f"{non_prefixed_settings.immich_host}:{non_prefixed_settings.immich_port}",
|
||||
"-w",
|
||||
str(settings.workers),
|
||||
"-t",
|
||||
str(settings.worker_timeout),
|
||||
"--log-config-json",
|
||||
module_dir / "log_conf.json",
|
||||
"--keep-alive",
|
||||
str(settings.http_keepalive_timeout_s),
|
||||
"--graceful-timeout",
|
||||
"10",
|
||||
],
|
||||
) as cmd:
|
||||
cmd.wait()
|
||||
except KeyboardInterrupt:
|
||||
cmd.send_signal(signal.SIGINT)
|
||||
exit(cmd.returncode)
|
||||
Reference in New Issue
Block a user