mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-07-17 01:39:06 +00:00
update kyaml go.mod and go.sum
also update cmd/config,cmd/kubectl,cmd/resource
This commit is contained in:
@@ -6,7 +6,9 @@ require (
|
||||
github.com/davecgh/go-spew v1.1.1
|
||||
github.com/go-errors/errors v1.0.1
|
||||
github.com/go-openapi/spec v0.19.5
|
||||
github.com/sergi/go-diff v1.1.0
|
||||
github.com/stretchr/testify v1.4.0
|
||||
github.com/xlab/treeprint v0.0.0-20181112141820-a009c3971eca
|
||||
gopkg.in/yaml.v2 v2.2.4
|
||||
gopkg.in/yaml.v3 v3.0.0-20191026110619-0b21df46bc1d
|
||||
)
|
||||
|
||||
@@ -27,6 +27,8 @@ github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e h1:hB2xlXdHp/pmPZq
|
||||
github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
|
||||
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
|
||||
@@ -45,6 +47,8 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=
|
||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
|
||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I=
|
||||
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
|
||||
@@ -95,6 +95,7 @@ type formatter struct {
|
||||
}
|
||||
|
||||
// fmtNode recursively formats the Document Contents.
|
||||
// See: https://godoc.org/gopkg.in/yaml.v3#Node
|
||||
func (f *formatter) fmtNode(n *yaml.Node, path string, schema *openapi.ResourceSchema) error {
|
||||
if n.Kind == yaml.ScalarNode && schema != nil && schema.Schema != nil {
|
||||
// ensure values that are interpreted as non-string values (e.g. "true")
|
||||
@@ -142,12 +143,12 @@ func (f *formatter) fmtNode(n *yaml.Node, path string, schema *openapi.ResourceS
|
||||
// if the node is a field, lookup the schema using the field name
|
||||
p = fmt.Sprintf("%s.%s", path, n.Content[i-1].Value)
|
||||
if schema != nil {
|
||||
s = schema.SchemaForField(n.Content[i-1].Value)
|
||||
s = schema.Field(n.Content[i-1].Value)
|
||||
}
|
||||
case isElement:
|
||||
// if the node is a list element, lookup the schema for the array items
|
||||
if schema != nil {
|
||||
s = schema.SchemaForElements()
|
||||
s = schema.Elements()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -13,8 +13,7 @@ import (
|
||||
func Example() {
|
||||
s := openapi.SchemaForResourceType(yaml.TypeMeta{APIVersion: "apps/v1", Kind: "Deployment"})
|
||||
|
||||
f := s.SchemaForField("spec").
|
||||
SchemaForField("replicas")
|
||||
f := s.Lookup("spec", "replicas")
|
||||
fmt.Println(f.Schema.Description[:70] + "...")
|
||||
fmt.Println(f.Schema.Type)
|
||||
|
||||
@@ -26,10 +25,7 @@ func Example() {
|
||||
func Example_arrayMerge() {
|
||||
s := openapi.SchemaForResourceType(yaml.TypeMeta{APIVersion: "apps/v1", Kind: "Deployment"})
|
||||
|
||||
f := s.SchemaForField("spec").
|
||||
SchemaForField("template").
|
||||
SchemaForField("spec").
|
||||
SchemaForField("containers")
|
||||
f := s.Lookup("spec", "template", "spec", "containers")
|
||||
fmt.Println(f.Schema.Description[:70] + "...")
|
||||
fmt.Println(f.Schema.Type)
|
||||
fmt.Println(f.PatchStrategyAndKey()) // merge patch strategy on name
|
||||
@@ -43,11 +39,7 @@ func Example_arrayMerge() {
|
||||
func Example_arrayReplace() {
|
||||
s := openapi.SchemaForResourceType(yaml.TypeMeta{APIVersion: "apps/v1", Kind: "Deployment"})
|
||||
|
||||
f := s.SchemaForField("spec").
|
||||
SchemaForField("template").
|
||||
SchemaForField("spec").
|
||||
SchemaForField("containers").SchemaForElements().
|
||||
SchemaForField("args")
|
||||
f := s.Lookup("spec", "template", "spec", "containers", openapi.Elements, "args")
|
||||
fmt.Println(f.Schema.Description[:70] + "...")
|
||||
fmt.Println(f.Schema.Type)
|
||||
fmt.Println(f.PatchStrategyAndKey()) // no patch strategy or merge key
|
||||
@@ -60,12 +52,8 @@ func Example_arrayReplace() {
|
||||
func Example_arrayElement() {
|
||||
s := openapi.SchemaForResourceType(yaml.TypeMeta{APIVersion: "apps/v1", Kind: "Deployment"})
|
||||
|
||||
f := s.SchemaForField("spec").
|
||||
SchemaForField("template").
|
||||
SchemaForField("spec").
|
||||
SchemaForField("containers").SchemaForElements().
|
||||
SchemaForField("ports").SchemaForElements().
|
||||
SchemaForField("containerPort")
|
||||
f := s.Lookup("spec", "template", "spec", "containers",
|
||||
openapi.Elements, "ports", openapi.Elements, "containerPort")
|
||||
fmt.Println(f.Schema.Description[:70] + "...")
|
||||
fmt.Println(f.Schema.Type)
|
||||
|
||||
@@ -77,7 +65,7 @@ func Example_arrayElement() {
|
||||
func Example_map() {
|
||||
s := openapi.SchemaForResourceType(yaml.TypeMeta{APIVersion: "apps/v1", Kind: "Deployment"})
|
||||
|
||||
f := s.SchemaForField("metadata").SchemaForField("labels")
|
||||
f := s.Lookup("metadata", "labels")
|
||||
fmt.Println(f.Schema.Description[:70] + "...")
|
||||
fmt.Println(f.Schema.Type)
|
||||
|
||||
|
||||
@@ -33,8 +33,8 @@ func SchemaForResourceType(t yaml.TypeMeta) *ResourceSchema {
|
||||
return &ResourceSchema{Schema: rs}
|
||||
}
|
||||
|
||||
// SchemaForElements returns the Schema for the elements of an array.
|
||||
func (r *ResourceSchema) SchemaForElements() *ResourceSchema {
|
||||
// Elements returns the Schema for the elements of an array.
|
||||
func (r *ResourceSchema) Elements() *ResourceSchema {
|
||||
// load the schema from swagger.json
|
||||
initSchema()
|
||||
|
||||
@@ -53,8 +53,30 @@ func (r *ResourceSchema) SchemaForElements() *ResourceSchema {
|
||||
return &ResourceSchema{Schema: &s}
|
||||
}
|
||||
|
||||
// SchemaForField returns the Schema for a field.
|
||||
func (r *ResourceSchema) SchemaForField(field string) *ResourceSchema {
|
||||
const Elements = "[]"
|
||||
|
||||
// Lookup calls either Field or Elements for each item in the path.
|
||||
// If the path item is "[]", then Elements is called, otherwise
|
||||
// Field is called.
|
||||
// If any Field or Elements call returns nil, then Lookup returns
|
||||
// nil immediately.
|
||||
func (r *ResourceSchema) Lookup(path ...string) *ResourceSchema {
|
||||
s := r
|
||||
for _, p := range path {
|
||||
if s == nil {
|
||||
break
|
||||
}
|
||||
if p == Elements {
|
||||
s = s.Elements()
|
||||
continue
|
||||
}
|
||||
s = s.Field(p)
|
||||
}
|
||||
return s
|
||||
}
|
||||
|
||||
// Field returns the Schema for a field.
|
||||
func (r *ResourceSchema) Field(field string) *ResourceSchema {
|
||||
// load the schema from swagger.json
|
||||
initSchema()
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ func TestSchemaForResourceType(t *testing.T) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
f := s.SchemaForField("spec")
|
||||
f := s.Field("spec")
|
||||
if !assert.NotNil(t, f) {
|
||||
t.FailNow()
|
||||
}
|
||||
@@ -27,7 +27,7 @@ func TestSchemaForResourceType(t *testing.T) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
replicas := f.SchemaForField("replicas")
|
||||
replicas := f.Field("replicas")
|
||||
if !assert.NotNil(t, replicas) {
|
||||
t.FailNow()
|
||||
}
|
||||
@@ -36,7 +36,7 @@ func TestSchemaForResourceType(t *testing.T) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
temp := f.SchemaForField("template")
|
||||
temp := f.Field("template")
|
||||
if !assert.NotNil(t, temp) {
|
||||
t.FailNow()
|
||||
}
|
||||
@@ -45,16 +45,12 @@ func TestSchemaForResourceType(t *testing.T) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
containers := temp.SchemaForField("spec").
|
||||
SchemaForField("containers").
|
||||
SchemaForElements()
|
||||
containers := temp.Field("spec").Field("containers").Elements()
|
||||
if !assert.NotNil(t, containers) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
targetPort := containers.SchemaForField("ports").
|
||||
SchemaForElements().
|
||||
SchemaForField("containerPort")
|
||||
targetPort := containers.Field("ports").Elements().Field("containerPort")
|
||||
if !assert.NotNil(t, targetPort) {
|
||||
t.FailNow()
|
||||
}
|
||||
@@ -63,8 +59,7 @@ func TestSchemaForResourceType(t *testing.T) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
arg := containers.SchemaForField("args").
|
||||
SchemaForElements()
|
||||
arg := containers.Field("args").Elements()
|
||||
if !assert.NotNil(t, arg) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
@@ -61,14 +61,8 @@ spec:
|
||||
t.FailNow()
|
||||
}
|
||||
on := args.YNode().Content[1]
|
||||
onS := s.
|
||||
SchemaForField("spec").
|
||||
SchemaForField("template").
|
||||
SchemaForField("spec").
|
||||
SchemaForField("containers").
|
||||
SchemaForElements().
|
||||
SchemaForField("args").
|
||||
SchemaForElements()
|
||||
onS := s.Lookup(
|
||||
"spec", "template", "spec", "containers", openapi.Elements, "args", openapi.Elements)
|
||||
yaml.FormatNonStringStyle(on, *onS.Schema)
|
||||
|
||||
containerPort, err := n.Pipe(yaml.Lookup(
|
||||
@@ -80,15 +74,8 @@ spec:
|
||||
if !assert.NotNil(t, containerPort) {
|
||||
t.FailNow()
|
||||
}
|
||||
cpS := s.
|
||||
SchemaForField("spec").
|
||||
SchemaForField("template").
|
||||
SchemaForField("spec").
|
||||
SchemaForField("containers").
|
||||
SchemaForElements().
|
||||
SchemaForField("ports").
|
||||
SchemaForElements().
|
||||
SchemaForField("containerPort")
|
||||
cpS := s.Lookup("spec", "template", "spec", "containers", openapi.Elements,
|
||||
"ports", openapi.Elements, "containerPort")
|
||||
if !assert.NotNil(t, cpS) {
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user