Reimplement compose and add tiling windows

This commit is contained in:
2026-03-12 22:03:30 +00:00
parent 79766d279d
commit 6ceff63b71
126 changed files with 5111 additions and 10796 deletions

View File

@@ -26,7 +26,6 @@ APP_CONTAINER="$(name_with_stack "gia")"
ASGI_CONTAINER="$(name_with_stack "asgi_gia")"
UR_CONTAINER="$(name_with_stack "ur_gia")"
SCHED_CONTAINER="$(name_with_stack "scheduling_gia")"
CODEX_WORKER_CONTAINER="$(name_with_stack "codex_worker_gia")"
PROSODY_CONTAINER="$(name_with_stack "prosody_gia")"
REDIS_DATA_DIR="${QUADLET_REDIS_DATA_DIR:-$ROOT_DIR/.podman/gia_redis_data}"
@@ -174,7 +173,6 @@ down_stack() {
rm_if_exists "$ASGI_CONTAINER"
rm_if_exists "$UR_CONTAINER"
rm_if_exists "$SCHED_CONTAINER"
rm_if_exists "$CODEX_WORKER_CONTAINER"
rm_if_exists "$PROSODY_CONTAINER"
}
@@ -269,7 +267,6 @@ start_stack() {
run_worker_container "$ASGI_CONTAINER" "rm -f /var/run/asgi-gia.sock && . /venv/bin/activate && python -m pip install --disable-pip-version-check -q uvicorn && python -m uvicorn app.asgi:application --uds /var/run/asgi-gia.sock --workers 1" 0 1 0.3
run_worker_container "$UR_CONTAINER" ". /venv/bin/activate && python manage.py ur" 1 1 0.5
run_worker_container "$SCHED_CONTAINER" ". /venv/bin/activate && python manage.py scheduling" 1 0 0.3
run_worker_container "$CODEX_WORKER_CONTAINER" ". /venv/bin/activate && python manage.py codex_worker" 1 0 0.4
}
render_units() {
@@ -300,7 +297,7 @@ case "${1:-}" in
require_podman
load_env
podman pod ps --format "table {{.Name}}\t{{.Status}}" | grep -E "^$POD_NAME\b" || true
podman ps --format "table {{.Names}}\t{{.Status}}" | grep -E "^($APP_CONTAINER|$ASGI_CONTAINER|$UR_CONTAINER|$SCHED_CONTAINER|$CODEX_WORKER_CONTAINER|$REDIS_CONTAINER|$SIGNAL_CONTAINER|$PROSODY_CONTAINER)\b" || true
podman ps --format "table {{.Names}}\t{{.Status}}" | grep -E "^($APP_CONTAINER|$ASGI_CONTAINER|$UR_CONTAINER|$SCHED_CONTAINER|$REDIS_CONTAINER|$SIGNAL_CONTAINER|$PROSODY_CONTAINER)\b" || true
;;
logs)
require_podman
@@ -308,7 +305,7 @@ case "${1:-}" in
if is_remote; then
podman logs -f "$APP_CONTAINER"
else
log_targets=("$APP_CONTAINER" "$ASGI_CONTAINER" "$UR_CONTAINER" "$SCHED_CONTAINER" "$CODEX_WORKER_CONTAINER" "$REDIS_CONTAINER" "$SIGNAL_CONTAINER")
log_targets=("$APP_CONTAINER" "$ASGI_CONTAINER" "$UR_CONTAINER" "$SCHED_CONTAINER" "$REDIS_CONTAINER" "$SIGNAL_CONTAINER")
if [[ "$PROSODY_ENABLED" == "true" ]]; then
log_targets+=("$PROSODY_CONTAINER")
fi

View File

@@ -143,7 +143,7 @@ WantedBy=default.target
target_unit = f"""
[Unit]
Description=GIA Stack Target
Wants={unit_prefix}-redis.service {unit_prefix}-signal.service {unit_prefix}-migration.service {unit_prefix}-collectstatic.service {unit_prefix}-app.service {unit_prefix}-asgi.service {unit_prefix}-ur.service {unit_prefix}-scheduling.service {unit_prefix}-codex-worker.service
Wants={unit_prefix}-redis.service {unit_prefix}-signal.service {unit_prefix}-migration.service {unit_prefix}-collectstatic.service {unit_prefix}-app.service {unit_prefix}-asgi.service {unit_prefix}-ur.service {unit_prefix}-scheduling.service
After={unit_prefix}-redis.service {unit_prefix}-signal.service {unit_prefix}-migration.service {unit_prefix}-collectstatic.service
[Install]
@@ -315,16 +315,6 @@ WantedBy={target_ref}
requires=f"{unit_prefix}-collectstatic.service {unit_prefix}-redis.service {unit_prefix}-signal.service",
)
codex_worker_unit = gia_container(
"GIA Codex Worker",
with_stack("codex_worker_gia"),
"sh -c '. /venv/bin/activate && python manage.py codex_worker'",
include_uwsgi=True,
include_whatsapp=False,
after=f"{unit_prefix}-collectstatic.service {unit_prefix}-redis.service {unit_prefix}-signal.service",
requires=f"{unit_prefix}-collectstatic.service {unit_prefix}-redis.service {unit_prefix}-signal.service",
)
write_unit(out_dir / f"{unit_prefix}.pod", pod_unit)
write_unit(out_dir / f"{unit_prefix}.target", target_unit)
write_unit(out_dir / f"{unit_prefix}-redis.container", redis_unit)
@@ -335,7 +325,6 @@ WantedBy={target_ref}
write_unit(out_dir / f"{unit_prefix}-asgi.container", asgi_unit)
write_unit(out_dir / f"{unit_prefix}-ur.container", ur_unit)
write_unit(out_dir / f"{unit_prefix}-scheduling.container", scheduling_unit)
write_unit(out_dir / f"{unit_prefix}-codex-worker.container", codex_worker_unit)
print(f"Wrote Quadlet units to: {out_dir}")
return 0

View File

@@ -45,7 +45,6 @@ CONTAINERS=(
"$(name_with_stack "asgi_gia")"
"$(name_with_stack "ur_gia")"
"$(name_with_stack "scheduling_gia")"
"$(name_with_stack "codex_worker_gia")"
)
declare -A LAST_STATE