mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-09 20:17:41 +00:00
Add more validate conditions when run kubectl get with --raw
This commit is contained in:
parent
8d24ce1137
commit
a0a69a3583
@ -25,6 +25,8 @@ import (
|
|||||||
"github.com/golang/glog"
|
"github.com/golang/glog"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
|
|
||||||
|
"net/url"
|
||||||
|
|
||||||
kapierrors "k8s.io/apimachinery/pkg/api/errors"
|
kapierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||||
"k8s.io/apimachinery/pkg/api/meta"
|
"k8s.io/apimachinery/pkg/api/meta"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
@ -213,6 +215,12 @@ func (options *GetOptions) Validate(cmd *cobra.Command) error {
|
|||||||
if len(options.Raw) > 0 && (options.Watch || options.WatchOnly || len(options.LabelSelector) > 0 || options.Export) {
|
if len(options.Raw) > 0 && (options.Watch || options.WatchOnly || len(options.LabelSelector) > 0 || options.Export) {
|
||||||
return fmt.Errorf("--raw may not be specified with other flags that filter the server request or alter the output")
|
return fmt.Errorf("--raw may not be specified with other flags that filter the server request or alter the output")
|
||||||
}
|
}
|
||||||
|
if len(cmdutil.GetFlagString(cmd, "output")) > 0 {
|
||||||
|
return cmdutil.UsageErrorf(cmd, "--raw and --output are mutually exclusive")
|
||||||
|
}
|
||||||
|
if _, err := url.ParseRequestURI(options.Raw); err != nil {
|
||||||
|
return cmdutil.UsageErrorf(cmd, "--raw must be a valid URL path: %v", err)
|
||||||
|
}
|
||||||
if cmdutil.GetFlagBool(cmd, "show-labels") {
|
if cmdutil.GetFlagBool(cmd, "show-labels") {
|
||||||
outputOption := cmd.Flags().Lookup("output").Value.String()
|
outputOption := cmd.Flags().Lookup("output").Value.String()
|
||||||
if outputOption != "" && outputOption != "wide" {
|
if outputOption != "" && outputOption != "wide" {
|
||||||
|
Loading…
Reference in New Issue
Block a user