// NewCmdConfig is a wrapper for the Kubernetes cli config command func NewCmdConfig(parentName, name string, out, errOut io.Writer) *cobra.Command { pathOptions := &kclientcmd.PathOptions{ GlobalFile: cmdconfig.RecommendedHomeFile, EnvVar: cmdconfig.OpenShiftConfigPathEnvVar, ExplicitFileFlag: cmdconfig.OpenShiftConfigFlagName, GlobalFileSubpath: cmdconfig.OpenShiftConfigHomeDirFileName, LoadingRules: cmdconfig.NewOpenShiftClientConfigLoadingRules(), } pathOptions.LoadingRules.DoNotResolvePaths = true cmd := config.NewCmdConfig(pathOptions, out, errOut) cmd.Short = "Change configuration files for the client" cmd.Long = configLong cmd.Example = fmt.Sprintf(configExample, parentName, name) // normalize long descs and examples // TODO remove when normalization is moved upstream templates.NormalizeAll(cmd) adjustCmdExamples(cmd, parentName, name) return cmd }
// NewCmdCreate is a wrapper for the Kubernetes cli create command func NewCmdCreate(parentName string, f *clientcmd.Factory, out, errOut io.Writer) *cobra.Command { cmd := kcmd.NewCmdCreate(f.Factory, out, errOut) cmd.Long = createLong cmd.Example = fmt.Sprintf(createExample, parentName) // normalize long descs and examples // TODO remove when normalization is moved upstream templates.NormalizeAll(cmd) // create subcommands cmd.AddCommand(create.NewCmdCreateRoute(parentName, f, out, errOut)) cmd.AddCommand(create.NewCmdCreatePolicyBinding(create.PolicyBindingRecommendedName, parentName+" create "+create.PolicyBindingRecommendedName, f, out)) cmd.AddCommand(create.NewCmdCreateDeploymentConfig(create.DeploymentConfigRecommendedName, parentName+" create "+create.DeploymentConfigRecommendedName, f, out)) cmd.AddCommand(create.NewCmdCreateClusterQuota(create.ClusterQuotaRecommendedName, parentName+" create "+create.ClusterQuotaRecommendedName, f, out)) cmd.AddCommand(create.NewCmdCreateUser(create.UserRecommendedName, parentName+" create "+create.UserRecommendedName, f, out)) cmd.AddCommand(create.NewCmdCreateIdentity(create.IdentityRecommendedName, parentName+" create "+create.IdentityRecommendedName, f, out)) cmd.AddCommand(create.NewCmdCreateUserIdentityMapping(create.UserIdentityMappingRecommendedName, parentName+" create "+create.UserIdentityMappingRecommendedName, f, out)) cmd.AddCommand(create.NewCmdCreateImageStream(create.ImageStreamRecommendedName, parentName+" create "+create.ImageStreamRecommendedName, f, out)) adjustCmdExamples(cmd, parentName, "create") return cmd }