refactor builder in kubectl factory

This commit is contained in:
ymqytw
2017-11-07 17:42:03 -08:00
parent 42d5dc709e
commit 06c5be9802
25 changed files with 125 additions and 159 deletions

View File

@@ -29,6 +29,7 @@ go_library(
"//vendor/github.com/spf13/pflag:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",

View File

@@ -28,6 +28,7 @@ import (
"k8s.io/apimachinery/pkg/api/meta"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/serializer"
@@ -481,6 +482,19 @@ func (f *FakeFactory) NewBuilder() *resource.Builder {
return resource.NewBuilder(mapper, f.CategoryExpander(), typer, resource.ClientMapperFunc(f.ClientForMapping), f.Decoder(true))
}
func (f *FakeFactory) NewUnstructuredBuilder() *resource.Builder {
mapper, typer, err := f.UnstructuredObject()
if err != nil {
cmdutil.CheckErr(err)
}
return resource.NewBuilder(
mapper,
f.CategoryExpander(),
typer,
resource.ClientMapperFunc(f.UnstructuredClientForMapping),
unstructured.UnstructuredJSONScheme)
}
func (f *FakeFactory) DefaultResourceFilterOptions(cmd *cobra.Command, withNamespace bool) *printers.PrintOptions {
return &printers.PrintOptions{}
}
@@ -758,6 +772,19 @@ func (f *fakeAPIFactory) NewBuilder() *resource.Builder {
return resource.NewBuilder(mapper, f.CategoryExpander(), typer, resource.ClientMapperFunc(f.ClientForMapping), f.Decoder(true))
}
func (f *fakeAPIFactory) NewUnstructuredBuilder() *resource.Builder {
mapper, typer, err := f.UnstructuredObject()
if err != nil {
cmdutil.CheckErr(err)
}
return resource.NewBuilder(
mapper,
f.CategoryExpander(),
typer,
resource.ClientMapperFunc(f.UnstructuredClientForMapping),
unstructured.UnstructuredJSONScheme)
}
func (f *fakeAPIFactory) SuggestedPodTemplateResources() []schema.GroupResource {
return []schema.GroupResource{}
}