mirror of
https://github.com/ceph/ceph-csi.git
synced 2025-06-13 10:33:35 +00:00
vendor updates
This commit is contained in:
7
vendor/k8s.io/kubernetes/pkg/kubectl/explain/BUILD
generated
vendored
7
vendor/k8s.io/kubernetes/pkg/kubectl/explain/BUILD
generated
vendored
@ -16,6 +16,7 @@ go_library(
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||
"//vendor/k8s.io/kube-openapi/pkg/util/proto:go_default_library",
|
||||
],
|
||||
)
|
||||
@ -46,12 +47,10 @@ go_test(
|
||||
"typename_test.go",
|
||||
],
|
||||
data = ["test-swagger.json"],
|
||||
importpath = "k8s.io/kubernetes/pkg/kubectl/explain",
|
||||
library = ":go_default_library",
|
||||
embed = [":go_default_library"],
|
||||
deps = [
|
||||
"//pkg/kubectl/cmd/testing:go_default_library",
|
||||
"//pkg/kubectl/cmd/util/openapi/testing:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
||||
"//pkg/kubectl/scheme:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||
],
|
||||
)
|
||||
|
5
vendor/k8s.io/kubernetes/pkg/kubectl/explain/explain.go
generated
vendored
5
vendor/k8s.io/kubernetes/pkg/kubectl/explain/explain.go
generated
vendored
@ -21,6 +21,7 @@ import (
|
||||
"strings"
|
||||
|
||||
"k8s.io/apimachinery/pkg/api/meta"
|
||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||
"k8s.io/kube-openapi/pkg/util/proto"
|
||||
)
|
||||
|
||||
@ -51,7 +52,7 @@ func SplitAndParseResourceRequest(inResource string, mapper meta.RESTMapper) (st
|
||||
// PrintModelDescription prints the description of a specific model or dot path.
|
||||
// If recursive, all components nested within the fields of the schema will be
|
||||
// printed.
|
||||
func PrintModelDescription(fieldsPath []string, w io.Writer, schema proto.Schema, recursive bool) error {
|
||||
func PrintModelDescription(fieldsPath []string, w io.Writer, schema proto.Schema, gvk schema.GroupVersionKind, recursive bool) error {
|
||||
fieldName := ""
|
||||
if len(fieldsPath) != 0 {
|
||||
fieldName = fieldsPath[len(fieldsPath)-1]
|
||||
@ -64,5 +65,5 @@ func PrintModelDescription(fieldsPath []string, w io.Writer, schema proto.Schema
|
||||
}
|
||||
b := fieldsPrinterBuilder{Recursive: recursive}
|
||||
f := &Formatter{Writer: w, Wrap: 80}
|
||||
return PrintModel(fieldName, f, b, schema)
|
||||
return PrintModel(fieldName, f, b, schema, gvk)
|
||||
}
|
||||
|
11
vendor/k8s.io/kubernetes/pkg/kubectl/explain/explain_test.go
generated
vendored
11
vendor/k8s.io/kubernetes/pkg/kubectl/explain/explain_test.go
generated
vendored
@ -20,8 +20,7 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"k8s.io/apimachinery/pkg/api/meta"
|
||||
cmdtesting "k8s.io/kubernetes/pkg/kubectl/cmd/testing"
|
||||
"k8s.io/kubernetes/pkg/kubectl/scheme"
|
||||
)
|
||||
|
||||
func TestSplitAndParseResourceRequest(t *testing.T) {
|
||||
@ -57,7 +56,7 @@ func TestSplitAndParseResourceRequest(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
mapper := getMapper()
|
||||
mapper := scheme.Registry.RESTMapper(scheme.Versions...)
|
||||
for _, test := range tests {
|
||||
gotInResource, gotFieldsPath, err := SplitAndParseResourceRequest(test.inresource, mapper)
|
||||
if err != nil {
|
||||
@ -73,9 +72,3 @@ func TestSplitAndParseResourceRequest(t *testing.T) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func getMapper() meta.RESTMapper {
|
||||
f, _, _, _ := cmdtesting.NewTestFactory()
|
||||
mapper, _ := f.Object()
|
||||
return mapper
|
||||
}
|
||||
|
4
vendor/k8s.io/kubernetes/pkg/kubectl/explain/formatter.go
generated
vendored
4
vendor/k8s.io/kubernetes/pkg/kubectl/explain/formatter.go
generated
vendored
@ -105,10 +105,10 @@ func wrapString(str string, wrap int) []string {
|
||||
l := line{wrap: wrap}
|
||||
|
||||
for _, word := range words {
|
||||
if l.Add(word) == false {
|
||||
if !l.Add(word) {
|
||||
wrapped = append(wrapped, l.String())
|
||||
l = line{wrap: wrap}
|
||||
if l.Add(word) == false {
|
||||
if !l.Add(word) {
|
||||
panic("Couldn't add to empty line.")
|
||||
}
|
||||
}
|
||||
|
29
vendor/k8s.io/kubernetes/pkg/kubectl/explain/model_printer.go
generated
vendored
29
vendor/k8s.io/kubernetes/pkg/kubectl/explain/model_printer.go
generated
vendored
@ -16,7 +16,10 @@ limitations under the License.
|
||||
|
||||
package explain
|
||||
|
||||
import "k8s.io/kube-openapi/pkg/util/proto"
|
||||
import (
|
||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||
"k8s.io/kube-openapi/pkg/util/proto"
|
||||
)
|
||||
|
||||
// fieldIndentLevel is the level of indentation for fields.
|
||||
const fieldIndentLevel = 3
|
||||
@ -33,11 +36,19 @@ type modelPrinter struct {
|
||||
Descriptions []string
|
||||
Writer *Formatter
|
||||
Builder fieldsPrinterBuilder
|
||||
GVK schema.GroupVersionKind
|
||||
Error error
|
||||
}
|
||||
|
||||
var _ proto.SchemaVisitor = &modelPrinter{}
|
||||
|
||||
func (m *modelPrinter) PrintKindAndVersion() error {
|
||||
if err := m.Writer.Write("KIND: %s", m.GVK.Kind); err != nil {
|
||||
return err
|
||||
}
|
||||
return m.Writer.Write("VERSION: %s\n", m.GVK.GroupVersion())
|
||||
}
|
||||
|
||||
// PrintDescription prints the description for a given schema. There
|
||||
// might be multiple description, since we collect descriptions when we
|
||||
// go through references, arrays and maps.
|
||||
@ -73,6 +84,11 @@ func (m *modelPrinter) VisitArray(a *proto.Array) {
|
||||
|
||||
// VisitKind prints a full resource with its fields.
|
||||
func (m *modelPrinter) VisitKind(k *proto.Kind) {
|
||||
if err := m.PrintKindAndVersion(); err != nil {
|
||||
m.Error = err
|
||||
return
|
||||
}
|
||||
|
||||
if m.Type == "" {
|
||||
m.Type = GetTypeName(k)
|
||||
}
|
||||
@ -103,10 +119,15 @@ func (m *modelPrinter) VisitMap(om *proto.Map) {
|
||||
|
||||
// VisitPrimitive prints a field type and its description.
|
||||
func (m *modelPrinter) VisitPrimitive(p *proto.Primitive) {
|
||||
if err := m.PrintKindAndVersion(); err != nil {
|
||||
m.Error = err
|
||||
return
|
||||
}
|
||||
|
||||
if m.Type == "" {
|
||||
m.Type = GetTypeName(p)
|
||||
}
|
||||
if err := m.Writer.Write("FIELD: %s <%s>\n", m.Name, m.Type); err != nil {
|
||||
if err := m.Writer.Write("FIELD: %s <%s>\n", m.Name, m.Type); err != nil {
|
||||
m.Error = err
|
||||
return
|
||||
}
|
||||
@ -120,8 +141,8 @@ func (m *modelPrinter) VisitReference(r proto.Reference) {
|
||||
}
|
||||
|
||||
// PrintModel prints the description of a schema in writer.
|
||||
func PrintModel(name string, writer *Formatter, builder fieldsPrinterBuilder, schema proto.Schema) error {
|
||||
m := &modelPrinter{Name: name, Writer: writer, Builder: builder}
|
||||
func PrintModel(name string, writer *Formatter, builder fieldsPrinterBuilder, schema proto.Schema, gvk schema.GroupVersionKind) error {
|
||||
m := &modelPrinter{Name: name, Writer: writer, Builder: builder, GVK: gvk}
|
||||
schema.Accept(m)
|
||||
return m.Error
|
||||
}
|
||||
|
27
vendor/k8s.io/kubernetes/pkg/kubectl/explain/model_printer_test.go
generated
vendored
27
vendor/k8s.io/kubernetes/pkg/kubectl/explain/model_printer_test.go
generated
vendored
@ -24,11 +24,12 @@ import (
|
||||
)
|
||||
|
||||
func TestModel(t *testing.T) {
|
||||
schema := resources.LookupResource(schema.GroupVersionKind{
|
||||
gvk := schema.GroupVersionKind{
|
||||
Group: "",
|
||||
Version: "v1",
|
||||
Kind: "OneKind",
|
||||
})
|
||||
}
|
||||
schema := resources.LookupResource(gvk)
|
||||
if schema == nil {
|
||||
t.Fatal("Couldn't find schema v1.OneKind")
|
||||
}
|
||||
@ -38,7 +39,10 @@ func TestModel(t *testing.T) {
|
||||
want string
|
||||
}{
|
||||
{
|
||||
want: `DESCRIPTION:
|
||||
want: `KIND: OneKind
|
||||
VERSION: v1
|
||||
|
||||
DESCRIPTION:
|
||||
OneKind has a short description
|
||||
|
||||
FIELDS:
|
||||
@ -58,7 +62,10 @@ FIELDS:
|
||||
path: []string{},
|
||||
},
|
||||
{
|
||||
want: `RESOURCE: field1 <Object>
|
||||
want: `KIND: OneKind
|
||||
VERSION: v1
|
||||
|
||||
RESOURCE: field1 <Object>
|
||||
|
||||
DESCRIPTION:
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla ut lacus ac
|
||||
@ -90,7 +97,10 @@ FIELDS:
|
||||
path: []string{"field1"},
|
||||
},
|
||||
{
|
||||
want: `FIELD: string <string>
|
||||
want: `KIND: OneKind
|
||||
VERSION: v1
|
||||
|
||||
FIELD: string <string>
|
||||
|
||||
DESCRIPTION:
|
||||
This string must be a string
|
||||
@ -98,7 +108,10 @@ DESCRIPTION:
|
||||
path: []string{"field1", "string"},
|
||||
},
|
||||
{
|
||||
want: `FIELD: array <[]integer>
|
||||
want: `KIND: OneKind
|
||||
VERSION: v1
|
||||
|
||||
FIELD: array <[]integer>
|
||||
|
||||
DESCRIPTION:
|
||||
This array must be an array of int
|
||||
@ -111,7 +124,7 @@ DESCRIPTION:
|
||||
|
||||
for _, test := range tests {
|
||||
buf := bytes.Buffer{}
|
||||
if err := PrintModelDescription(test.path, &buf, schema, false); err != nil {
|
||||
if err := PrintModelDescription(test.path, &buf, schema, gvk, false); err != nil {
|
||||
t.Fatalf("Failed to PrintModelDescription for path %v: %v", test.path, err)
|
||||
}
|
||||
got := buf.String()
|
||||
|
12
vendor/k8s.io/kubernetes/pkg/kubectl/explain/test-swagger.json
generated
vendored
12
vendor/k8s.io/kubernetes/pkg/kubectl/explain/test-swagger.json
generated
vendored
@ -12,7 +12,7 @@
|
||||
"OneKind": {
|
||||
"description": "OneKind has a short description",
|
||||
"required": [
|
||||
"field1",
|
||||
"field1"
|
||||
],
|
||||
"properties": {
|
||||
"field1": {
|
||||
@ -42,23 +42,23 @@
|
||||
"OtherKind": {
|
||||
"description": "This is another kind of Kind",
|
||||
"required": [
|
||||
"string",
|
||||
"string"
|
||||
],
|
||||
"properties": {
|
||||
"string": {
|
||||
"description": "This string must be a string",
|
||||
"type": "string",
|
||||
"type": "string"
|
||||
},
|
||||
"int": {
|
||||
"description": "This int must be an int",
|
||||
"type": "integer",
|
||||
"type": "integer"
|
||||
},
|
||||
"array": {
|
||||
"description": "This array must be an array of int",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"description": "This is an int in an array",
|
||||
"type": "integer",
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"object": {
|
||||
@ -66,7 +66,7 @@
|
||||
"type": "object",
|
||||
"additionalProperties": {
|
||||
"description": "this is a string in an object",
|
||||
"type": "string",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"primitive": {
|
||||
|
Reference in New Issue
Block a user