Skip to content

Commit e5f0b76

Browse files
committed
Fix the bug after solving issue16
1 parent 9db3ad3 commit e5f0b76

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

options.go

+21-4
Original file line numberDiff line numberDiff line change
@@ -120,14 +120,31 @@ func (o *Options) Complete(f cmdutil.Factory, args []string) error {
120120
}
121121
o.gvks = []schema.GroupVersionKind{gvk}
122122
} else {
123-
gvk, err := o.getGVK(strings.Split(o.resource, ".")[0])
124-
if err == nil {
125-
o.gvks = []schema.GroupVersionKind{gvk}
126-
} else {
123+
var gvk schema.GroupVersionKind
124+
var err error
125+
var idx int
126+
for i := 1; i <= len(o.resource); i++ {
127+
gvk, err = o.getGVK(o.resource[:i])
128+
if err != nil {
129+
continue
130+
}
131+
idx = i
132+
break
133+
}
134+
if gvk.Empty() {
127135
o.gvks, err = o.listGVKs()
128136
if err != nil {
129137
return err
130138
}
139+
} else {
140+
// The left part of the input should be the resource name. E.g., "hpa", "sts", etc
141+
// The right part of the input should be the field name or regex. E.g., "spec.replicas", "spec.*containers", etc
142+
right := strings.TrimLeft(o.resource, o.resource[:idx])
143+
o.inputFieldPath, err = regexp.Compile(strings.ToLower(right))
144+
if err != nil {
145+
return err
146+
}
147+
o.gvks = []schema.GroupVersionKind{gvk}
131148
}
132149
}
133150
return nil

0 commit comments

Comments
 (0)