Merge duplicated attr/secret/kv flag handling into one function (#2720)

This commit is contained in:
Jeff Mitchell authored and GitHub committed 2022-12-15 13:01:57 -05:00
1 parent 1596b02e53
commit 5353725278
6 files changed
+154 -133

No files matched your search

+27 -3
View File
@@ -205,17 +205,41 @@ func (c *{{ camelCase .SubActionPrefix }}Command) Flags() *base.FlagSets {
{{ if .HasGenericAttributes }}
f = set.NewFlagSet("Attribute Options")
common.PopulateAttributeFlags(c.Command, f, flags{{ camelCase .SubActionPrefix }}Map, c.Func)
attrsInput := common.CombinedSliceFlagValuePopulationInput{
FlagSet: f,
FlagNames: flags{{ camelCase .SubActionPrefix }}Map[c.Func],
FullPopulationFlag: &c.FlagAttributes,
FullPopulationInputName: "attributes",
PiecewisePopulationFlag: &c.FlagAttrs,
PiecewisePopulationInputBaseName: "attr",
}
common.PopulateCombinedSliceFlagValue(attrsInput)
{{ end }}
{{ if .HasGenericSecrets }}
f = set.NewFlagSet("Secrets Options")
common.PopulateSecretFlags(c.Command, f, flags{{ camelCase .SubActionPrefix }}Map, c.Func)
scrtsInput := common.CombinedSliceFlagValuePopulationInput{
FlagSet: f,
FlagNames: flags{{ camelCase .SubActionPrefix }}Map[c.Func],
FullPopulationFlag: &c.FlagSecrets,
FullPopulationInputName: "secrets",
PiecewisePopulationFlag: &c.FlagScrts,
PiecewisePopulationInputBaseName: "secret",
}
common.PopulateCombinedSliceFlagValue(scrtsInput)
{{ end }}
{{ if .HasJsonObject }}
f = set.NewFlagSet("Object Options")
common.PopulateObjectFlags(c.Command, f, flags{{ camelCase .SubActionPrefix }}Map, c.Func)
objsInput := common.CombinedSliceFlagValuePopulationInput{
FlagSet: f,
FlagNames: flags{{ camelCase .SubActionPrefix }}Map[c.Func],
FullPopulationFlag: &c.FlagObject,
FullPopulationInputName: "object",
PiecewisePopulationFlag: &c.FlagKv,
PiecewisePopulationInputBaseName: "kv",
}
common.PopulateCombinedSliceFlagValue(objsInput)
{{ end }}
extra{{ camelCase .SubActionPrefix }}FlagsFunc(c, set, f)