Show experimental flags and subcommands if enabled

Signed-off-by: John Stephens <johnstep@docker.com>
This commit is contained in:
John Stephens 2016-11-11 17:43:06 -08:00
parent 076bfc0647
commit 13d6a1bb67
1 changed files with 8 additions and 4 deletions

View File

@ -126,8 +126,10 @@ func dockerPreRun(opts *cliflags.ClientOptions) {
func hideUnsupportedFeatures(cmd *cobra.Command, clientVersion string, hasExperimental bool) {
cmd.Flags().VisitAll(func(f *pflag.Flag) {
// hide experimental flags
if _, ok := f.Annotations["experimental"]; ok {
f.Hidden = true
if !hasExperimental {
if _, ok := f.Annotations["experimental"]; ok {
f.Hidden = true
}
}
// hide flags not supported by the server
@ -139,8 +141,10 @@ func hideUnsupportedFeatures(cmd *cobra.Command, clientVersion string, hasExperi
for _, subcmd := range cmd.Commands() {
// hide experimental subcommands
if _, ok := subcmd.Tags["experimental"]; ok {
subcmd.Hidden = true
if !hasExperimental {
if _, ok := subcmd.Tags["experimental"]; ok {
subcmd.Hidden = true
}
}
// hide subcommands not supported by the server