Skip to content

Add DocumentDB extension to CNPG image catalog and design catalog integration #279

@WentingWu666666

Description

@WentingWu666666

Summary

Add the DocumentDB extension to the CloudNative-PG extension image catalog and design how the DocumentDB operator leverages CNPG image catalogs for extension management.

Motivation

Currently, the DocumentDB Kubernetes Operator bundles extensions directly into custom container images. CloudNative-PG provides an Image Catalog mechanism (catalog-extensions-trixie.yaml) that allows extensions to be declared and managed declaratively.

By adding the DocumentDB extension to the upstream CNPG artifacts catalog, we can:

  • Allow users to consume DocumentDB extensions through the standard CNPG image catalog workflow
  • Reduce custom image maintenance burden
  • Improve compatibility with the broader CNPG ecosystem

Proposed Work

1. Upstream: Add DocumentDB extension to CNPG artifacts

  • Submit a PR to cloudnative-pg/artifacts to add the DocumentDB extension entry to image-catalogs/catalog-extensions-trixie.yaml

2. Design: How the operator uses Image Catalogs

  • Design how DocumentDB CR references or auto-configures CNPG ImageCatalog / ClusterImageCatalog resources
  • Determine whether the operator should:
    • Create and manage ImageCatalog CRs automatically
    • Reference a user-provided catalog
    • Support both modes (auto-create with opt-out)
  • Define the interaction between the operator's cluster provisioning and CNPG's image catalog selection
  • Consider upgrade and version-pinning strategy for catalog images

Acceptance Criteria

  • DocumentDB extension is added to the upstream CNPG extension catalog (Trixie)
  • Design document describing how the operator integrates with CNPG image catalogs
  • Operator changes implemented to leverage image catalogs for extension management

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions