Task · MDE-0062

Reject server-port overrides through Helm extraEnv

Description

Audit dimension 4 confirmed preventive chart hardening at the v2.0.0 release tree. charts/meraki-dashboard-exporter/templates/configmap.yaml:9-13 owns MERAKI_EXPORTER_SERVER__PORT from service.port, while templates/deployment.yaml:58-95 uses service.port for the named container port and probes. Arbitrary extraEnv is appended at deployment.yaml:65-73, and _validation.tpl:27-30 rejects only a per-fetch deadline override. Rendering extraEnv with MERAKI_EXPORTER_SERVER__PORT=8080 alongside service.port 9099 produces an explicit env value that overrides envFrom while the Service and probes remain on 9099, causing an operator-induced restart loop. Existing tests cover only the deadline override.

Acceptance Criteria

Definition of Done

Implementation Plan

Add a failing Helm render regression for MERAKI_EXPORTER_SERVER__PORT in extraEnv, reject it with service.port guidance, and retain ordinary extraEnv plus the single-value listener/service/probe derivation.

Final Summary

Added Helm validation that rejects conflicting listener overrides, including mixed-case environment-variable names. The intended regressions failed before their fixes; chart tests, just check, and just ci passed at 5e8d9c23b76a2f2edd531c15c776cbfbcc9134fa; exact-head CI 33843833956 and publication 33843966820 succeeded.

View the source file on GitHub