cozystack/packages/apps
Aleksei Sviridkin b719cf67e3
feat(tenant,harbor,bucket): wire per-tenant apps through the tenant Gateway
Tenants can now opt their own apps into Gateway API without touching
the publishing tenant. The mechanism mirrors the existing
_namespace.ingress contract exactly.

packages/apps/tenant/templates/namespace.yaml:

- Compute a new $gateway value: if the tenant sets .Values.gateway
  it becomes the tenant's own namespace, otherwise it inherits from
  the parent namespace (empty means no Gateway anywhere in the chain).
- Ship $gateway out through the cozystack-values Secret under
  _namespace.gateway and through a namespace label
  namespace.cozystack.io/gateway.

packages/apps/harbor and packages/system/bucket:

- Existing Ingress wrapped in '{{ if not $gateway }}' so it only
  renders when no Gateway is attached anywhere up the tenant chain.
- New templates/httproute.yaml render when $gateway is non-empty:
  apiVersion gateway.networking.k8s.io/v1 HTTPRoute, parentRef to
  the 'cozystack' Gateway in whichever namespace $gateway points
  at, hostname <release>.<host> (harbor) or <bucketName>.<host>
  (bucket), backendRef to the existing Service on its current port.

Per-tenant resolution: a tenant with .Values.gateway=true gets its
own Gateway in its own namespace, and harbor/bucket deployed inside
that tenant attach to that namespace's Gateway — no cross-namespace
references, no coupling to the publishing tenant.

Default remains ingress-nginx: tenants that do not opt in keep
rendering Ingress verbatim.

Assisted-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
2026-04-24 17:03:58 +03:00
..
bucket fix(controller): address review findings for BucketClaim reconciler 2026-04-17 10:58:47 +03:00
clickhouse feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
foundationdb feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
harbor feat(tenant,harbor,bucket): wire per-tenant apps through the tenant Gateway 2026-04-24 17:03:58 +03:00
http-cache feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
kafka feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
kubernetes Prepare release v1.3.0 2026-04-22 07:28:09 +00:00
mariadb Prepare release v1.3.0 2026-04-22 07:28:09 +00:00
mongodb feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
nats feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
openbao feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
opensearch feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
postgres feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
qdrant feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
rabbitmq feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
redis feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
tcp-balancer feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
tenant feat(tenant,harbor,bucket): wire per-tenant apps through the tenant Gateway 2026-04-24 17:03:58 +03:00
vm-disk [vm-disk] Remove unused DataVolume lookup in dv.yaml 2026-04-14 19:59:19 +05:00
vm-instance [virtual-machine] Exclude external VM services from Cilium BPF LB 2026-04-08 15:20:58 +02:00
vpc [docs] Update cozyvalues-gen 2026-03-25 15:59:22 +05:00
vpn feat(platform): add resourcePreset labels 2026-04-17 15:04:25 +04:00
Makefile refactor: move scripts to hack directory 2026-01-15 16:06:56 +01:00
README.md [clickhouse] add clickhouse keeper 2025-08-07 14:07:05 +03:00

How to test packages local

cd packages/core/installer
make image-cozystack REGISTRY=YOUR_CUSTOM_REGISTRY
make apply
kubectl delete po -l app=source-controller -n cozy-fluxcd