Preserve Audita module selections in YAML output

This commit is contained in:
2026-09-25 19:42:22 +00:00
parent e5c06019b3
commit 73c4986f3d
3 changed files with 55 additions and 12 deletions

View File

@@ -24,20 +24,25 @@ func (cfg StorageS3Config) MarshalYAML() (any, error) {
// MarshalYAML exposes only public Audita credential reference names.
func (cfg AuditaConfig) MarshalYAML() (any, error) {
type safeAudita struct {
Binary string `yaml:"binary"`
Timeout string `yaml:"timeout"`
Credentials []string `yaml:"credentials,omitempty"`
Modules []string `yaml:"modules"`
Overlay string `yaml:"overlay"`
ProposalProfile string `yaml:"proposal_profile"`
ValidationProfile string `yaml:"validation_profile"`
TranscriptDescription string `yaml:"transcript_description"`
ConfigPath string `yaml:"config_path"`
OutputSchema string `yaml:"output_schema"`
Binary string `yaml:"binary"`
Timeout string `yaml:"timeout"`
Credentials []string `yaml:"credentials,omitempty"`
Modules *[]string `yaml:"modules,omitempty"`
Overlay string `yaml:"overlay"`
ProposalProfile string `yaml:"proposal_profile"`
ValidationProfile string `yaml:"validation_profile"`
TranscriptDescription string `yaml:"transcript_description"`
ConfigPath string `yaml:"config_path"`
OutputSchema string `yaml:"output_schema"`
}
// A nil pointer omits the override; a pointer to an empty slice disables modules.
var modules *[]string
if cfg.Modules != nil {
modules = &cfg.Modules
}
return safeAudita{
Binary: cfg.Binary, Timeout: cfg.Timeout, Credentials: secretReferenceNames(cfg.Credentials),
Modules: cfg.Modules, Overlay: cfg.Overlay, ProposalProfile: cfg.ProposalProfile,
Modules: modules, Overlay: cfg.Overlay, ProposalProfile: cfg.ProposalProfile,
ValidationProfile: cfg.ValidationProfile, TranscriptDescription: cfg.TranscriptDescription,
ConfigPath: cfg.ConfigPath, OutputSchema: cfg.OutputSchema,
}, nil