Kevin Veen-Birkenbach
9dc57c3235
Release version 3.1.3
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-20 20:01:26 +02:00
Kevin Veen-Birkenbach
8409843ff9
fix(restore): wrap the postgres dump replay in a single transaction
...
The dump replay ran statement-by-statement with autocommit. When restore --empty runs against a LIVE database, the pre-clean drops a table, the replay recreates it and autocommits, and a concurrent writer (discourse's mini_scheduler upserting scheduler_stats(id=1)) inserts the same primary key into the empty table before the dump's COPY loads it. The COPY then aborts with a duplicate-key violation under ON_ERROR_STOP and the whole restore fails. Running the replay with --single-transaction keeps the recreated table invisible to other sessions until commit, so the writer can never insert the racing row.
The --empty pre-clean stays multi-statement (\gexec, one DROP per statement): running every DROP in one transaction exhausts max_locks_per_transaction on large schemas (e.g. gitlab).
Extract the pre-clean SQL from the inline string into restore/db/empty_preclean.sql (loaded via dirname(__file__)) and declare it as package-data so it ships in the wheel. Add a unit test guarding the single-transaction/multi-statement split and an e2e that reproduces the live-writer race.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-20 20:00:31 +02:00
Kevin Veen-Birkenbach
d2ba2eb5ae
Release version 3.1.2
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-18 00:39:10 +02:00
Kevin Veen-Birkenbach
53460242d8
Release version 3.1.1
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-17 17:28:54 +02:00
Kevin Veen-Birkenbach
779f297c85
Release version 3.1.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-15 03:36:59 +02:00
Kevin Veen-Birkenbach
bf5f6db7c3
Release version 3.0.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-12 18:29:49 +02:00
Kevin Veen-Birkenbach
d6d4773fd9
Release version 2.0.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-12 14:56:02 +02:00
Kevin Veen-Birkenbach
45d3b0ad7c
Release version 1.8.1
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-12 02:59:17 +02:00
Kevin Veen-Birkenbach
e1f1b602d3
Release version 1.8.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-07-11 09:43:25 +02:00
Kevin Veen-Birkenbach
57ea4592c1
Release version 1.7.1
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-05-26 00:52:37 +02:00
Kevin Veen-Birkenbach
21b4d237d3
Release version 1.7.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-02-07 14:00:11 +01:00
Kevin Veen-Birkenbach
ed78f69b3b
Release version 1.6.0
2026-02-06 10:39:02 +01:00
Kevin Veen-Birkenbach
e3f28098bd
Release version 1.5.0
2026-01-31 22:06:05 +01:00
Kevin Veen-Birkenbach
2f5882f5c1
Release version 1.4.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-01-31 18:28:29 +01:00
Kevin Veen-Birkenbach
54737cefa7
Release version 1.3.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2026-01-10 18:41:55 +01:00
Kevin Veen-Birkenbach
e4bc075474
Release version 1.2.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2025-12-29 11:46:39 +01:00
Kevin Veen-Birkenbach
e3cdfd6fc4
Release version 1.1.1
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2025-12-28 22:52:31 +01:00
Kevin Veen-Birkenbach
0222f7f109
Release version 1.1.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2025-12-28 22:16:41 +01:00
Kevin Veen-Birkenbach
3b39a6ef02
Release version 1.0.0
CI (make tests, stable, publish) / make test (push) Has been cancelled
CI (make tests, stable, publish) / Mark stable + publish image (SemVer tags only) (push) Has been cancelled
2025-12-27 09:30:38 +01:00
Kevin Veen-Birkenbach
f8420c8bea
renamed configure to seed
2025-12-26 19:58:39 +01:00
Kevin Veen-Birkenbach
c30b4865d4
refactor: migrate to src/ package + add DinD-based E2E runner with debug artifacts
...
- Replace legacy standalone scripts with a proper src-layout Python package
(baudolo backup/restore/configure entrypoints via pyproject.toml)
- Remove old scripts/files (backup-docker-to-local.py, recover-docker-from-local.sh,
databases.csv.tpl, Todo.md)
- Add Dockerfile to build the project image for local/E2E usage
- Update Makefile: build image and run E2E via external runner script
- Add scripts/test-e2e.sh:
- start DinD + dedicated network
- recreate DinD data volume (and shared /tmp volume)
- pre-pull helper images (alpine-rsync, alpine)
- load local baudolo:local image into DinD
- run unittest E2E suite inside DinD and abort on first failure
- on failure: dump host+DinD diagnostics and archive shared /tmp into artifacts/
- Add artifacts/ debug outputs produced by failing E2E runs (logs, events, tmp archive)
https://chatgpt.com/share/694ec23f-0794-800f-9a59-8365bc80f435
2025-12-26 18:13:26 +01:00