Skip to content

Release v0.1.2: namespace-aware plugin deployment - #111

Merged
guimou merged 1 commit into
mainfrom
dev
Jul 29, 2026
Merged

guimou merged 1 commit into
mainfrom
dev

Conversation

@guimou

@guimou guimou commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Namespace-aware installs: plugins can now declare a target namespace in their plugin.yaml; a confirmation modal is shown before installing to a custom namespace
  • Helm chart namespace management: the chart conditionally creates its own Namespace resource when it differs from the release namespace; all defaults now use cp-plugins-admin
  • BFF runtime namespace: the BFF pod namespace is injected via Kubernetes Downward API and exposed through GET /api/config as bffNamespace, enabling future cross-namespace resource creation without hardcoded values
  • SSE heartbeat: lifecycle SSE endpoints now send keepalive heartbeats, and the Helm timeout is aligned to prevent premature connection drops
  • Migration guide: documentation added for users upgrading from pre-0.1.2 deployments that used the old namespace

Test plan

  • Verify helm template renders POD_NAMESPACE env var with Downward API fieldRef
  • Verify GET /api/config returns bffNamespace alongside existing fields
  • Install a plugin with a custom namespace declared in its plugin.yaml and confirm the install modal appears
  • Install a plugin without a custom namespace and confirm no modal is shown
  • Run npm test (frontend) and cd bff && npm test (BFF) — all tests pass
  • Run helm lint chart/ and helm template test chart/ — no errors

Add support for deploying plugins to namespaces defined in their
plugin.yaml metadata, with a confirmation modal for custom namespace
installs. The Helm chart now manages its own namespace declaratively
when it differs from the release namespace, and all documentation
and defaults use the shortened cp-plugins-admin namespace.

The BFF exposes its own namespace at runtime via the Kubernetes
Downward API (GET /api/config), enabling future cross-namespace
resource creation (e.g. NetworkPolicies) without hardcoded values.
SSE lifecycle endpoints now include a keepalive heartbeat, and the
Helm timeout is aligned to prevent premature connection drops.

Includes a migration guide for users upgrading from pre-0.1.2
deployments that used the old namespace.

---
Signed-off-by: Guillaume Moutier <guimou@users.noreply.github.com>
Co-Authored-By: Claude <noreply@anthropic.com>
@guimou
guimou merged commit 3c81ae2 into main Jul 29, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant