diff options
| author | Anders Betts <anders.betts@gmail.com> | 2026-09-18 10:35:11 +0200 |
|---|---|---|
| committer | Anders Betts <anders.betts@gmail.com> | 2026-09-18 10:35:11 +0200 |
| commit | 1e5b4927e5ae1d542d51158eb995d4f4b5a8b1c5 (patch) | |
| tree | 5d2b414abbe6550eaf403c6aa4b5f75eb703fa01 /docs/DEPLOY.md | |
| parent | 7a0771215d9bd52dc9d6913abee56a9f62893d3e (diff) | |
| download | bokf-1e5b4927e5ae1d542d51158eb995d4f4b5a8b1c5.tar.gz bokf-1e5b4927e5ae1d542d51158eb995d4f4b5a8b1c5.zip | |
deploy: --dev hot-reloads the daemon via docker cp + SIGHUPv0.1.14
- bokfd re-execs its own binary on SIGHUP, closing listeners/db first
- scripts/deploy.sh --dev cross-builds and copies binaries into the
running container, then verifies the reported version
Diffstat (limited to 'docs/DEPLOY.md')
| -rw-r--r-- | docs/DEPLOY.md | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/docs/DEPLOY.md b/docs/DEPLOY.md index 8862fab..2964a19 100644 --- a/docs/DEPLOY.md +++ b/docs/DEPLOY.md @@ -50,6 +50,23 @@ to touch an already initialized database. Subsequent `scripts/deploy.sh` runs update the image, tag and compose file, restart the daemon and wait for the healthcheck. +## Fast iteration (`--dev`) + +Normal deploys build an image and recreate the container. While developing, +`scripts/deploy.sh --dev` skips the image entirely: + +- the gate (`make` + `make test`) still runs locally, +- on an architecture mismatch the binaries are cross-compiled here + (`deploy/Dockerfile.cross`, ~20 s on a PC), +- the binaries are copied into the running container with `docker cp`, +- the daemon is reloaded with `SIGHUP`, which re-execs the binary in place + (in-memory sessions are lost, clients reconnect), +- the version the daemon reports is verified against the tag. + +No image is built and the container is not recreated; a later normal deploy +replaces the copied binaries. Use a descriptive tag, e.g. +`scripts/deploy.sh --dev v0.2.0-rc1`. + ## Deploying upgrades ```sh |
