refactor: remove portal deployment coupling
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
from pathlib import Path
|
||||
|
||||
import yaml
|
||||
|
||||
|
||||
def test_local_compose_uses_the_generic_external_endpoint_contract():
|
||||
root = Path(__file__).resolve().parents[2]
|
||||
compose = yaml.safe_load((root / "compose.yaml").read_text())
|
||||
local = yaml.safe_load((root / "deploy/compose.local.yaml").read_text())
|
||||
|
||||
assert set(compose["services"]) == {"core", "frontend"}
|
||||
assert local["services"]["core"]["environment"]["AUTH_MODE"] == "none"
|
||||
assert local["services"]["core"]["ports"] == ["127.0.0.1:${THOTH_CORE_HTTP_PORT:-8787}:8787"]
|
||||
assert local["services"]["frontend"]["ports"] == ["127.0.0.1:${THOTH_HTTP_PORT:-8080}:8080"]
|
||||
|
||||
environment = compose["services"]["core"]["environment"]
|
||||
for name in ("THT_DWH_REST_URL", "THT_VEC_REST_URL", "THT_OLLAMA_URL", "THT_LLM_URL"):
|
||||
assert name in environment
|
||||
assert {"settings", "pi-state", "workspace-registry", "sessions"} <= set(compose["volumes"])
|
||||
|
||||
|
||||
def test_core_image_prepares_the_writable_pi_profile_before_mounting_config_files():
|
||||
root = Path(__file__).resolve().parents[2]
|
||||
dockerfile = (root / "docker/core.Dockerfile").read_text()
|
||||
|
||||
assert "mkdir -p /home/thoth/.pi/agent" in dockerfile
|
||||
assert "chown -R thoth:thoth /home/thoth/.pi" in dockerfile
|
||||
assert (
|
||||
"cp --remove-destination /app/harness/workspaces/local.yaml "
|
||||
"/app/harness/config/tht.yaml" in dockerfile
|
||||
)
|
||||
assert "ln -sf /app/harness/workspaces/local.yaml /app/harness/config/tht.yaml" not in dockerfile
|
||||
assert "ln -sfn /app/harness/config/tht.yaml /app/harness/workspaces/" not in dockerfile
|
||||
Reference in New Issue
Block a user