Contain all data under ./data/<env> with startup enforcement
This commit is contained in:
+6
-6
@@ -4,13 +4,13 @@ import os
|
||||
import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
import tempfile
|
||||
import time
|
||||
import tomllib
|
||||
from datetime import datetime, timezone
|
||||
from pathlib import Path
|
||||
|
||||
REPO_ROOT = Path(__file__).resolve().parent
|
||||
TEST_DATA_DIR = REPO_ROOT / "data" / "test"
|
||||
OUTPUT_DIR = Path(os.environ.get("SCREENSHOTS_DIR", str(REPO_ROOT.parent / "static" / "pizdetz")))
|
||||
ENV = os.environ.get("SCREENSHOTS_ENV", "test")
|
||||
BASE_URL = os.environ.get("SCREENSHOTS_BASE_URL", "").rstrip("/")
|
||||
@@ -437,15 +437,17 @@ def main():
|
||||
base = LOCAL_BASE if boot else BASE_URL
|
||||
password = BOOT_ADMIN_PASSWORD if boot else ADMIN_PASSWORD
|
||||
out_dir = OUTPUT_DIR / ENV
|
||||
data_dir = None
|
||||
process = None
|
||||
log = None
|
||||
records = []
|
||||
failures = []
|
||||
try:
|
||||
if boot:
|
||||
data_dir = Path(tempfile.mkdtemp(prefix="molodetz-shots-"))
|
||||
process, log = start_server(data_dir)
|
||||
if REPO_ROOT / "data" not in TEST_DATA_DIR.parents:
|
||||
raise RuntimeError(f"refusing test data outside {REPO_ROOT / 'data'}")
|
||||
shutil.rmtree(TEST_DATA_DIR, ignore_errors=True)
|
||||
TEST_DATA_DIR.mkdir(parents=True, exist_ok=True)
|
||||
process, log = start_server(TEST_DATA_DIR)
|
||||
seed_join(base)
|
||||
else:
|
||||
wait_live(base)
|
||||
@@ -464,8 +466,6 @@ def main():
|
||||
finally:
|
||||
if process is not None:
|
||||
stop_server(process, log)
|
||||
if data_dir is not None:
|
||||
shutil.rmtree(data_dir, ignore_errors=True)
|
||||
print(f"wrote {len(records)} screenshots for {ENV} to {out_dir}, hub covers {', '.join(present)}")
|
||||
for failure in failures:
|
||||
print(f"OVERFLOW {failure}")
|
||||
|
||||
Reference in New Issue
Block a user