Kustomize blueprint voor Odoo 19 Enterprise op BB Open multi-tenant platform
  • Shell 64.7%
  • Dockerfile 35.3%
Find a file
2026-06-15 21:43:53 +02:00
base chore(sizing): data-gedreven resource-baseline (ADR-0063) 2026-06-15 12:32:28 +02:00
image fix(image): bb-open-addons branch 18.0→19.0 voor 19-EE-image 2026-06-15 21:43:53 +02:00
overlays feat: overlays/<tier> wrappers voor Flux multi-source pattern 2026-05-12 09:58:28 +02:00
tier fix(brons): CNPG enablePDB:false — single-instance PDB blokkeerde node-drain 2026-06-15 14:59:10 +02:00
.gitignore chore: initial blueprint extracted from bb-open-platform-v2 2026-05-12 08:55:06 +02:00
DESIGN.md chore: initial blueprint extracted from bb-open-platform-v2 2026-05-12 08:55:06 +02:00
LICENSE chore: initial blueprint extracted from bb-open-platform-v2 2026-05-12 08:55:06 +02:00
README.md feat(tiers): add tier/brons — single-instance CNPG voor EE 2026-05-12 09:25:48 +02:00

bb-odoo-19-ee

Kustomize-blueprint voor Odoo 19 Enterprise als BB Open multi-tenant app.

Status

Tier Productie-ready Eerste klant
Brons (single-instance CNPG, geen HA)
Zilver WeAreFrank! (2026-05-13)
Goud (storage-quota-gated tot >320 GB/node)

Layout

base/                         # core manifests (StatefulSet, CNPG, Service, Ingress, …)
tier/brons/                   # 1-instance CNPG + CPU-cap 500m (geen HA)
tier/zilver/                  # 3-instance CNPG + WORKERS=5 + 4 CPU/8Gi mem-limit
tier/goud/                    # 3-instance CNPG + zwaardere sizing + 90d retention
image/                        # Containerfile + build.sh + Forgejo CI workflow

Tenant-overlay pattern

# tenants/<tenant>/odoo/kustomization.yaml (in bb-open-platform-v2)
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

namespace: <tenant>-odoo

resources:
  - ../../../tenants/_base
  - github.com/bb-open/bb-odoo-19-ee//base?ref=v0.1.0

components:
  - ../../../tenants/_base/tier/zilver
  - github.com/bb-open/bb-odoo-19-ee//tier/zilver?ref=v0.1.0

patches:
  - target: { kind: Namespace, name: PLACEHOLDER }
    patch: |
      - op: replace
        path: /metadata/name
        value: <tenant>-odoo
  - target: { kind: Ingress, name: odoo }
    patch: |
      - op: replace
        path: /spec/rules/0/host
        value: <tenant>.bb-open.com
  - target: { kind: Cluster, name: odoo-db }
    patch: |
      - op: replace
        path: /spec/backup/barmanObjectStore/destinationPath
        value: s3://bbopen-backups/<tenant>/odoo/

Vereisten op tenant-namespace

  • forgejo-registry-pullkey (kubernetes.io/dockerconfigjson) — image-pull voor forgejo.bb-open.com/bb-open/odoo-ee:19.0
  • odoo-admin-master — Odoo master-password (Pass-item <tenant>-odoo-admin-master)
  • odoo-smtp-config — SMTP-creds (Pass-item smtp-scaleway-bb-open, transitie Soverin → Scaleway)
  • hetzner-bbopen-backups-nbg1 — S3-creds voor CNPG WAL-archive

Allemaal gerendered door proton-pass-sync CronJob in platform-secrets-sync ns.

Image-build

Custom-built Odoo EE image (FROM docker.io/library/odoo:19.0 + enterprise-addons).

cd image/
./build.sh                  # builds + pushes naar forgejo.bb-open.com/bb-open/odoo-ee:19.0
IMAGE_TAG=19.0.1 ./build.sh # andere tag

Klant brengt eigen Enterprise license — paste in Odoo UI na deploy (Settings → Activate Enterprise).

License

Proprietary — BB Open Solutions. Odoo-source onder LGPLv3 (zie odoo.com). Enterprise-addons onder Odoo Enterprise Subscription Agreement (klant-license-key).

Versioning

SemVer-tags op deze repo. Tenant-overlay refereert specifieke tag. Major-bump = breaking change in base-manifests (DB-migratie nodig).