Skip to content

Consolidate namespace_mapping into single canonical Helm value#226

Merged
mhotan merged 5 commits intomainfrom
mike/run-102-consolidate-namespace-mapping
Mar 4, 2026
Merged

Consolidate namespace_mapping into single canonical Helm value#226
mhotan merged 5 commits intomainfrom
mike/run-102-consolidate-namespace-mapping

Conversation

@mhotan
Copy link
Contributor

@mhotan mhotan commented Feb 12, 2026

Summary

  • Adds a single top-level namespace_mapping value to the dataplane chart that cascades to all services that need it (propeller, clusterresourcesync, operator, executor)
  • Eliminates the need to configure namespace mapping in 4 separate locations
  • Adds test values to verify the cascading works correctly

Context

Namespace mapping (the template that maps project-domain pairs to Kubernetes namespaces) was previously configured independently in each service's config section. This made it easy to misconfigure, as a mismatch between any two services causes silent runtime failures.

Related: ENG26-247 — consolidate namespace_mapping to a single location

Test plan

  • make helm-test passes (golden files regenerated)
  • Verify cascading: setting top-level namespace_mapping propagates to all 4 configmaps
  • Verify default template {{ project }}-{{ domain }} when unset

Rollout Plan

Non-breaking — existing per-service overrides still work. The new top-level value provides a single canonical location.

Rollback Plan

Revert this commit. Per-service configuration still works as before.


@aviator-app
Copy link
Contributor

aviator-app bot commented Feb 12, 2026

Current Aviator status

Aviator will automatically update this comment as the status of the PR changes.
Comment /aviator refresh to force Aviator to re-examine your PR (or learn about other /aviator commands).

This PR was merged manually (without Aviator). Merging manually can negatively impact the performance of the queue. Consider using Aviator next time.


See the real-time status of this PR on the Aviator webapp.
Use the Aviator Chrome Extension to see the status of your PR within GitHub.

@mhotan mhotan force-pushed the mike/run-102-consolidate-namespace-mapping branch 3 times, most recently from 4675ee2 to 3b4025a Compare February 13, 2026 01:51
@mhotan mhotan force-pushed the mike/run-102-consolidate-namespace-mapping branch from 3b4025a to 39001de Compare March 3, 2026 21:20
@mhotan mhotan changed the base branch from main to mike/disable-server-side-cluster-health-override March 3, 2026 21:20
{{- end }}
{{- if and (not .Values.config.operator.org) .Values.namespace_mapping }}
org:
namespaceTemplate: {{ tpl (.Values.namespace_mapping.template | quote) $ }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sorry stupid question but wouldn't we still want this in the org block above when and (Values.config.operator.org) .Values.namespace_mapping

@mhotan mhotan force-pushed the mike/run-102-consolidate-namespace-mapping branch from 6a83889 to 49a8b5b Compare March 4, 2026 16:26
@mhotan mhotan changed the base branch from mike/disable-server-side-cluster-health-override to main March 4, 2026 16:26
mhotan and others added 4 commits March 4, 2026 08:28
The top-level `namespace_mapping` in values.yaml was dead config (no
template referenced `.Values.namespace_mapping`). Wire it as the
canonical source of truth that cascades to all dataplane services when
explicitly set:

- clusterresourcesync: falls back to `.Values.namespace_mapping` when
  `.Values.config.namespace_mapping` is not set
- nodeexecutor: auto-injects root-level `namespace_mapping` from the
  top-level value when `executor.raw_config.namespace_mapping` is not set
- propeller: falls back to top-level value when `config.namespace_config`
  is not set
- operator: falls back to top-level value for `org.namespaceTemplate`
  when `config.operator.org` is not set

Default remains empty (no template). Per-service overrides still take
precedence for backward compatibility.

towards RUN-102

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add `namespace_mapping.template` to aws and fully-selfhosted test values
to verify the canonical value cascades correctly to all service configmaps
(clusterresourcesync, executor, propeller, operator).

Azure test values already set per-service overrides (`config.namespace_config`,
`config.operator.org`), which confirms backward compat (overrides take
precedence over the top-level value).

towards RUN-102

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@mhotan mhotan force-pushed the mike/run-102-consolidate-namespace-mapping branch from 49a8b5b to c3b5c7d Compare March 4, 2026 16:36
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@mhotan mhotan merged commit bcb6d51 into main Mar 4, 2026
4 checks passed
@mhotan mhotan deleted the mike/run-102-consolidate-namespace-mapping branch March 4, 2026 16:45
@mhotan mhotan mentioned this pull request Mar 4, 2026
1 task
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.

2 participants