Skip to content

feat: seed the https database on up - #50

Merged
jravani merged 1 commit into
mainfrom
feat/seed-https-on-up
Sep 29, 2026
Merged

jravani merged 1 commit into
mainfrom
feat/seed-https-on-up

Conversation

@jravani

@jravani jravani commented Sep 29, 2026

Copy link
Copy Markdown
Member

Extends the seed-on-up behaviour from #49 to environment/https. A bare docker compose up -d in any environment now leaves ignis ready to serve.

Changes

All three https compose files (docker-compose.yml, docker-compose.prod.yml, docker-compose.quickstart.yml) run build-db with -if-empty on every up, and ignis depends on it with service_completed_successfully. The seed profile is removed.

Situation Result of up -d
empty volume seeded, then ignis and the proxy start
populated volume seed skipped
seed fails exit 1, service "build-db" didn't complete successfully, ignis and proxy not started

A populated database is rebuilt with <compose prefix> run --rm build-db -if-empty=false.

docs/getting-started.md now describes seeding once for both environments, the deployment steps are pull then up -d, and the pinning example uses 0.7.0. The seeder dockerfile comment is updated to match.

No new image is needed: the pulled files use build-db 0.7.0 or later, which already accepts -if-empty.

Checks

  • docker-compose.quickstart.yml run end to end with the published 0.7.0 images under a separate project name: up -d --wait exited 0 on an empty volume, and /variants/DE and /calculate answered through Caddy; a second up skipped the seed; with a wrong DB_PASSWORD on build-db, up exited 1 and ignis and proxy stayed in Created.
  • docker-compose.yml and docker-compose.prod.yml pass docker compose config. Their build-db wiring is the same as the files exercised above and in feat: seed the http database on up #49.
  • mkdocs build --strict passes.

All three https compose files now run build-db with -if-empty on every
`up`, and ignis depends on it with service_completed_successfully, as
the http environment already does. A fresh volume is seeded before
ignis and the proxy start, a populated one is left unchanged, and a
failed seed makes `up` exit 1. The seed profile is removed, so `pull`
fetches build-db without it.

With both environments behaving the same, the getting-started guide
describes seeding once instead of per environment, the deployment
steps drop the separate seed command, and the pinning example uses
0.7.0, the first release whose build-db accepts -if-empty.
@jravani
jravani merged commit 6c20271 into main Sep 29, 2026
2 checks passed
@jravani
jravani deleted the feat/seed-https-on-up branch September 29, 2026 13:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant