Files
homeassistant-dkncloudna/smoke-test/run.sh
T
Sebastien Lavoie 7f8bc63c62 Smoke test
2026-03-30 08:07:20 -04:00

38 lines
958 B
Bash
Executable File

#!/bin/sh
set -eu
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
PROJECT_ROOT=$(CDPATH= cd -- "$SCRIPT_DIR/.." && pwd)
ENV_FILE=${ENV_FILE:-"$PROJECT_ROOT/.env"}
VENV_DIR=${VENV_DIR:-"$SCRIPT_DIR/.venv"}
PYTHON_BIN=${PYTHON_BIN:-python3}
if [ ! -f "$ENV_FILE" ]; then
printf 'Missing env file: %s\n' "$ENV_FILE" >&2
exit 1
fi
if ! command -v "$PYTHON_BIN" >/dev/null 2>&1; then
printf 'Missing Python executable: %s\n' "$PYTHON_BIN" >&2
exit 1
fi
set -a
. "$ENV_FILE"
set +a
if [ -z "${DKN_CLOUD_NA_EMAIL:-}" ] || [ -z "${DKN_CLOUD_NA_PASSWORD:-}" ]; then
printf 'DKN_CLOUD_NA_EMAIL and DKN_CLOUD_NA_PASSWORD must be set in %s\n' "$ENV_FILE" >&2
exit 1
fi
if [ ! -x "$VENV_DIR/bin/python" ]; then
"$PYTHON_BIN" -m venv "$VENV_DIR"
fi
"$VENV_DIR/bin/python" -m pip install -q -r "$SCRIPT_DIR/requirements.txt"
export PYTHONPATH="$PROJECT_ROOT${PYTHONPATH:+:$PYTHONPATH}"
exec "$VENV_DIR/bin/python" "$SCRIPT_DIR/smoke_test.py"