Merge pull request #13444 from justenstall/remove-status-flags

fix(status): remove --show-desc and --show-resources flags
pull/12930/merge
George Jenkins 10 months ago committed by GitHub
commit b91a772d71
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -58,7 +58,12 @@ func newGetAllCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
} }
return tpl(template, data, out) return tpl(template, data, out)
} }
return output.Table.Write(out, &statusPrinter{res, true, false, false, true, false}) return output.Table.Write(out, &statusPrinter{
release: res,
debug: true,
showMetadata: true,
hideNotes: false,
})
}, },
} }
@ -70,7 +75,6 @@ func newGetAllCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
} }
return nil, cobra.ShellCompDirectiveNoFileComp return nil, cobra.ShellCompDirectiveNoFileComp
}) })
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }

@ -158,7 +158,12 @@ func newInstallCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
return errors.Wrap(err, "INSTALLATION FAILED") return errors.Wrap(err, "INSTALLATION FAILED")
} }
return outfmt.Write(out, &statusPrinter{rel, settings.Debug, false, false, false, client.HideNotes}) return outfmt.Write(out, &statusPrinter{
release: rel,
debug: settings.Debug,
showMetadata: false,
hideNotes: client.HideNotes,
})
}, },
} }
@ -214,7 +219,6 @@ func addInstallFlags(cmd *cobra.Command, f *pflag.FlagSet, client *action.Instal
} }
return compVersionFlag(args[requiredArgs-1], toComplete) return compVersionFlag(args[requiredArgs-1], toComplete)
}) })
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }

@ -39,7 +39,7 @@ The tests to be run are defined in the chart that was installed.
func newReleaseTestCmd(cfg *action.Configuration, out io.Writer) *cobra.Command { func newReleaseTestCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
client := action.NewReleaseTesting(cfg) client := action.NewReleaseTesting(cfg)
var outfmt = output.Table outfmt := output.Table
var outputLogs bool var outputLogs bool
var filter []string var filter []string
@ -72,7 +72,12 @@ func newReleaseTestCmd(cfg *action.Configuration, out io.Writer) *cobra.Command
return runErr return runErr
} }
if err := outfmt.Write(out, &statusPrinter{rel, settings.Debug, false, false, false, client.HideNotes}); err != nil { if err := outfmt.Write(out, &statusPrinter{
release: rel,
debug: settings.Debug,
showMetadata: false,
hideNotes: client.HideNotes,
}); err != nil {
return err return err
} }

