use containing API group when resolving shortname from discovery

This commit is contained in:
Di Xu 2018-01-24 17:40:21 +08:00
parent 2f4cca73af
commit 97ec47ba55
2 changed files with 27 additions and 1 deletions

View File

@ -115,6 +115,7 @@ func (e shortcutExpander) expandResourceShortcut(resource schema.GroupVersionRes
} }
if resource.Resource == item.ShortForm.Resource { if resource.Resource == item.ShortForm.Resource {
resource.Resource = item.LongForm.Resource resource.Resource = item.LongForm.Resource
resource.Group = item.LongForm.Group
return resource return resource
} }
} }

View File

@ -46,7 +46,7 @@ func TestReplaceAliases(t *testing.T) {
{ {
name: "hpa-priority", name: "hpa-priority",
arg: "hpa", arg: "hpa",
expected: schema.GroupVersionResource{Resource: "superhorizontalpodautoscalers"}, expected: schema.GroupVersionResource{Resource: "superhorizontalpodautoscalers", Group: "autoscaling"},
srvRes: []*metav1.APIResourceList{ srvRes: []*metav1.APIResourceList{
{ {
GroupVersion: "autoscaling/v1", GroupVersion: "autoscaling/v1",
@ -68,6 +68,31 @@ func TestReplaceAliases(t *testing.T) {
}, },
}, },
}, },
{
name: "resource-override",
arg: "dpl",
expected: schema.GroupVersionResource{Resource: "deployments", Group: "foo"},
srvRes: []*metav1.APIResourceList{
{
GroupVersion: "foo/v1",
APIResources: []metav1.APIResource{
{
Name: "deployments",
ShortNames: []string{"dpl"},
},
},
},
{
GroupVersion: "extension/v1beta1",
APIResources: []metav1.APIResource{
{
Name: "deployments",
ShortNames: []string{"deploy"},
},
},
},
},
},
} }
ds := &fakeDiscoveryClient{} ds := &fakeDiscoveryClient{}