fix kubectl annotate local error

Kubernetes-commit: 568edf72ec1fc10368a19be8184b201265e6c39e
This commit is contained in:
zhouya0 2020-01-08 17:10:08 +08:00 committed by Kubernetes Publisher
parent e6fe1923da
commit cbbf8d8bf6
1 changed files with 11 additions and 2 deletions

View File

@ -207,8 +207,17 @@ func (o AnnotateOptions) Validate() error {
if o.all && len(o.fieldSelector) > 0 {
return fmt.Errorf("cannot set --all and --field-selector at the same time")
}
if len(o.resources) < 1 && cmdutil.IsFilenameSliceEmpty(o.Filenames, o.Kustomize) {
return fmt.Errorf("one or more resources must be specified as <resource> <name> or <resource>/<name>")
if !o.local {
if len(o.resources) < 1 && cmdutil.IsFilenameSliceEmpty(o.Filenames, o.Kustomize) {
return fmt.Errorf("one or more resources must be specified as <resource> <name> or <resource>/<name>")
}
} else {
if len(o.resources) > 0 {
return fmt.Errorf("can only use local files by -f rsrc.yaml or --filename=rsrc.json when --local=true is set")
}
if cmdutil.IsFilenameSliceEmpty(o.Filenames, o.Kustomize) {
return fmt.Errorf("one or more files must be specified as -f rsrc.yaml or --filename=rsrc.json")
}
}
if len(o.newAnnotations) < 1 && len(o.removeAnnotations) < 1 {
return fmt.Errorf("at least one annotation update is required")