chore(config): integrate and test the config system#2094
Conversation
This comment has been minimized.
This comment has been minimized.
Binary Size Analysis (Agent Data Plane)Baseline: b7de287 · Comparison: 096d1e7 · diff ✅ Binary size difference within thresholdChanges by Module
Detailed Symbol Changes |
Regression Detector (Agent Data Plane)Run ID: Optimization Goals: ✅ No significant changes detectedFine details of change detection per experiment (3)Experiments configured
Bounds Checks: ✅ Passed (3)
ExplanationA change is flagged as a regression when |Δ mean %| > 5.00% in the regressing direction for its optimization goal AND SMP marks the experiment as a regression ( |
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Connect the typed configuration system to `agent-data-plane` while preserving the existing compatibility path for consumers that have not migrated yet. - Load the configuration system during startup and require the first Agent snapshot to pass typed deserialization and translation before boot continues. - Consume the live configuration stream through the configuration system, forward updates faithfully to the compatibility configuration map, and thread the typed system through topology and supervisor assembly. - Expose the current compatibility configuration through the privileged `/config/internal` endpoint and retain integration coverage for runtime updates. - Move the runtime's remaining key-alias and remapper imports to `datadog-agent-config`, leaving the compatibility re-export available only for legacy tests. This commit wires the configuration system into the binary; component migrations remain separate.

Human Summary
Integrates the typed config system into
agent-data-planeeven though no components are yet reading from it. We decided to take a migration approach to this, so components will be cut over to using typed config in isolated PRs where we can focus on correctness for each component.This PR introduces a privileged API endpoint
/config/internalwhich is a serialization ofSalukiConfig. This is going to be important for end-to-end integration testing, and the first such test is added in this PR.Also noteworthy is that all integration and correctness tests are passing here, which was not the case prior to #2093's improvement of how the type config system handles environment variables.
AI Summary
Integrate the typed configuration system into the Agent Data Plane runtime and expose its current value through the internal configuration endpoint.
/config/internal.Change Type
How did you test this PR?
make build-schema-overlaymake fmtmake check-docsmake check-allmake testAll checks passed; 1,830 tests passed and 31 were skipped.
References
Stacked on #2093.