De image in het eigen register, gepind op digest

umbreld haalt elke image via de Docker Engine API op, dus een lokaal gebouwde tag
is voor hem onbereikbaar. De image staat nu in het Gitea-register op dezelfde
server als deze store, en anoniem halen werkt daar: dat is dezelfde voorwaarde
als voor het klonen van de store zelf, en de eigenaar sysop staat publiek.

Beide services krijgen tag plus digest. De digest hoort erbij en niet alleen de
tag, want een tag kan opnieuw geduwd worden en dan draait er iets anders dan er
in de repo staat. De toets in tests/test_appstore_vorm.py drukt de pinstatus af
en beide regels staan nu op "gepind"; van Electrum Gate nog geen.

Wat er expres bij staat in commentaar: dit is de digest van één architectuur.
Er is alleen amd64 geduwd, want deze Umbrel is amd64. Voor de officiele store
moet het een multi-arch index-digest zijn met arm64 erin, en dat is buildx met
QEMU. Zonder die notitie leest een gepinde digest als "eis gehaald".

build.sh wijst nu ook naar het register, anders levert een volgende bouw weer een
tag op waar de compose niet naar kijkt. De slotregels van het script zijn geen
suggestie meer maar de resterende stappen: push, digest overnemen, version
verhogen, en anoniem controleren met een uitgelogde pull in dezelfde context als
de login.

Manifest naar 0.0.2, met release notes die zeggen waarom: 0.0.1 was niet te
installeren.

Tests: 32 goed 0 fout, 54 goed 0 fout en 39 goed 0 fout, niets overgeslagen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harmen
2026-08-25 18:31:20 +02:00
co-authored by Claude Opus 5
parent 96565085a5
commit 730621d850
3 changed files with 45 additions and 23 deletions
+15 -15
View File
@@ -28,22 +28,20 @@ services:
PROXY_AUTH_ADD: "false"
relay:
# WERKT NIET ZOALS HET HIER STAAT, en dat is bewust zichtbaar gelaten tot de
# keuze voor een register gemaakt is. Deze tag komt uit
# tools/evolu-relay/build.sh en bestaat alleen in de lokale Docker-opslag van
# de machine waar gebouwd is.
# Gebouwd uit de broncode van Trezor door tools/evolu-relay/build.sh, en
# geduwd naar het Gitea-register op dezelfde server als deze store. Dat moet:
# umbreld haalt élke image op via de Docker Engine API (docker-modem) en niet
# via compose, dus een lokaal gebouwde tag is voor hem onbereikbaar en
# `pull_policy` wordt nooit gelezen. Op 25-08-2026 op het apparaat
# vastgesteld; zie Docs/Referenties/Umbrel-appstore-spec.md.
#
# Op 25-08-2026 bleek bij de eerste installatiepoging dat dat niet genoeg is:
# umbreld haalt élke image op via de Docker Engine API (docker-modem), niet
# via compose, en faalt met "pull access denied" voordat er iets start. Een
# lokaal gebouwde image is dus onbereikbaar, en `pull_policy: never` helpt
# niet, want umbreld leest de compose niet om te pullen. Zie
# Docs/Referenties/Umbrel-appstore-spec.md.
# De digest hoort erbij en niet alleen de tag: een tag kan opnieuw geduwd
# worden en dan draait er iets anders dan hier staat.
#
# Wat hier moet komen: een tag in een register waar de Umbrel anoniem bij kan,
# met @sha256-digest erbij. Zie Docs/Referenties/Images-pinnen.md en het plan
# Umbrelapp.
image: whatsnext/evolu-relay:c03a204
# Let op: dit is de digest van één architectuur (amd64), want er is alleen
# amd64 geduwd. Voor de officiele store moet het een multi-arch index-digest
# zijn met arm64 erin; zie het masterplan Publicatie-Relay.
image: sc.kamenier-hamer.nl/sysop/evolu-relay:c03a204@sha256:2fe1e9e90e5cbc12d5ea6363df03bb132fddec0150283063b9103a09bdbe853a
restart: on-failure
depends_on:
db:
@@ -71,7 +69,9 @@ services:
POSTGRES_GATE_SSL: "false"
quota-manager:
image: whatsnext/evolu-relay:c03a204
# Zelfde image als relay, ander commando. Tag en digest moeten dus gelijk
# blijven aan die hierboven.
image: sc.kamenier-hamer.nl/sysop/evolu-relay:c03a204@sha256:2fe1e9e90e5cbc12d5ea6363df03bb132fddec0150283063b9103a09bdbe853a
restart: on-failure
depends_on:
db: