mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-11 13:52:20 +00:00
chore(deps): keep PostgreSQL majors out of the update stream
The compose ecosystem added last change did its job on the first run and immediately proposed 16.15 to 18.6. A PostgreSQL major changes the on-disk format, so merging that would hand self-hosters a container that cannot read their data directory without pg_upgrade or a dump and restore. Minor releases keep arriving as reviewable PRs; a major is a project decision with a migration path behind it, not a weekly bump. The guard grows a case for the ignore rule, so dropping it fails rather than quietly re-opening the door.
This commit is contained in:
1 parent
114f8e9fa6
commit
6058590872
2 files changed
+19
No files matched your search
@@ -38,3 +38,12 @@ updates:
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
open-pull-requests-limit: 3
|
||||
ignore:
|
||||
# A PostgreSQL major is a migration, not an update: the on-disk format
|
||||
# changes, so the operator has to run pg_upgrade or dump and restore.
|
||||
# The first run of this ecosystem proposed 16.15 -> 18.6, which would
|
||||
# have handed self-hosters a database their data directory cannot be
|
||||
# read by. Minor releases still arrive as PRs; a major is a deliberate
|
||||
# project decision with a migration guide behind it.
|
||||
- dependency-name: "postgres"
|
||||
update-types: ["version-update:semver-major"]
|
||||
@@ -36,6 +36,16 @@ describe("the bundled database pin", () => {
|
||||
expect(images[0]).toMatch(/^postgres:\d+\.\d+-alpine$/);
|
||||
});
|
||||
|
||||
it("lets a major version through only as a decision, never as an update PR", () => {
|
||||
const dependabot = read(".github/dependabot.yml");
|
||||
// The first run of the compose ecosystem proposed 16.15 -> 18.6. A
|
||||
// PostgreSQL major changes the on-disk format, so it is a migration the
|
||||
// project schedules, not an update an operator merges on a Tuesday.
|
||||
expect(dependabot).toMatch(
|
||||
/dependency-name:\s*"postgres"[\s\S]{0,200}version-update:semver-major/,
|
||||
);
|
||||
});
|
||||
|
||||
it("is watched by the compose ecosystem, which is not the Dockerfile one", () => {
|
||||
const dependabot = read(".github/dependabot.yml");
|
||||
const ecosystems = [
|
||||
|
||||
Reference in new issue
Block a user