Documentation
¶
Overview ¶
Package configinput bridges domain hosts onto the config renderer's input.
internal/configgen deliberately mirrors the few domain types it needs (configgen.FirewallRule, configgen.AdvancedUnsafeRoute) rather than importing internal/models, so that GeneratorInput stays an explicit render contract instead of a view onto the domain model. The cost of that boundary is that every caller building a GeneratorInput has to translate models.HostAdvanced field by field — and each new advanced field then has to be wired into every caller identically or it is silently dropped from one of them.
This package holds that translation once. It is the only place that knows how a host's advanced overrides map onto the renderer, so adding an advanced field is a single edit.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyHostAdvanced ¶
func ApplyHostAdvanced(input *configgen.GeneratorInput, adv *models.HostAdvanced)
ApplyHostAdvanced copies a host's advanced overrides onto input.
A nil adv leaves input untouched, so a host with no advanced block renders byte-identically to before. Slice-valued overrides are appended, not assigned: HostFirewallInbound is additive on top of the network-wide policy the caller has already put in FirewallInbound.
Types ¶
This section is empty.