Merge pull request #70950 from yue9944882/chore/prune-cli-describer-internal

Use versioned types in kubectl describer
This commit is contained in:
k8s-ci-robot
2018-11-15 15:00:12 -08:00
committed by GitHub
39 changed files with 6181 additions and 5073 deletions

View File

@@ -2,12 +2,30 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
go_library(
name = "go_default_library",
srcs = ["convert.go"],
srcs = [
"convert.go",
"import_known_versions.go",
],
importpath = "k8s.io/kubernetes/pkg/kubectl/cmd/convert",
visibility = ["//visibility:public"],
deps = [
"//pkg/api/legacyscheme:go_default_library",
"//pkg/apis/apps/install:go_default_library",
"//pkg/apis/authentication/install:go_default_library",
"//pkg/apis/authorization/install:go_default_library",
"//pkg/apis/autoscaling/install:go_default_library",
"//pkg/apis/batch/install:go_default_library",
"//pkg/apis/certificates/install:go_default_library",
"//pkg/apis/coordination/install:go_default_library",
"//pkg/apis/core:go_default_library",
"//pkg/apis/core/install:go_default_library",
"//pkg/apis/events/install:go_default_library",
"//pkg/apis/extensions/install:go_default_library",
"//pkg/apis/policy/install:go_default_library",
"//pkg/apis/rbac/install:go_default_library",
"//pkg/apis/scheduling/install:go_default_library",
"//pkg/apis/settings/install:go_default_library",
"//pkg/apis/storage/install:go_default_library",
"//pkg/kubectl/cmd/util:go_default_library",
"//pkg/kubectl/util/i18n:go_default_library",
"//pkg/kubectl/util/templates:go_default_library",

View File

@@ -0,0 +1,37 @@
/*
Copyright 2016 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package convert
// These imports are the API groups the client will support.
// TODO: Remove these manual install once we don't need legacy scheme in convert
import (
_ "k8s.io/kubernetes/pkg/apis/apps/install"
_ "k8s.io/kubernetes/pkg/apis/authentication/install"
_ "k8s.io/kubernetes/pkg/apis/authorization/install"
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
_ "k8s.io/kubernetes/pkg/apis/batch/install"
_ "k8s.io/kubernetes/pkg/apis/certificates/install"
_ "k8s.io/kubernetes/pkg/apis/coordination/install"
_ "k8s.io/kubernetes/pkg/apis/core/install"
_ "k8s.io/kubernetes/pkg/apis/events/install"
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
_ "k8s.io/kubernetes/pkg/apis/policy/install"
_ "k8s.io/kubernetes/pkg/apis/rbac/install"
_ "k8s.io/kubernetes/pkg/apis/scheduling/install"
_ "k8s.io/kubernetes/pkg/apis/settings/install"
_ "k8s.io/kubernetes/pkg/apis/storage/install"
)

View File

@@ -7,10 +7,10 @@ go_library(
visibility = ["//visibility:public"],
deps = [
"//pkg/kubectl/cmd/util:go_default_library",
"//pkg/kubectl/describe:go_default_library",
"//pkg/kubectl/describe/versioned:go_default_library",
"//pkg/kubectl/util/i18n:go_default_library",
"//pkg/kubectl/util/templates:go_default_library",
"//pkg/printers:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/meta:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/errors:go_default_library",
@@ -30,9 +30,9 @@ go_test(
embed = [":go_default_library"],
deps = [
"//pkg/kubectl/cmd/testing:go_default_library",
"//pkg/kubectl/describe:go_default_library",
"//pkg/kubectl/describe/versioned:go_default_library",
"//pkg/kubectl/scheme:go_default_library",
"//pkg/printers:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/meta:go_default_library",
"//staging/src/k8s.io/cli-runtime/pkg/genericclioptions:go_default_library",
"//staging/src/k8s.io/cli-runtime/pkg/genericclioptions/resource:go_default_library",

View File

@@ -29,10 +29,10 @@ import (
"k8s.io/cli-runtime/pkg/genericclioptions"
"k8s.io/cli-runtime/pkg/genericclioptions/resource"
cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
"k8s.io/kubernetes/pkg/kubectl/describe"
describeversioned "k8s.io/kubernetes/pkg/kubectl/describe/versioned"
"k8s.io/kubernetes/pkg/kubectl/util/i18n"
"k8s.io/kubernetes/pkg/kubectl/util/templates"
"k8s.io/kubernetes/pkg/printers"
)
var (
@@ -74,7 +74,7 @@ type DescribeOptions struct {
Selector string
Namespace string
Describer func(*meta.RESTMapping) (printers.Describer, error)
Describer func(*meta.RESTMapping) (describe.Describer, error)
NewBuilder func() *resource.Builder
BuilderArgs []string
@@ -83,7 +83,7 @@ type DescribeOptions struct {
AllNamespaces bool
IncludeUninitialized bool
DescriberSettings *printers.DescriberSettings
DescriberSettings *describe.DescriberSettings
FilenameOptions *resource.FilenameOptions
genericclioptions.IOStreams
@@ -92,7 +92,7 @@ type DescribeOptions struct {
func NewCmdDescribe(parent string, f cmdutil.Factory, streams genericclioptions.IOStreams) *cobra.Command {
o := &DescribeOptions{
FilenameOptions: &resource.FilenameOptions{},
DescriberSettings: &printers.DescriberSettings{
DescriberSettings: &describe.DescriberSettings{
ShowEvents: true,
},
@@ -138,7 +138,7 @@ func (o *DescribeOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args [
o.BuilderArgs = args
o.Describer = func(mapping *meta.RESTMapping) (printers.Describer, error) {
o.Describer = func(mapping *meta.RESTMapping) (describe.Describer, error) {
return describeversioned.DescriberFn(f, mapping)
}

View File

@@ -27,19 +27,19 @@ import (
"k8s.io/cli-runtime/pkg/genericclioptions/resource"
"k8s.io/client-go/rest/fake"
cmdtesting "k8s.io/kubernetes/pkg/kubectl/cmd/testing"
describe "k8s.io/kubernetes/pkg/kubectl/describe/versioned"
"k8s.io/kubernetes/pkg/kubectl/describe"
versioneddescribe "k8s.io/kubernetes/pkg/kubectl/describe/versioned"
"k8s.io/kubernetes/pkg/kubectl/scheme"
"k8s.io/kubernetes/pkg/printers"
)
// Verifies that schemas that are not in the master tree of Kubernetes can be retrieved via Get.
func TestDescribeUnknownSchemaObject(t *testing.T) {
d := &testDescriber{Output: "test output"}
oldFn := describe.DescriberFn
oldFn := versioneddescribe.DescriberFn
defer func() {
describe.DescriberFn = oldFn
versioneddescribe.DescriberFn = oldFn
}()
describe.DescriberFn = d.describerFor
versioneddescribe.DescriberFn = d.describerFor
tf := cmdtesting.NewTestFactory().WithNamespace("non-default")
defer tf.Cleanup()
@@ -67,11 +67,11 @@ func TestDescribeUnknownSchemaObject(t *testing.T) {
// Verifies that schemas that are not in the master tree of Kubernetes can be retrieved via Get.
func TestDescribeUnknownNamespacedSchemaObject(t *testing.T) {
d := &testDescriber{Output: "test output"}
oldFn := describe.DescriberFn
oldFn := versioneddescribe.DescriberFn
defer func() {
describe.DescriberFn = oldFn
versioneddescribe.DescriberFn = oldFn
}()
describe.DescriberFn = d.describerFor
versioneddescribe.DescriberFn = d.describerFor
tf := cmdtesting.NewTestFactory()
defer tf.Cleanup()
@@ -99,11 +99,11 @@ func TestDescribeUnknownNamespacedSchemaObject(t *testing.T) {
func TestDescribeObject(t *testing.T) {
d := &testDescriber{Output: "test output"}
oldFn := describe.DescriberFn
oldFn := versioneddescribe.DescriberFn
defer func() {
describe.DescriberFn = oldFn
versioneddescribe.DescriberFn = oldFn
}()
describe.DescriberFn = d.describerFor
versioneddescribe.DescriberFn = d.describerFor
_, _, rc := cmdtesting.TestData()
tf := cmdtesting.NewTestFactory().WithNamespace("test")
@@ -140,11 +140,11 @@ func TestDescribeObject(t *testing.T) {
func TestDescribeListObjects(t *testing.T) {
d := &testDescriber{Output: "test output"}
oldFn := describe.DescriberFn
oldFn := versioneddescribe.DescriberFn
defer func() {
describe.DescriberFn = oldFn
versioneddescribe.DescriberFn = oldFn
}()
describe.DescriberFn = d.describerFor
versioneddescribe.DescriberFn = d.describerFor
pods, _, _ := cmdtesting.TestData()
tf := cmdtesting.NewTestFactory().WithNamespace("test")
@@ -167,11 +167,11 @@ func TestDescribeListObjects(t *testing.T) {
func TestDescribeObjectShowEvents(t *testing.T) {
d := &testDescriber{Output: "test output"}
oldFn := describe.DescriberFn
oldFn := versioneddescribe.DescriberFn
defer func() {
describe.DescriberFn = oldFn
versioneddescribe.DescriberFn = oldFn
}()
describe.DescriberFn = d.describerFor
versioneddescribe.DescriberFn = d.describerFor
pods, _, _ := cmdtesting.TestData()
tf := cmdtesting.NewTestFactory().WithNamespace("test")
@@ -193,11 +193,11 @@ func TestDescribeObjectShowEvents(t *testing.T) {
func TestDescribeObjectSkipEvents(t *testing.T) {
d := &testDescriber{Output: "test output"}
oldFn := describe.DescriberFn
oldFn := versioneddescribe.DescriberFn
defer func() {
describe.DescriberFn = oldFn
versioneddescribe.DescriberFn = oldFn
}()
describe.DescriberFn = d.describerFor
versioneddescribe.DescriberFn = d.describerFor
pods, _, _ := cmdtesting.TestData()
tf := cmdtesting.NewTestFactory().WithNamespace("test")
@@ -247,16 +247,16 @@ func TestDescribeHelpMessage(t *testing.T) {
type testDescriber struct {
Name, Namespace string
Settings printers.DescriberSettings
Settings describe.DescriberSettings
Output string
Err error
}
func (t *testDescriber) Describe(namespace, name string, describerSettings printers.DescriberSettings) (output string, err error) {
func (t *testDescriber) Describe(namespace, name string, describerSettings describe.DescriberSettings) (output string, err error) {
t.Namespace, t.Name = namespace, name
t.Settings = describerSettings
return t.Output, t.Err
}
func (t *testDescriber) describerFor(restClientGetter genericclioptions.RESTClientGetter, mapping *meta.RESTMapping) (printers.Describer, error) {
func (t *testDescriber) describerFor(restClientGetter genericclioptions.RESTClientGetter, mapping *meta.RESTMapping) (describe.Describer, error) {
return t, nil
}