Skip to content
Open
4 changes: 4 additions & 0 deletions PACKAGE-INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

Repository-backed installation commands for DocumentDB.

> This repository serves v0.117-0. v1.0-RC1 is for testing only, gets no fixes (those go into
> RC2 or 1.0), has no upgrade path, and isn't in this repository; see
> [Try the 1.0 release candidate](https://documentdb.io/docs/getting-started/release-candidate/).

## What is published

Starting with **v0.116-0**, DocumentDB ships a multi-package layout with a setup wizard and
Expand Down
8 changes: 7 additions & 1 deletion app/services/articleService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,9 @@ The current official release publishes the full stack — extension, gateway, se
> [!NOTE]
> Need another distribution or PostgreSQL major? We welcome community builds. Check out the matching release tag and use the version-parameterized [packaging scripts](https://github.com/documentdb/documentdb/blob/v0.117-0/packaging/README.md). \`build_packages.sh\` builds the extension, \`gateway/build_gateway_packages.sh\` builds the gateway, and \`build_extra_packages.sh\` builds the common, tools, stand-alone, and meta packages. PostgreSQL 15 is extension-only because the setup tools require PostgreSQL 16 or newer. These builds are on demand and are not official release assets hosted by documentdb.io.

> [!NOTE]
> Want to try DocumentDB 1.0? [v1.0-RC1](/docs/getting-started/release-candidate) is for testing only, gets no fixes (those go into RC2 or 1.0) and has no upgrade path. It isn't in the package repository, so the commands below install v0.117-0.

You do not need PostgreSQL already installed — the setup wizard creates and manages its own instance. The install does add the PGDG repository and pull PostgreSQL, PostGIS and around 160 packages (about 140 MB), so pick a host you are willing to have PGDG on.

## Install
Expand Down Expand Up @@ -392,7 +395,9 @@ It does **not** install the gateway, create a network endpoint for drivers, or r

Use the extension package for your PostgreSQL major: \`postgresql-N-documentdb\` on Ubuntu
or \`postgresqlN-documentdb\` on EL9. You own PostgreSQL configuration, extension activation,
and service restarts. Follow the matching release's [manual package instructions](https://github.com/documentdb/documentdb/blob/v0.117-0/packaging/README.md),
and service restarts. Create \`documentdb_extended_rum\` as well as \`documentdb\`:
\`CREATE EXTENSION documentdb CASCADE\` does not pull it in, and without it every index
creation fails. Follow the matching release's [manual package instructions](https://github.com/documentdb/documentdb/blob/v0.117-0/packaging/README.md),
or the [extension-only offline instructions](/docs/linux-packages/offline#smaller-offline-cases)
when PostgreSQL and all extension dependencies are already installed.

Expand Down Expand Up @@ -1239,6 +1244,7 @@ The \`latest\` tag is a convenience alias. Pin an explicit tag for anything repr
| \`ghcr.io/documentdb/documentdb/documentdb-local:pg18-0.117.0\` | DocumentDB 0.117.0 on PostgreSQL 18 |
| \`…:pg17-0.117.0\` | DocumentDB 0.117.0 on PostgreSQL 17 |
| \`…:pg16-0.117.0\` · \`…:pg15-0.117.0\` | PostgreSQL 16 and 15 |
| \`…:pg15-1.0.0-rc1\` · \`…:pg16-1.0.0-rc1\` · \`…:pg17-1.0.0-rc1\` · \`…:pg18-1.0.0-rc1\` | [v1.0-RC1](https://github.com/documentdb/documentdb/releases/tag/v1.0-RC1), for testing only, with [no fixes to RC1 and no upgrade path](/docs/getting-started/release-candidate). No date for 1.0 yet. Use a new, empty data volume. The \`pgNN-1.0.0\` tags point at the same images today but will move to the final 1.0 build. |
| \`…:latest\` | Currently identical to \`pg17-0.117.0\` |

> \`latest\` tracks **PostgreSQL 17**, while the \`documentdb\` package on Linux pins
Expand Down
10 changes: 10 additions & 0 deletions tests/packageArticles.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import {
buildRpmInstallCommand,
buildSetupCommand,
} from '../app/lib/packageInstall';
import { FALLBACK_RELEASE } from '../app/lib/releaseInfo';

function getCodeBlocks(content: string, language: string): string[] {
const pattern = new RegExp('```' + language + '\\n([\\s\\S]*?)\\n```', 'g');
Expand Down Expand Up @@ -273,6 +274,15 @@ describe('Linux package articles', () => {
);
});

it('keeps package download and source links on the mirrored release', () => {
const tags = [
...`${linuxPackagesGuideContent}\n${linuxPackagesOperationsContent}`.matchAll(/documentdb\/(?:releases\/download|blob)\/(v[^/]+)\//g),
].map((match) => match[1]);

expect(tags.length).toBeGreaterThan(0);
expect(new Set(tags)).toEqual(new Set([FALLBACK_RELEASE.tagName]));
});

it('uses the current release package guide and artifact version', () => {
const offlineGuide = getArticleByPath('linux-packages', ['offline']);

Expand Down
Loading