Skip to content

feat(proton-bridge): metrics port, PodMonitor, Recreate, digest (0.2.0)#6

Merged
mgarratt merged 1 commit into
mainfrom
feat/proton-bridge-metrics-0.2.0
Jun 26, 2026
Merged

feat(proton-bridge): metrics port, PodMonitor, Recreate, digest (0.2.0)#6
mgarratt merged 1 commit into
mainfrom
feat/proton-bridge-metrics-0.2.0

Conversation

@mgarratt

Copy link
Copy Markdown
Owner

Makes the proton-bridge metrics exporter first-class so the home-cluster deployment can drop its postRenderer/extraEnv/digest-in-tag workarounds.

Changes (chart 0.1.8 → 0.2.0)

  • Metrics port: declare a named metrics containerPort (container.metricsPort, default 9154) and set CONTAINER_METRICS_PORT. A PodMonitor needs the port declared to scrape it.
  • gRPC default: bridge.mode now defaults to grpc (serves mail + the gRPC API the exporter reads). noninteractive/cli still available.
  • PodMonitor: optional, podMonitor.enabled (default off), with interval/path/labels.
  • Recreate strategy: default strategy.type: Recreate — the single ReadWriteOnce volume makes rolling updates deadlock on multi-attach.
  • Digest pinning: image.digest → referenced as repo:tag@digest (immutable; avoids stale mirror pulls of a re-pushed mutable tag).
  • appVersion → 3.25.0.

Validation

  • helm template renders cleanly for grpc/noninteractive/cli; default has ports [smtp, imap, metrics], strategy: Recreate, CONTAINER_METRICS_PORT=9154, no PodMonitor.
  • With image.digest set → …:tag@sha256:…; with podMonitor.enabled=true → PodMonitor on port: metrics.
  • helm lint clean.

Follow-up: a home-cluster PR bumps to 0.2.0 and removes the workarounds.

🤖 Generated with Claude Code

Make the metrics exporter first-class so consumers don't need postRenderer /
extraEnv workarounds:

- declare a `metrics` containerPort (container.metricsPort, default 9154) and set
  CONTAINER_METRICS_PORT; default bridge.mode to grpc (serves the exporter API)
- add an optional PodMonitor (podMonitor.enabled)
- default update strategy to Recreate (single ReadWriteOnce volume; rolling
  updates deadlock on volume multi-attach)
- support image.digest for immutable pinning (repo:tag@digest)
- bump appVersion to 3.25.0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mgarratt mgarratt merged commit d27ed25 into main Jun 26, 2026
2 checks passed
@mgarratt mgarratt deleted the feat/proton-bridge-metrics-0.2.0 branch June 26, 2026 12:27
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