Summary
Introduce a configuration-file / ComponentConfig-style configuration model for the metal-operator manager, reducing reliance on additional flag.Var registrations.
The manager already exposes more than 40 flags. Future settings—such as configuring the discovery-token signing-secret behavior introduced in #750—should have a scalable, structured configuration path instead of continuing to expand the CLI flag surface.
Rationale
A typed configuration structure can improve discoverability, validation, defaults, and long-term maintainability while preserving a clear migration story for existing deployments.
Affected areas
- Manager startup and CLI flag registration in
cmd/main.go
- Controller and registry configuration currently supplied through manager flags
- Configuration documentation and deployment manifests
- Tests for configuration parsing, defaults, and validation
Required changes
- Define a versioned, typed ComponentConfig-style API or configuration-file schema for manager settings.
- Support loading and validating configuration from a file at startup.
- Establish defaults and precedence rules between configuration-file values and existing CLI flags.
- Migrate or provide a documented path to migrate existing manager settings without introducing new
flag.Var calls for future options.
- Document the configuration format, validation failures, and migration/compatibility behavior.
Acceptance criteria
Context
Requested by @stefanhipfel during review of #750.
Summary
Introduce a configuration-file / ComponentConfig-style configuration model for the metal-operator manager, reducing reliance on additional
flag.Varregistrations.The manager already exposes more than 40 flags. Future settings—such as configuring the discovery-token signing-secret behavior introduced in #750—should have a scalable, structured configuration path instead of continuing to expand the CLI flag surface.
Rationale
A typed configuration structure can improve discoverability, validation, defaults, and long-term maintainability while preserving a clear migration story for existing deployments.
Affected areas
cmd/main.goRequired changes
flag.Varcalls for future options.Acceptance criteria
Context
Requested by @stefanhipfel during review of #750.