a34381fd
backup: the image takes its fixes from the distro too
a73x 2026-09-05 18:33
Commit message
RETRO.md
| Old | New | ||
|---|---|---|---|
| @@ -87,3 +87,8 @@ One line per push to `main`: what slowed the work down. Enforced by | |||
| 87 | the distro, so a build is only as current as whenever upstream last rebuilt; | 87 | the distro, so a build is only as current as whenever upstream last rebuilt; |
| 88 | taking the upgrade at build time is the difference between shipping and | 88 | taking the upgrade at build time is the difference between shipping and |
| 89 | waiting on someone else's release cadence. | 89 | waiting on someone else's release cadence. |
| 90 | - Backup image: the same base-tag lag as the site image, found one stage later | ||
| 91 | and only on prod. BACKUPS=1 is a prod-only setting, so the new BACKUP_IMAGE | ||
| 92 | requirement had never been exercised — stg proved nine stages and still could | ||
| 93 | not have caught this. A plane-specific config gate is only proven on the plane | ||
| 94 | that sets it. | ||
deploy/server/backup.Dockerfile
| Old | New | ||
|---|---|---|---|
| @@ -13,7 +13,10 @@ | |||
| 13 | # quietly pass anything found in it. Bump when this line goes EOL too. | 13 | # quietly pass anything found in it. Bump when this line goes EOL too. |
| 14 | FROM docker.io/library/alpine:3.24 | 14 | FROM docker.io/library/alpine:3.24 |
| 15 | 15 | ||
| 16 | RUN apk add --no-cache sqlite | 16 | # The base tag lags Alpine's own package repo, so an image built while an |
| 17 | # advisory is open carries the vulnerable package and scan-image refuses it. | ||
| 18 | # Take the distro's fixes here rather than waiting for the base to be rebuilt. | ||
| 19 | RUN apk --no-cache upgrade && apk add --no-cache sqlite | ||
| 17 | 20 | ||
| 18 | # Backups are written to a mounted PVC as root; the job creates /data/backups. | 21 | # Backups are written to a mounted PVC as root; the job creates /data/backups. |
| 19 | ENTRYPOINT ["/bin/sh", "-c"] | 22 | ENTRYPOINT ["/bin/sh", "-c"] |