You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Publish the full DocumentDB package set and prove the repository installs (#149)
* Publish the full DocumentDB package set and prove the repo installs
v0.116-0 replaced the single `postgresql-N-documentdb` extension package with a
multi-package layout (`documentdb` meta, `documentdb-N`, `documentdb-common`,
`documentdb-gateway`, `documentdb-postgresql-tools`). The mirror's asset filter
still matched only the extension, so 14 of the release's 22 packages were
dropped: `apt install documentdb` could never have resolved, and none of the new
RPMs matched at all because they carry no `rhel9-` prefix.
Rebuilding from the newest release alone would also have deleted the
deb11/deb12/deb13/ubuntu22 components and the whole rhel8 repository, because
v0.116-0 ships Tier-1 (ubuntu24 + rhel9) only. Every host already pointed at one
of those would have started failing `apt update` with "Component 'ubuntu22' is
not defined".
So the pool is now filled additively, per (pool, package name, arch): the newest
release wins, and older releases contribute only packages no newer release
provides. Nothing disappears when a release narrows its matrix, and
`postgresql-16-documentdb` survives on ubuntu24/rhel9 even though v0.116-0
narrowed Tier 1 to PostgreSQL 17/18. Once a release ships every distribution
again, the older ones stop contributing on their own.
The metadata verifier could not have caught any of this: every file it looks for
was present and correct, the repository was simply unsatisfiable. Add a smoke
test that resolves `documentdb` against the repository about to be published,
for both APT and DNF. It solves the dependency graph without downloading ~500 MB
of PostgreSQL and PostGIS, and asserts the transaction really pulls the stack,
so an empty meta package cannot pass either.
Rewrite PACKAGE-INSTALL.md for the two-tier reality, and document what a
first-time install actually needs: that the gateway listens on all interfaces by
default and how to restrict it, how to verify an install and read its version
(mongosh reports the emulated MongoDB version, not DocumentDB's), where the
ports, logs and config live, the per-major systemd unit names, and how to
upgrade, reset or remove.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 8df9084a-ccaf-432c-b015-2ccd8893a9d8
* Never fill gaps from releases newer than a pinned version
The site pins the mirrored release with the DOCUMENTDB_VERSION repository
variable (currently v0.113-0). The additive fill walked every other published
release regardless of age, so a pin to a release older than the v0.116-0
multi-package layout would have added a newer `documentdb` meta package on top
of the pinned extension. Its `documentdb-N (>= 0.116.0)` dependency cannot be
satisfied by `postgresql-N-documentdb 0.113-0`, so the published repository
would have been unsatisfiable -- and the pin would have been quietly defeated.
A pin means "serve this version", so only the pinned release and older ones may
contribute.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 8df9084a-ccaf-432c-b015-2ccd8893a9d8
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 8df9084a-ccaf-432c-b015-2ccd8893a9d8
0 commit comments