33 lines
1.3 KiB
Bash
33 lines
1.3 KiB
Bash
#!/usr/bin/env bash
|
|
# ============================================================
|
|
# MET Aeroportuário — launcher Linux/macOS
|
|
# Creates a virtual environment if needed, installs
|
|
# dependencies and launches the Streamlit dashboard.
|
|
#
|
|
# Usage (from any directory):
|
|
# ./run/run.sh
|
|
# ./run/run.sh --server.port 8502
|
|
# ============================================================
|
|
set -euo pipefail
|
|
|
|
# Resolve the project root (one level above this script's folder).
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJ_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
cd "$PROJ_DIR"
|
|
|
|
# ── 1. Virtual environment ───────────────────────────────────
|
|
if [ ! -d ".venv" ]; then
|
|
echo "[1/3] Criando ambiente virtual..."
|
|
python3 -m venv .venv
|
|
fi
|
|
|
|
# ── 2. Install dependencies ──────────────────────────────────
|
|
echo "[2/3] Instalando dependencias..."
|
|
# shellcheck source=/dev/null
|
|
source .venv/bin/activate
|
|
pip install -q -r env/requirements.txt
|
|
|
|
# ── 3. Launch dashboard ──────────────────────────────────────
|
|
echo "[3/3] Iniciando dashboard em http://localhost:8501 ..."
|
|
exec streamlit run _apps/dashboard.py "$@"
|