44 lines
1.7 KiB
Bash
Executable File
44 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
set -eu
|
|
|
|
cd "$(dirname "$0")/.."
|
|
|
|
export THT_VECTOR_BOOTSTRAP_PASSWORD_SECRET_FILE=${THT_VECTOR_BOOTSTRAP_PASSWORD_SECRET_FILE:-/tmp/vector-bootstrap}
|
|
export THT_VECTOR_MIGRATOR_PASSWORD_SECRET_FILE=${THT_VECTOR_MIGRATOR_PASSWORD_SECRET_FILE:-/tmp/vector-migrator}
|
|
export THT_VECTOR_READER_PASSWORD_SECRET_FILE=${THT_VECTOR_READER_PASSWORD_SECRET_FILE:-/tmp/vector-reader}
|
|
export THT_VECTOR_WRITER_PASSWORD_SECRET_FILE=${THT_VECTOR_WRITER_PASSWORD_SECRET_FILE:-/tmp/vector-writer}
|
|
|
|
local_files="-f compose.yaml -f deploy/compose.local-vector.yaml -f deploy/compose.preprocess.yaml -f deploy/compose.preprocess-local-vector.yaml"
|
|
local_json=$(docker compose $local_files --profile local-vector --profile preprocess config --format json)
|
|
|
|
printf '%s' "$local_json" | python3 -c '
|
|
import json, sys
|
|
|
|
config = json.load(sys.stdin)
|
|
services = config["services"]
|
|
for name in ("preprocess-evidence", "preprocess-dwh"):
|
|
dependency = services[name].get("depends_on", {}).get("vector-migrate")
|
|
assert dependency is not None, f"{name} does not depend on vector-migrate"
|
|
assert dependency["condition"] == "service_completed_successfully", dependency
|
|
'
|
|
|
|
external_json=$(docker compose \
|
|
-f compose.yaml -f deploy/compose.preprocess.yaml \
|
|
--profile preprocess config --format json)
|
|
|
|
printf '%s' "$external_json" | python3 -c '
|
|
import json, sys
|
|
|
|
config = json.load(sys.stdin)
|
|
services = config["services"]
|
|
assert "vector-db" not in services
|
|
assert "vector-migrate" not in services
|
|
assert "vector-reconcile" not in services
|
|
for name in ("preprocess-evidence", "preprocess-dwh"):
|
|
service = services[name]
|
|
assert "depends_on" not in service
|
|
assert not service.get("secrets"), service.get("secrets")
|
|
'
|
|
|
|
echo "preprocess compose config: ok"
|