Files
mikromon/docker/entrypoint.sh
Mateusz Gruszczyński e8f6c4c609 push
2026-03-05 15:53:33 +01:00

33 lines
668 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
mkdir -p instance
export FLASK_APP=app.py
if [[ "${DATABASE_URL:-}" != "" ]]; then
echo "[mikromon] waiting for database"
python - <<'PY'
import os, time
from sqlalchemy import create_engine
url = os.environ.get("DATABASE_URL")
engine = create_engine(url, pool_pre_ping=True)
for i in range(60):
try:
with engine.connect() as c:
c.exec_driver_sql("SELECT 1")
break
except Exception:
time.sleep(1)
else:
raise SystemExit("DB not reachable")
PY
fi
echo "[mikromon] applying migrations"
MIKROMON_MIGRATING=1 flask db upgrade
echo "[mikromon] starting app"
exec python app.py