No description
  • Dockerfile 100%
Find a file
toasterson 94b30e93fc
All checks were successful
build / pg18 (push) Successful in 36m8s
Switch to PG18 + Trixie to match postgres-ha.
I'd been building cnpg-age on PG16/Bookworm, assuming the CNPG cluster was
on PG16. It's actually running ghcr.io/cloudnative-pg/postgresql:18.0-
system-trixie — the imageName field had been left empty in the cluster
spec, so CNPG used its current default and rolled forward to PG18.

Updates:
  - Build stage: debian:trixie-slim, pgdg's trixie-pgdg apt repo,
    postgresql-server-dev-18.
  - Runtime stage: ghcr.io/cloudnative-pg/postgresql:18.0-system-trixie.
  - AGE: PG18/v1.7.0-rc0 (the only AGE tag for PG18 today).
  - Workflow: pg16 job replaced with pg18 (Solstice has no matrix anyway).
  - README updated.

Tags now: 18-v1.7.0-rc0, 18-latest, latest.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 23:41:48 +02:00
.forgejo/workflows Switch to PG18 + Trixie to match postgres-ha. 2026-04-26 23:41:48 +02:00
.dockerignore Initial commit: CNPG operand image with Apache AGE. 2026-04-25 11:41:14 +02:00
.gitignore Initial commit: CNPG operand image with Apache AGE. 2026-04-25 11:41:14 +02:00
Dockerfile Switch to PG18 + Trixie to match postgres-ha. 2026-04-26 23:41:48 +02:00
LICENSE Initial commit: CNPG operand image with Apache AGE. 2026-04-25 11:41:14 +02:00
README.md Switch to PG18 + Trixie to match postgres-ha. 2026-04-26 23:41:48 +02:00

cnpg-age

CloudNativePG operand image with Apache AGE bundled.

The upstream CNPG image ships pgvector and the usual extension family but not AGE — AGE has to be compiled against the matching postgresql-server-dev. This repo does that, packages the result on top of the CNPG base, and pushes to code.aopc.cloud/toasterson/cnpg-age.

Tags

Tag What it means
<pg>-<age> Fully pinned. Use this in production Cluster resources.
<pg>-latest Latest AGE for that PG major. Floating.
latest Currently 18-v1.7.0-rc0. Floating.

Apache AGE only publishes -rc0 tags per PG major (no finalized v*.* release as of 2026-04). PG18 → v1.7.0-rc0.

Usage

In a CNPG Cluster:

spec:
  imageName: code.aopc.cloud/toasterson/cnpg-age:18-v1.7.0-rc0
  postgresql:
    parameters:
      shared_preload_libraries: "age"

Then in any database that wants graphs:

CREATE EXTENSION IF NOT EXISTS age;
LOAD 'age';
SET search_path = ag_catalog, "$user", public;
SELECT create_graph('your_graph');

Build

.forgejo/workflows/build.yml builds one target per push:

  • 18-v1.7.0-rc0 — also tagged 18-latest and latest

The image extends ghcr.io/cloudnative-pg/postgresql:18.0-system-trixie (CNPG's PG18 + Trixie operand). The build stage uses debian:trixie-slim + pgdg's trixie-pgdg apt repo to compile AGE against the matching ABI. To build for a different PG major, add another job analogous to pg18: when there's a consumer.

License

Apache-2.0 (matches Apache AGE upstream).