Repository navigation
Conversation
podLabels adds labels to the hub, web and bundled Postgres pods, and (as HUB_AGENT_JOB_POD_LABELS) to the AI investigation Jobs the hub starts. hub.installPodLabels (HUB_INSTALL_POD_LABELS) adds labels to the Radar install commands the hub shows. Both exist for Google Cloud Marketplace consumption tracking, which needs a goog-partner-solution label on every pod in the customer's project. The schema enforces Kubernetes label syntax, and the chart refuses its own selector keys in podLabels. Staged as 1.15.0-rc.1 with appVersion unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…keys Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
PR Summary by QodoAdd pod labels to Radar Hub and generated agent installs
AI Description
Diagram
High-Level Assessment
Files changed (9)
|
Code Review by Qodo
1.
|
…prefixes hub.installPodLabels go on every Radar agent's pod template, so the agent chart's selector keys (app.kubernetes.io/name, app.kubernetes.io/instance) are refused there, as the chart's own are in podLabels. Label keys' prefix is capped at Kubernetes' 253 characters. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Summary
Google Cloud Marketplace requires a
goog-partner-solutionlabel on every pod a partner product runs in the buyer's project. This lets a Self-Managed install set it, on the control plane's own pods and on the Radar agents the hub installs.What changed
podLabels(top level): extra labels on the hub, web and bundled-Postgres pod templates. Withhub.agent.enabled, also passed to the hub asHUB_AGENT_JOB_POD_LABELS(k=v,k=v), which puts them on the AI investigation Jobs it starts.hub.installPodLabels: passed asHUB_INSTALL_POD_LABELS. The hub adds them to the Radar install commands it shows, so the agent in each connected cluster carries them.definitions/labelswith Kubernetes label syntax:propertyNamesfor keys, a pattern and 63-character limit for values. Non-string values are refused.podLabels(app.kubernetes.io/name,app.kubernetes.io/instance,app.kubernetes.io/component), which would otherwise duplicate a key or detach a pod from its controller.appVersionunchanged (1.14.1).Release
The two env vars are read by a radar-hub release that includes skyhook-dev/radar-hub#356. Older hubs ignore them;
podLabelson the chart's own pods works on any hub. Per this repo's release rules, merging publishes a chart version; promote to 1.15.0 final with anappVersionthat includes that Hub change.Testing
tests/render-matrix.sh(new "pod labels" block: labels on all three pod templates at the pod-template level, absent by default, selector key, non-string, bad value and bad key refused, prefixed key accepted, both env vars wired and absent when unset),.github/ci/agent-test.sh(58 assertions) andhelm lintpass locally on Helm 4.2. CI runs the matrix on Helm 3.14.🤖 Generated with Claude Code