@ -43,8 +43,8 @@ The status consists of:
- k8s namespace in which the release lives - k8s namespace in which the release lives
- state of the release (can be: unknown, deployed, uninstalled, superseded, failed, uninstalling, pending-install, pending-upgrade or pending-rollback) - state of the release (can be: unknown, deployed, uninstalled, superseded, failed, uninstalling, pending-install, pending-upgrade or pending-rollback)
- revision of the release - revision of the release
- description of the release (can be completion message or error message, need to enable --show-desc) - description of the release (can be completion message or error message)
- list of resources that this release consists of (need to enable --show-resources) - list of resources that this release consists of
- details on last test suite run, if applicable - details on last test suite run, if applicable
- additional notes provided by the chart - additional notes provided by the chart
` `
@ -65,7 +65,6 @@ func newStatusCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
return compListReleases(toComplete, args, cfg) return compListReleases(toComplete, args, cfg)
}, },
RunE: func(_ *cobra.Command, args []string) error { RunE: func(_ *cobra.Command, args []string) error {
// When the output format is a table the resources should be fetched // When the output format is a table the resources should be fetched
// and displayed as a table. When YAML or JSON the resources will be // and displayed as a table. When YAML or JSON the resources will be
// returned. This mirrors the handling in kubectl. // returned. This mirrors the handling in kubectl.
@ -80,7 +79,12 @@ func newStatusCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
// strip chart metadata from the output // strip chart metadata from the output
rel.Chart = nil rel.Chart = nil
return outfmt.Write(out, &statusPrinter{rel, false, client.ShowDescription, client.ShowResources, false, false}) return outfmt.Write(out, &statusPrinter{
release: rel,
debug: false,
showMetadata: false,
hideNotes: false,
})
}, },
} }
@ -94,26 +98,20 @@ func newStatusCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
} }
return nil, cobra.ShellCompDirectiveNoFileComp return nil, cobra.ShellCompDirectiveNoFileComp
}) })
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }
bindOutputFlag(cmd, &outfmt) bindOutputFlag(cmd, &outfmt)
f.BoolVar(&client.ShowDescription, "show-desc", false, "if set, display the description message of the named release")
f.BoolVar(&client.ShowResources, "show-resources", false, "if set, display the resources of the named release")
return cmd return cmd
} }
type statusPrinter struct { type statusPrinter struct {
release *release.Release release *release.Release
debug bool debug bool
showDescription bool showMetadata bool
showResources bool hideNotes bool
showMetadata bool
hideNotes bool
} }
func (s statusPrinter) WriteJSON(out io.Writer) error { func (s statusPrinter) WriteJSON(out io.Writer) error {
@ -140,11 +138,9 @@ func (s statusPrinter) WriteTable(out io.Writer) error {
_, _ = fmt.Fprintf(out, "VERSION: %s\n", s.release.Chart.Metadata.Version) _, _ = fmt.Fprintf(out, "VERSION: %s\n", s.release.Chart.Metadata.Version)
_, _ = fmt.Fprintf(out, "APP_VERSION: %s\n", s.release.Chart.Metadata.AppVersion) _, _ = fmt.Fprintf(out, "APP_VERSION: %s\n", s.release.Chart.Metadata.AppVersion)
} }
if s.showDescription { _, _ = fmt.Fprintf(out, "DESCRIPTION: %s\n", s.release.Info.Description)
_, _ = fmt.Fprintf(out, "DESCRIPTION: %s\n", s.release.Info.Description)
}
if s.showResources && s.release.Info.Resources != nil && len(s.release.Info.Resources) > 0 { if s.release.Info.Resources != nil && len(s.release.Info.Resources) > 0 {
buf := new(bytes.Buffer) buf := new(bytes.Buffer)
printFlags := get.NewHumanPrintFlags() printFlags := get.NewHumanPrintFlags()
typePrinter, _ := printFlags.ToPrinter("") typePrinter, _ := printFlags.ToPrinter("")

@ -46,7 +46,7 @@ func TestStatusCmd(t *testing.T) {
}), }),
}, { }, {
name: "get status of a deployed release, with desc", name: "get status of a deployed release, with desc",
cmd: "status --show-desc flummoxed-chickadee", cmd: "status flummoxed-chickadee",
golden: "output/status-with-desc.txt", golden: "output/status-with-desc.txt",
rels: releasesMockWithStatus(&release.Info{ rels: releasesMockWithStatus(&release.Info{
Status: release.StatusDeployed, Status: release.StatusDeployed,
@ -70,7 +70,7 @@ func TestStatusCmd(t *testing.T) {
}), }),
}, { }, {
name: "get status of a deployed release with resources", name: "get status of a deployed release with resources",
cmd: "status --show-resources flummoxed-chickadee", cmd: "status flummoxed-chickadee",
golden: "output/status-with-resources.txt", golden: "output/status-with-resources.txt",
rels: releasesMockWithStatus( rels: releasesMockWithStatus(
&release.Info{ &release.Info{
@ -79,7 +79,7 @@ func TestStatusCmd(t *testing.T) {
), ),
}, { }, {
name: "get status of a deployed release with resources in json", name: "get status of a deployed release with resources in json",
cmd: "status --show-resources flummoxed-chickadee -o json", cmd: "status flummoxed-chickadee -o json",
golden: "output/status-with-resources.json", golden: "output/status-with-resources.json",
rels: releasesMockWithStatus( rels: releasesMockWithStatus(
&release.Info{ &release.Info{

@ -3,6 +3,7 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None
NOTES: NOTES:
PARENT NOTES PARENT NOTES

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -6,6 +6,7 @@ REVISION: 1
CHART: foo CHART: foo
VERSION: 0.1.0-beta.1 VERSION: 0.1.0-beta.1
APP_VERSION: 1.0 APP_VERSION: 1.0
DESCRIPTION: Release mock
TEST SUITE: None TEST SUITE: None
USER-SUPPLIED VALUES: USER-SUPPLIED VALUES:
name: value name: value

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,6 +3,7 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: pending-install STATUS: pending-install
REVISION: 1 REVISION: 1
DESCRIPTION: Dry run complete
TEST SUITE: None TEST SUITE: None
HOOKS: HOOKS:
MANIFEST: MANIFEST:

@ -3,6 +3,7 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: pending-install STATUS: pending-install
REVISION: 1 REVISION: 1
DESCRIPTION: Dry run complete
TEST SUITE: None TEST SUITE: None
HOOKS: HOOKS:
MANIFEST: MANIFEST:

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -3,6 +3,7 @@ LAST DEPLOYED: Sat Jan 16 00:00:00 2016
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 0 REVISION: 0
DESCRIPTION:
TEST SUITE: None TEST SUITE: None
NOTES: NOTES:
release notes release notes

@ -3,4 +3,5 @@ LAST DEPLOYED: Sat Jan 16 00:00:00 2016
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 0 REVISION: 0
DESCRIPTION:
TEST SUITE: None TEST SUITE: None

@ -3,6 +3,7 @@ LAST DEPLOYED: Sat Jan 16 00:00:00 2016
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 0 REVISION: 0
DESCRIPTION:
TEST SUITE: passing-test TEST SUITE: passing-test
Last Started: Mon Jan 2 15:04:05 2006 Last Started: Mon Jan 2 15:04:05 2006
Last Completed: Mon Jan 2 15:04:07 2006 Last Completed: Mon Jan 2 15:04:07 2006

@ -3,4 +3,5 @@ LAST DEPLOYED: Sat Jan 16 00:00:00 2016
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 0 REVISION: 0
DESCRIPTION:
TEST SUITE: None TEST SUITE: None

@ -3,4 +3,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 1 REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 3 REVISION: 3
DESCRIPTION: Install complete
TEST SUITE: None TEST SUITE: None

@ -4,6 +4,7 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 3 REVISION: 3
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None
NOTES: NOTES:
PARENT NOTES PARENT NOTES

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 2 REVISION: 2
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 2 REVISION: 2
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 5 REVISION: 5
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 6 REVISION: 6
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 4 REVISION: 4
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 3 REVISION: 3
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 3 REVISION: 3
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -4,4 +4,5 @@ LAST DEPLOYED: Fri Sep 2 22:04:05 1977
NAMESPACE: default NAMESPACE: default
STATUS: deployed STATUS: deployed
REVISION: 3 REVISION: 3
DESCRIPTION: Upgrade complete
TEST SUITE: None TEST SUITE: None

@ -160,7 +160,12 @@ func newUpgradeCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
if err != nil { if err != nil {
return err return err
} }
return outfmt.Write(out, &statusPrinter{rel, settings.Debug, false, false, false, instClient.HideNotes}) return outfmt.Write(out, &statusPrinter{
release: rel,
debug: settings.Debug,
showMetadata: false,
hideNotes: instClient.HideNotes,
})
} else if err != nil { } else if err != nil {
return err return err
} }
@ -238,7 +243,6 @@ func newUpgradeCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
}() }()
rel, err := client.RunWithContext(ctx, args[0], ch, vals) rel, err := client.RunWithContext(ctx, args[0], ch, vals)
if err != nil { if err != nil {
return errors.Wrap(err, "UPGRADE FAILED") return errors.Wrap(err, "UPGRADE FAILED")
} }
@ -247,7 +251,12 @@ func newUpgradeCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
fmt.Fprintf(out, "Release %q has been upgraded. Happy Helming!\n", args[0]) fmt.Fprintf(out, "Release %q has been upgraded. Happy Helming!\n", args[0])
} }
return outfmt.Write(out, &statusPrinter{rel, settings.Debug, false, false, false, client.HideNotes}) return outfmt.Write(out, &statusPrinter{
release: rel,
debug: settings.Debug,
showMetadata: false,
hideNotes: client.HideNotes,
})
}, },
} }
@ -291,7 +300,6 @@ func newUpgradeCmd(cfg *action.Configuration, out io.Writer) *cobra.Command {
} }
return compVersionFlag(args[1], toComplete) return compVersionFlag(args[1], toComplete)
}) })
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }

@ -32,15 +32,6 @@ type Status struct {
Version int Version int
// If true, display description to output format,
// only affect print type table.
// TODO Helm 4: Remove this flag and output the description by default.
ShowDescription bool
// ShowResources sets if the resources should be retrieved with the status.
// TODO Helm 4: Remove this flag and output the resources by default.
ShowResources bool
// ShowResourcesTable is used with ShowResources. When true this will cause // ShowResourcesTable is used with ShowResources. When true this will cause
// the resulting objects to be retrieved as a kind=table. // the resulting objects to be retrieved as a kind=table.
ShowResourcesTable bool ShowResourcesTable bool
@ -59,10 +50,6 @@ func (s *Status) Run(name string) (*release.Release, error) {
return nil, err return nil, err
} }
if !s.ShowResources {
return s.cfg.releaseContent(name, s.Version)
}
rel, err := s.cfg.releaseContent(name, s.Version) rel, err := s.cfg.releaseContent(name, s.Version)
if err != nil { if err != nil {
return nil, err return nil, err

Loading…
Cancel
Save