eve icon indicating copy to clipboard operation
eve copied to clipboard

Sync CONFIG-PROPERTIES.md with pkg/pillar/types/global.go

Open OhmSpectator opened this issue 2 months ago • 3 comments

Summary

The list of configuration properties in CONFIG-PROPERTIES.md no longer matches what is actually defined in pkg/pillar/types/global.go. The document has become outdated, with wrong defaults, missing keys, and inconsistent naming or wording. It needs a full sync with the code to stay reliable.

What’s Wrong

Over time, many differences have crept in between the markdown file and the code. Some defaults in the doc are incorrect. For example, debug flags like debug.enable.usb and debug.enable.console are listed as false, while the code sets them to true.
Key names have drifted, such as kubernetes.drain.timeout in the doc versus kubevirt.drain.timeout in code.
Several keys are completely missing: things like extra memory and disk settings, log level and drain timeouts, goroutine leak detection, modem recovery flags, NetDump, and Prometheus metrics.

What to Do

Compare every entry in CONFIG-PROPERTIES.md with NewConfigItemSpecMap() in pkg/pillar/types/global.go.
Fix wrong defaults, rename or remove outdated keys, add missing ones, and mark deprecated items clearly.
Clarify TriState fields (enabled, disabled, none) and clean up wording.
Make it clear in the doc that the code is the single source of truth.

OhmSpectator avatar Oct 09 '25 15:10 OhmSpectator

Did you use some script to detect missing keys? Because you mentioned modem recovery flags & NetDump as missing, but they are documented. I also see Prometheus and goroutine leak detection config properties mentioned in the markdown file (didn't check if all of them). Also debug.enable.usb and debug.enable.console have defaults false for the controller config. Only for the bootstrap and until the device is onboarded we work with USB, console and VGA enabled by default to facilitate TUI and troubleshooting for failed connectivity.

milan-zededa avatar Oct 09 '25 15:10 milan-zededa

Very good idea @OhmSpectator , I'm currently gathering info on which config parameters require a reboot to rake effect and which don't.

europaul avatar Oct 09 '25 16:10 europaul

Did you use some script to detect missing keys? Because you mentioned modem recovery flags & NetDump as missing, but they are documented. I also see Prometheus and goroutine leak detection config properties mentioned in the markdown file (didn't check if all of them). Also debug.enable.usb and debug.enable.console have defaults false for the controller config. Only for the bootstrap and until the device is onboarded we work with USB, console and VGA enabled by default to facilitate TUI and troubleshooting for failed connectivity.

To be honest, I could have done it without using the latest version of the code, while comparing it to the latest doc...

OhmSpectator avatar Oct 13 '25 09:10 OhmSpectator