Commit b551690
committed
chore(config): generate datadog config witness trait
Generate, at build time, a witness trait and fallible driver over the
supported Datadog Agent configuration surface. The generator parses the
generated datadog_configuration.rs and emits, for every key inventoried
as support: full or partial, one consume_<key> method on the
DatadogConfigConsumer trait plus a drive() that calls each method
exactly once. A translator that omits a newly supported key fails to
compile, so the supported surface stays auditable from the schema
overlay.
Add the TranslateError type that drive() surfaces, and the Datadog
source-language normalization metadata (KEY_ALIASES, DatadogRemapper)
used to canonicalize keys before deserialization.1 parent 137abc3 commit b551690
10 files changed
Lines changed: 1144 additions & 1 deletion
File tree
- .vale/styles/config/vocabularies/technical
- lib/datadog-agent/config
- build
- src
- classifier
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
240 | 240 | | |
241 | 241 | | |
242 | 242 | | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
9 | 10 | | |
10 | 11 | | |
11 | 12 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
| 10 | + | |
9 | 11 | | |
10 | 12 | | |
11 | 13 | | |
| |||
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
| 22 | + | |
20 | 23 | | |
21 | 24 | | |
22 | 25 | | |
23 | 26 | | |
24 | 27 | | |
25 | 28 | | |
26 | 29 | | |
| 30 | + | |
| 31 | + | |
27 | 32 | | |
0 commit comments