hip-0404

HIP-404: DocDB CRD. Status Draft. Hanzo's own standard โ€” read this before implementing against it.

HIP-0404: DocDB CRD

Abstract

The DocDB CRD is the facade Kind for DocumentDB workloads (hanzoai/docdb). DocumentDB exposes the DocumentDB wire protocol over SQL, giving us DocumentDB-compatible APIs without a DocumentDB server. The reconciler delegates to the Datastore controller with type: docdb.

Specification

Group + version

hanzo.ai/v1, plural docdbs, shortname docdb.

Spec fields

Same shape as Datastore (HIP-401). Implicitly type: docdb. Typical deployment runs DocumentDB as the wire-protocol front-end with a SQL CR as the storage backend.

Example CR

apiVersion: hanzo.ai/v1
kind: DocDB
metadata:
  name: docdb
  namespace: hanzo
spec:
  type: docdb
  image:
    repository: ghcr.io/hanzoai/docdb
    tag: v1
  replicas: 1
  storage:
    storageClassName: do-block-storage
    size: 1Gi
  env:
    - name: FERRETDB_POSTGRESQL_URL
      value: postgres://hanzo@localhost:5432/docdb
  credentialsSecret: docdb-credentials

Generated K8s resources

StatefulSet, headless + ClusterIP Services, PVC (small โ€” DocumentDB itself is stateless on its own backing SQL).

Operator reconciler

~/work/hanzo/operator/src/controllers/datastore.rs.

Related services

Status

Implemented in hanzoai/operator v0.3.0+. CR docdb active in cluster.