sparkyfitness: PostgreSQL 15 -> 18, converted by the box (R-463)
gates / gates (push) Successful in 2s
gates / gates (push) Successful in 2s
The ONLY image move in this commit. Written by upgrade-test.py --write-ladder from both venues: - bench LXC 9401 (harness v4): converted 15 -> 18 in 13.3 s, check equal over 94 tables, the seeded check-in weight read back, 10-minute memory watch peak 31.3 % (anon), 0 kills, 0 restarts; - box 9202 (controller 0.283.1, the product's guarded Update, drill catalog): CONVERTED 15 -> 18 in 9.8 s (2 databases, 94 tables, 261 rows equal), done in 58.5 s, PG_VERSION 18, the weight read back through the front door. Undo case on 9202 (after a reinstall at 15): the load failing (adminpack) -> undone in 74.9 s, back on 15, the weight read back. Target 18: SparkyFitness's own upstream compose pairs v0.17.3 with postgres:18.3-alpine at /var/lib/postgresql (09 decision 42's rule). PGDATA is left as it was (/var/lib/postgresql/data/pgdata), now a folder inside the moved volume — the definition both venues tested. Only the header comment changes beside the image and its mount. Evidence: felhom.eu/documentation/audits/pg-last-six-2026-09-30/ Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -9,7 +9,7 @@ subdomain: "sparky"
|
||||
slug: "sparkyfitness"
|
||||
# catalog_since: the date THIS repo last changed this app's pinned images. Any commit that
|
||||
# changes an image: line must set this to the same day (see CLAUDE.md).
|
||||
catalog_since: "2026-07-18"
|
||||
catalog_since: "2026-09-30"
|
||||
|
||||
resources:
|
||||
mem_request: "400M"
|
||||
@@ -140,3 +140,9 @@ i18n:
|
||||
label: 'Application database password'
|
||||
- env_var: BETTER_AUTH_SECRET
|
||||
label: 'Session signing key'
|
||||
|
||||
# update_ladder — the test record: one tested step per line, oldest first (JSON flow mappings,
|
||||
# `09-update-architecture.md` §6.4 part 4). WRITTEN BY scripts/upgrade-test.py, never by hand;
|
||||
# gated by scripts/check-test-record.py. An image: move without a proven entry here is refused.
|
||||
update_ladder:
|
||||
- {"from": {"sparkyfitness-db": "postgres:15-alpine", "sparkyfitness-server": "codewithcj/sparkyfitness_server:v0.17.3", "sparkyfitness-frontend": "codewithcj/sparkyfitness:v0.17.3"}, "to": {"sparkyfitness-db": "postgres:18-alpine", "sparkyfitness-server": "codewithcj/sparkyfitness_server:v0.17.3", "sparkyfitness-frontend": "codewithcj/sparkyfitness:v0.17.3"}, "digest": {"sparkyfitness-db": "sha256:77f585114c32fbca283dc835b0596f4e52b51b4c6662d7810b2f4084f60a1873", "sparkyfitness-frontend": "sha256:46d90e46bd87312fcbbbb05036d99e4cb1c821e928b0516ee727de4c3c90752b", "sparkyfitness-server": "sha256:6aa7d9832324ea403be144a26398a82afbf04abbb4da89f9d04ba61838516b3f"}, "verdict": "proven", "tested_at": "2026-09-30T10:38:51Z", "harness_version": 4, "evidence": "felhom.eu/documentation/audits/pg-last-six-2026-09-30/bench/apps/sparkyfitness/bench/evidence/MV-sparkyfitness/verdict.json", "box_evidence": "felhom.eu/documentation/audits/pg-last-six-2026-09-30/box/sparkyfitness/box-verdict-sparkyfitness.json", "memory_peak_pct": 31.3, "marks": {"files_may_change": false, "needs_person": null, "memory_tight": false}, "memory_basis": "anon", "memory_cgroup_peak_pct": 35.1, "engine_conversion": {"service": "sparkyfitness-db", "engine": "postgres", "from": 15, "to": 18}}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# SparkyFitness - Táplálkozás- és edzéskövető
|
||||
# Domain: ${SUBDOMAIN}.${DOMAIN}
|
||||
# Database: PostgreSQL 15 (dedicated)
|
||||
# Database: PostgreSQL 18 (dedicated; its datadir stays at PGDATA=/var/lib/postgresql/data/pgdata inside the volume)
|
||||
# RAM: ~400M (mem_limit: 1792M) | Pi-compatible: No
|
||||
#
|
||||
# Topology: frontend (nginx SPA, :80) proxies /api,/uploads internally to
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
services:
|
||||
sparkyfitness-db:
|
||||
image: postgres:15-alpine
|
||||
image: postgres:18-alpine
|
||||
container_name: sparkyfitness-db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
@@ -27,7 +27,7 @@ services:
|
||||
- PGDATA=/var/lib/postgresql/data/pgdata
|
||||
- TZ=Europe/Budapest
|
||||
volumes:
|
||||
- sparkyfitness_db_data:/var/lib/postgresql/data
|
||||
- sparkyfitness_db_data:/var/lib/postgresql
|
||||
networks:
|
||||
- sparkyfitness-internal
|
||||
deploy:
|
||||
|
||||
Reference in New Issue
Block a user