Skip to content

Commit c5bd74a

Browse files
authored
Prepare website for DocumentDB 0.117 (#177)
1 parent 37cc6eb commit c5bd74a

7 files changed

Lines changed: 179 additions & 73 deletions

File tree

‎.github/workflows/continuous-integration.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,9 @@ jobs:
9696
run: |
9797
sudo apt-get update
9898
sudo apt-get install -y createrepo-c dpkg-dev rpm python3
99-
- name: Generate repository from v0.116-0
99+
- name: Generate repository from v0.117-0
100100
env:
101-
DOCUMENTDB_VERSION: v0.116-0
101+
DOCUMENTDB_VERSION: v0.117-0
102102
run: .github/scripts/download_packages.sh
103103
- name: Verify release inventory and metadata
104104
run: python3 .github/scripts/verify_package_inventory.py

‎PACKAGE-INSTALL.md‎

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,10 @@ The explicit major and fresh-instance flags prevent another installed PostgreSQL
141141
existing system cluster from being selected accidentally. To adopt an existing PostgreSQL
142142
instance instead, use [Adopt an existing PostgreSQL instance](#adopt-an-existing-postgresql-instance).
143143

144+
Sample data is opt-in. Add `--load-sample-data` to the setup command to seed the `StoreData`
145+
database with 41,505 documents in `stores` and 2 documents in `ratings`. This requires
146+
`mongosh`; the command above leaves the new instance empty.
147+
144148
`mongosh` is not shipped by these packages. Install it from the
145149
[official instructions](https://www.mongodb.com/docs/mongodb-shell/install/), then:
146150

@@ -200,7 +204,7 @@ Before using this anywhere but a private machine:
200204

201205
```bash
202206
sudo documentdb-setup --status # gateway listener, service states, resolved paths
203-
documentdb-gateway --version # DocumentDB version (0.116.0)
207+
documentdb-gateway --version # DocumentDB version (0.117.0)
204208
dpkg -l | grep documentdb # or: rpm -qa | grep documentdb
205209
```
206210

@@ -288,7 +292,7 @@ On a systemd host, a scoped restore stops and disables that major's gateway:
288292
sudo documentdb-setup --restore --pg-version 18
289293
```
290294

291-
On a host without systemd, v0.116 cannot safely attribute a nohup gateway process to one
295+
On a host without systemd, the current setup tooling cannot safely attribute a nohup gateway process to one
292296
PostgreSQL major. If only one DocumentDB major is configured, use an unscoped restore so the
293297
orphan gateway sweep runs:
294298

@@ -344,8 +348,8 @@ The current release publishes PostgreSQL 17 and 18. Install `documentdb-17` or
344348

345349
## Upgrading an existing install
346350

347-
> **Warning:** v0.116 does not support an in-place upgrade from the extension-only package
348-
> layout in v0.114 or earlier. Use a clean host, or remove the earlier packages and perform the
351+
> **Warning:** In-place package upgrades from earlier releases are not supported yet. Use a
352+
> clean host, or remove the earlier packages and perform the
349353
> current fresh installation. Upgrading only `postgresql-N-documentdb` does not install the
350354
> gateway, tools, common payload, or `documentdb-N`.
351355
@@ -429,7 +433,7 @@ three entry points:
429433
- `packaging/gateway/build_gateway_packages.sh` — wire-protocol gateway
430434
- `packaging/build_extra_packages.sh` — tools, common payload, `documentdb-N`, and meta package
431435

432-
The [v0.116 packaging guide](https://github.com/documentdb/documentdb/blob/v0.116-0/packaging/README.md)
436+
The [v0.117 packaging guide](https://github.com/documentdb/documentdb/blob/v0.117-0/packaging/README.md)
433437
documents their required arguments, version formats, prerequisites, and accepted targets.
434438
PostgreSQL 15 remains extension-only for package-managed installs because the setup tools
435439
require PostgreSQL 16 or newer.
@@ -444,9 +448,9 @@ they do not retain packages from older releases.
444448
Examples:
445449

446450
```text
447-
ubuntu24.04-documentdb_0.116.0_all.deb
448-
ubuntu24.04-postgresql-18-documentdb_0.116-0_amd64.deb
449-
rhel9-postgresql18-documentdb-0.116.0-1.el9.x86_64.rpm
451+
ubuntu24.04-documentdb_0.117.0_all.deb
452+
ubuntu24.04-postgresql-18-documentdb_0.117-0_amd64.deb
453+
rhel9-postgresql18-documentdb-0.117.0-1.el9.x86_64.rpm
450454
```
451455

452456
Because the packages depend on each other, installing a downloaded meta package on its own

‎app/lib/releaseInfo.ts‎

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,23 @@ import { useEffect, useState } from "react";
1212
// after v0.116-0 had been published and mirrored.
1313

1414
export type ReleaseInfo = {
15-
/** Git tag of the mirrored release, e.g. "v0.116-0". */
15+
/** Git tag of the mirrored release, e.g. "v0.117-0". */
1616
tagName: string;
17-
/** Extension package version on DEB, e.g. "0.116-0". */
17+
/** Extension package version on DEB, e.g. "0.117-0". */
1818
aptVersion: string;
19-
/** Extension package version on RPM, e.g. "0.116.0-1.el9". */
19+
/** Extension package version on RPM, e.g. "0.117.0-1.el9". */
2020
rpmVersion: string;
2121
/**
22-
* Version of every non-extension package, e.g. "0.116.0".
22+
* Version of every non-extension package, e.g. "0.117.0".
2323
*
24-
* The extension keeps the control-file form (`0.116-0`) while the meta,
24+
* The extension keeps the control-file form (`0.117-0`) while the meta,
2525
* per-major, gateway, tools and common packages use the flat dotted form.
2626
* Pinning examples MUST pick the right one for the package being pinned:
27-
* `apt install documentdb-18=0.116-0` fails with "Version '0.116-0' for
28-
* 'documentdb-18' was not found", because that package is `0.116.0`.
27+
* `apt install documentdb-18=0.117-0` fails with "Version '0.117-0' for
28+
* 'documentdb-18' was not found", because that package is `0.117.0`.
2929
*/
3030
metaVersion: string;
31-
/** RPM form of the non-extension packages, e.g. "0.116.0-1". */
31+
/** RPM form of the non-extension packages, e.g. "0.117.0-1". */
3232
metaRpmVersion: string;
3333
releaseUrl: string;
3434
assetNames: readonly string[];
@@ -39,12 +39,12 @@ export type ReleaseInfo = {
3939
// placeholder. Keep it in step with the newest release; the drift check in CI
4040
// fails the build when it falls behind release-info.json.
4141
export const FALLBACK_RELEASE: ReleaseInfo = {
42-
tagName: "v0.116-0",
43-
aptVersion: "0.116-0",
44-
rpmVersion: "0.116.0-1.el9",
45-
metaVersion: "0.116.0",
46-
metaRpmVersion: "0.116.0-1",
47-
releaseUrl: "https://github.com/documentdb/documentdb/releases/tag/v0.116-0",
42+
tagName: "v0.117-0",
43+
aptVersion: "0.117-0",
44+
rpmVersion: "0.117.0-1.el9",
45+
metaVersion: "0.117.0",
46+
metaRpmVersion: "0.117.0-1",
47+
releaseUrl: "https://github.com/documentdb/documentdb/releases/tag/v0.117-0",
4848
assetNames: [],
4949
};
5050

@@ -96,8 +96,8 @@ export function parseReleaseInfo(payload: unknown): ReleaseInfo {
9696
? raw.html_url
9797
: `https://github.com/documentdb/documentdb/releases/tag/${tagName}`;
9898

99-
// The extension keeps the control-file form (0.116-0) on DEB, while RPM
100-
// splits it into Version/Release and renders 0.116.0-1.el9. Everything else
99+
// The extension keeps the control-file form (0.117-0) on DEB, while RPM
100+
// splits it into Version/Release and renders 0.117.0-1.el9. Everything else
101101
// uses the flat dotted form. Read all three off real filenames so the page
102102
// cannot claim a shape the release does not contain.
103103
const aptVersion =
@@ -114,7 +114,7 @@ export function parseReleaseInfo(payload: unknown): ReleaseInfo {
114114
firstMatch(names, /^documentdb-(\d+\.\d+\.\d+)-\d+\.noarch\.rpm$/) ??
115115
FALLBACK_RELEASE.metaVersion;
116116

117-
// e.g. documentdb-0.116.0-1.noarch.rpm -> 0.116.0-1
117+
// e.g. documentdb-0.117.0-1.noarch.rpm -> 0.117.0-1
118118
const metaRpmVersion =
119119
firstMatch(names, /^documentdb-(\d+\.\d+\.\d+-\d+)\.noarch\.rpm$/) ??
120120
FALLBACK_RELEASE.metaRpmVersion;

‎app/packages/page.tsx‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ export default function PackagesPage() {
112112

113113
const aptCommand = buildAptInstallCommand(aptTarget, aptArch, aptPgVersion);
114114
const rpmCommand = buildRpmInstallCommand(rpmTarget, rpmArch, rpmPgVersion);
115-
// Tier-1 targets resolve the full v0.116-0 stack, so the selected package is
115+
// Tier-1 targets resolve the current full stack, so the selected package is
116116
// the per-major stand-alone rather than the bare extension.
117117
const isFullStack =
118118
packageFamily === "apt"
@@ -384,6 +384,13 @@ export default function PackagesPage() {
384384
)}
385385
label="Setup"
386386
/>
387+
<p className="mt-3 text-sm text-gray-400">
388+
Sample data is opt-in. After installing{" "}
389+
<code className="text-gray-300">mongosh</code>, add{" "}
390+
<code className="text-gray-300">--load-sample-data</code> to seed the{" "}
391+
<code className="text-gray-300">StoreData</code> database with 41,505 stores
392+
and 2 ratings. The command above leaves the new instance empty.
393+
</p>
387394
<p className="mt-3 text-sm text-gray-400">
388395
The gateway then listens on port{" "}
389396
<code className="text-gray-300">10260</code>. It binds all interfaces by

0 commit comments

Comments
 (0)