Merge pull request #96317 from Jefftree/test-ssa

Integrate defaults marker to defaulter-gen
This commit is contained in:
Kubernetes Prow Robot 2020-11-13 22:35:03 -08:00 committed by GitHub
commit 05d1b94a70
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
76 changed files with 2070 additions and 639 deletions

8
go.mod
View File

@ -125,12 +125,12 @@ require (
k8s.io/controller-manager v0.0.0 k8s.io/controller-manager v0.0.0
k8s.io/cri-api v0.0.0 k8s.io/cri-api v0.0.0
k8s.io/csi-translation-lib v0.0.0 k8s.io/csi-translation-lib v0.0.0
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 k8s.io/gengo v0.0.0-20201113003025-83324d819ded
k8s.io/heapster v1.2.0-beta.1 k8s.io/heapster v1.2.0-beta.1
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-aggregator v0.0.0 k8s.io/kube-aggregator v0.0.0
k8s.io/kube-controller-manager v0.0.0 k8s.io/kube-controller-manager v0.0.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/kube-proxy v0.0.0 k8s.io/kube-proxy v0.0.0
k8s.io/kube-scheduler v0.0.0 k8s.io/kube-scheduler v0.0.0
k8s.io/kubectl v0.0.0 k8s.io/kubectl v0.0.0
@ -505,12 +505,12 @@ replace (
k8s.io/controller-manager => ./staging/src/k8s.io/controller-manager k8s.io/controller-manager => ./staging/src/k8s.io/controller-manager
k8s.io/cri-api => ./staging/src/k8s.io/cri-api k8s.io/cri-api => ./staging/src/k8s.io/cri-api
k8s.io/csi-translation-lib => ./staging/src/k8s.io/csi-translation-lib k8s.io/csi-translation-lib => ./staging/src/k8s.io/csi-translation-lib
k8s.io/gengo => k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 k8s.io/gengo => k8s.io/gengo v0.0.0-20201113003025-83324d819ded
k8s.io/heapster => k8s.io/heapster v1.2.0-beta.1 k8s.io/heapster => k8s.io/heapster v1.2.0-beta.1
k8s.io/klog/v2 => k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 => k8s.io/klog/v2 v2.4.0
k8s.io/kube-aggregator => ./staging/src/k8s.io/kube-aggregator k8s.io/kube-aggregator => ./staging/src/k8s.io/kube-aggregator
k8s.io/kube-controller-manager => ./staging/src/k8s.io/kube-controller-manager k8s.io/kube-controller-manager => ./staging/src/k8s.io/kube-controller-manager
k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/kube-proxy => ./staging/src/k8s.io/kube-proxy k8s.io/kube-proxy => ./staging/src/k8s.io/kube-proxy
k8s.io/kube-scheduler => ./staging/src/k8s.io/kube-scheduler k8s.io/kube-scheduler => ./staging/src/k8s.io/kube-scheduler
k8s.io/kubectl => ./staging/src/k8s.io/kubectl k8s.io/kubectl => ./staging/src/k8s.io/kubectl

8
go.sum
View File

@ -589,14 +589,14 @@ gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81
gotest.tools/v3 v3.0.2 h1:kG1BFyqVHuQoVQiR1bWGnfz/fmHvvuiSPIV7rvl360E= gotest.tools/v3 v3.0.2 h1:kG1BFyqVHuQoVQiR1bWGnfz/fmHvvuiSPIV7rvl360E=
gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/heapster v1.2.0-beta.1 h1:lUsE/AHOMHpi3MLlBEkaU8Esxm5QhdyCrv1o7ot0s84= k8s.io/heapster v1.2.0-beta.1 h1:lUsE/AHOMHpi3MLlBEkaU8Esxm5QhdyCrv1o7ot0s84=
k8s.io/heapster v1.2.0-beta.1/go.mod h1:h1uhptVXMwC8xtZBYsPXKVi8fpdlYkTs6k949KozGrM= k8s.io/heapster v1.2.0-beta.1/go.mod h1:h1uhptVXMwC8xtZBYsPXKVi8fpdlYkTs6k949KozGrM=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/system-validators v1.2.0 h1:D8clGm3PIsgX0bHoQWQXC8W/rTi6jRKejQGk7z/yuDY= k8s.io/system-validators v1.2.0 h1:D8clGm3PIsgX0bHoQWQXC8W/rTi6jRKejQGk7z/yuDY=
k8s.io/system-validators v1.2.0/go.mod h1:bPldcLgkIUK22ALflnsXk8pvkTEndYdNuaHH6gRrl0Q= k8s.io/system-validators v1.2.0/go.mod h1:bPldcLgkIUK22ALflnsXk8pvkTEndYdNuaHH6gRrl0Q=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1 package v1
import ( import (
"reflect"
v1 "k8s.io/api/apps/v1" v1 "k8s.io/api/apps/v1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
corev1 "k8s.io/kubernetes/pkg/apis/core/v1" corev1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -107,7 +109,9 @@ func SetObjectDefaults_DaemonSet(in *v1.DaemonSet) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -155,7 +159,9 @@ func SetObjectDefaults_DaemonSet(in *v1.DaemonSet) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -203,7 +209,9 @@ func SetObjectDefaults_DaemonSet(in *v1.DaemonSet) {
corev1.SetDefaults_EphemeralContainer(a) corev1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -322,7 +330,9 @@ func SetObjectDefaults_Deployment(in *v1.Deployment) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -370,7 +380,9 @@ func SetObjectDefaults_Deployment(in *v1.Deployment) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -418,7 +430,9 @@ func SetObjectDefaults_Deployment(in *v1.Deployment) {
corev1.SetDefaults_EphemeralContainer(a) corev1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -537,7 +551,9 @@ func SetObjectDefaults_ReplicaSet(in *v1.ReplicaSet) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -585,7 +601,9 @@ func SetObjectDefaults_ReplicaSet(in *v1.ReplicaSet) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -633,7 +651,9 @@ func SetObjectDefaults_ReplicaSet(in *v1.ReplicaSet) {
corev1.SetDefaults_EphemeralContainer(a) corev1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -752,7 +772,9 @@ func SetObjectDefaults_StatefulSet(in *v1.StatefulSet) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -800,7 +822,9 @@ func SetObjectDefaults_StatefulSet(in *v1.StatefulSet) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -848,7 +872,9 @@ func SetObjectDefaults_StatefulSet(in *v1.StatefulSet) {
corev1.SetDefaults_EphemeralContainer(a) corev1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1beta1 package v1beta1
import ( import (
"reflect"
v1beta1 "k8s.io/api/apps/v1beta1" v1beta1 "k8s.io/api/apps/v1beta1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
v1 "k8s.io/kubernetes/pkg/apis/core/v1" v1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -103,7 +105,9 @@ func SetObjectDefaults_Deployment(in *v1beta1.Deployment) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -151,7 +155,9 @@ func SetObjectDefaults_Deployment(in *v1beta1.Deployment) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -199,7 +205,9 @@ func SetObjectDefaults_Deployment(in *v1beta1.Deployment) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -318,7 +326,9 @@ func SetObjectDefaults_StatefulSet(in *v1beta1.StatefulSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -366,7 +376,9 @@ func SetObjectDefaults_StatefulSet(in *v1beta1.StatefulSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -414,7 +426,9 @@ func SetObjectDefaults_StatefulSet(in *v1beta1.StatefulSet) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1beta2 package v1beta2
import ( import (
"reflect"
v1beta2 "k8s.io/api/apps/v1beta2" v1beta2 "k8s.io/api/apps/v1beta2"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
v1 "k8s.io/kubernetes/pkg/apis/core/v1" v1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -107,7 +109,9 @@ func SetObjectDefaults_DaemonSet(in *v1beta2.DaemonSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -155,7 +159,9 @@ func SetObjectDefaults_DaemonSet(in *v1beta2.DaemonSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -203,7 +209,9 @@ func SetObjectDefaults_DaemonSet(in *v1beta2.DaemonSet) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -322,7 +330,9 @@ func SetObjectDefaults_Deployment(in *v1beta2.Deployment) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -370,7 +380,9 @@ func SetObjectDefaults_Deployment(in *v1beta2.Deployment) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -418,7 +430,9 @@ func SetObjectDefaults_Deployment(in *v1beta2.Deployment) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -537,7 +551,9 @@ func SetObjectDefaults_ReplicaSet(in *v1beta2.ReplicaSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -585,7 +601,9 @@ func SetObjectDefaults_ReplicaSet(in *v1beta2.ReplicaSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -633,7 +651,9 @@ func SetObjectDefaults_ReplicaSet(in *v1beta2.ReplicaSet) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -752,7 +772,9 @@ func SetObjectDefaults_StatefulSet(in *v1beta2.StatefulSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -800,7 +822,9 @@ func SetObjectDefaults_StatefulSet(in *v1beta2.StatefulSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -848,7 +872,9 @@ func SetObjectDefaults_StatefulSet(in *v1beta2.StatefulSet) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1 package v1
import ( import (
"reflect"
v1 "k8s.io/api/batch/v1" v1 "k8s.io/api/batch/v1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
corev1 "k8s.io/kubernetes/pkg/apis/core/v1" corev1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -101,7 +103,9 @@ func SetObjectDefaults_Job(in *v1.Job) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -149,7 +153,9 @@ func SetObjectDefaults_Job(in *v1.Job) {
corev1.SetDefaults_Container(a) corev1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -197,7 +203,9 @@ func SetObjectDefaults_Job(in *v1.Job) {
corev1.SetDefaults_EphemeralContainer(a) corev1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
corev1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1beta1 package v1beta1
import ( import (
"reflect"
v1beta1 "k8s.io/api/batch/v1beta1" v1beta1 "k8s.io/api/batch/v1beta1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
v1 "k8s.io/kubernetes/pkg/apis/core/v1" v1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -102,7 +104,9 @@ func SetObjectDefaults_CronJob(in *v1beta1.CronJob) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -150,7 +154,9 @@ func SetObjectDefaults_CronJob(in *v1beta1.CronJob) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -198,7 +204,9 @@ func SetObjectDefaults_CronJob(in *v1beta1.CronJob) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -316,7 +324,9 @@ func SetObjectDefaults_JobTemplate(in *v1beta1.JobTemplate) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -364,7 +374,9 @@ func SetObjectDefaults_JobTemplate(in *v1beta1.JobTemplate) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -412,7 +424,9 @@ func SetObjectDefaults_JobTemplate(in *v1beta1.JobTemplate) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -21,6 +21,8 @@ limitations under the License.
package v2alpha1 package v2alpha1
import ( import (
"reflect"
v2alpha1 "k8s.io/api/batch/v2alpha1" v2alpha1 "k8s.io/api/batch/v2alpha1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
v1 "k8s.io/kubernetes/pkg/apis/core/v1" v1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -102,7 +104,9 @@ func SetObjectDefaults_CronJob(in *v2alpha1.CronJob) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -150,7 +154,9 @@ func SetObjectDefaults_CronJob(in *v2alpha1.CronJob) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -198,7 +204,9 @@ func SetObjectDefaults_CronJob(in *v2alpha1.CronJob) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -316,7 +324,9 @@ func SetObjectDefaults_JobTemplate(in *v2alpha1.JobTemplate) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -364,7 +374,9 @@ func SetObjectDefaults_JobTemplate(in *v2alpha1.JobTemplate) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -412,7 +424,9 @@ func SetObjectDefaults_JobTemplate(in *v2alpha1.JobTemplate) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -19,7 +19,7 @@ package v1
import ( import (
"time" "time"
"k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/util/intstr" "k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/kubernetes/pkg/util/parsers" "k8s.io/kubernetes/pkg/util/parsers"
@ -70,11 +70,6 @@ func SetDefaults_Volume(obj *v1.Volume) {
} }
} }
} }
func SetDefaults_ContainerPort(obj *v1.ContainerPort) {
if obj.Protocol == "" {
obj.Protocol = v1.ProtocolTCP
}
}
func SetDefaults_Container(obj *v1.Container) { func SetDefaults_Container(obj *v1.Container) {
if obj.ImagePullPolicy == "" { if obj.ImagePullPolicy == "" {
// Ignore error and assume it has been validated elsewhere // Ignore error and assume it has been validated elsewhere

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1 package v1
import ( import (
"reflect"
v1 "k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
) )
@ -91,7 +93,9 @@ func SetObjectDefaults_EphemeralContainers(in *v1.EphemeralContainers) {
SetDefaults_EphemeralContainer(a) SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -287,7 +291,9 @@ func SetObjectDefaults_Pod(in *v1.Pod) {
SetDefaults_Container(a) SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -335,7 +341,9 @@ func SetObjectDefaults_Pod(in *v1.Pod) {
SetDefaults_Container(a) SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -383,7 +391,9 @@ func SetObjectDefaults_Pod(in *v1.Pod) {
SetDefaults_EphemeralContainer(a) SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -501,7 +511,9 @@ func SetObjectDefaults_PodTemplate(in *v1.PodTemplate) {
SetDefaults_Container(a) SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -549,7 +561,9 @@ func SetObjectDefaults_PodTemplate(in *v1.PodTemplate) {
SetDefaults_Container(a) SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -597,7 +611,9 @@ func SetObjectDefaults_PodTemplate(in *v1.PodTemplate) {
SetDefaults_EphemeralContainer(a) SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -717,7 +733,9 @@ func SetObjectDefaults_ReplicationController(in *v1.ReplicationController) {
SetDefaults_Container(a) SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -765,7 +783,9 @@ func SetObjectDefaults_ReplicationController(in *v1.ReplicationController) {
SetDefaults_Container(a) SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -813,7 +833,9 @@ func SetObjectDefaults_ReplicationController(in *v1.ReplicationController) {
SetDefaults_EphemeralContainer(a) SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -21,6 +21,8 @@ limitations under the License.
package v1beta1 package v1beta1
import ( import (
"reflect"
v1beta1 "k8s.io/api/extensions/v1beta1" v1beta1 "k8s.io/api/extensions/v1beta1"
runtime "k8s.io/apimachinery/pkg/runtime" runtime "k8s.io/apimachinery/pkg/runtime"
v1 "k8s.io/kubernetes/pkg/apis/core/v1" v1 "k8s.io/kubernetes/pkg/apis/core/v1"
@ -111,7 +113,9 @@ func SetObjectDefaults_DaemonSet(in *v1beta1.DaemonSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -159,7 +163,9 @@ func SetObjectDefaults_DaemonSet(in *v1beta1.DaemonSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -207,7 +213,9 @@ func SetObjectDefaults_DaemonSet(in *v1beta1.DaemonSet) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -326,7 +334,9 @@ func SetObjectDefaults_Deployment(in *v1beta1.Deployment) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -374,7 +384,9 @@ func SetObjectDefaults_Deployment(in *v1beta1.Deployment) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -422,7 +434,9 @@ func SetObjectDefaults_Deployment(in *v1beta1.Deployment) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]
@ -582,7 +596,9 @@ func SetObjectDefaults_ReplicaSet(in *v1beta1.ReplicaSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -630,7 +646,9 @@ func SetObjectDefaults_ReplicaSet(in *v1beta1.ReplicaSet) {
v1.SetDefaults_Container(a) v1.SetDefaults_Container(a)
for j := range a.Ports { for j := range a.Ports {
b := &a.Ports[j] b := &a.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.Env { for j := range a.Env {
b := &a.Env[j] b := &a.Env[j]
@ -678,7 +696,9 @@ func SetObjectDefaults_ReplicaSet(in *v1beta1.ReplicaSet) {
v1.SetDefaults_EphemeralContainer(a) v1.SetDefaults_EphemeralContainer(a)
for j := range a.EphemeralContainerCommon.Ports { for j := range a.EphemeralContainerCommon.Ports {
b := &a.EphemeralContainerCommon.Ports[j] b := &a.EphemeralContainerCommon.Ports[j]
v1.SetDefaults_ContainerPort(b) if reflect.ValueOf(b.Protocol).IsZero() {
b.Protocol = "TCP"
}
} }
for j := range a.EphemeralContainerCommon.Env { for j := range a.EphemeralContainerCommon.Env {
b := &a.EphemeralContainerCommon.Env[j] b := &a.EphemeralContainerCommon.Env[j]

View File

@ -42,5 +42,6 @@ go_test(
deps = [ deps = [
"//staging/src/k8s.io/apimachinery/pkg/util/diff:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/diff:go_default_library",
"//vendor/github.com/go-openapi/spec:go_default_library", "//vendor/github.com/go-openapi/spec:go_default_library",
"//vendor/k8s.io/kube-openapi/pkg/handler:go_default_library",
], ],
) )

View File

@ -24,12 +24,15 @@ import (
"github.com/go-openapi/spec" "github.com/go-openapi/spec"
"k8s.io/apimachinery/pkg/util/diff" "k8s.io/apimachinery/pkg/util/diff"
"k8s.io/kube-openapi/pkg/handler"
) )
func TestOpenAPIRoundtrip(t *testing.T) { func TestOpenAPIRoundtrip(t *testing.T) {
dummyRef := func(name string) spec.Ref { return spec.MustCreateRef("#/definitions/dummy") } dummyRef := func(name string) spec.Ref { return spec.MustCreateRef("#/definitions/dummy") }
for name, value := range GetOpenAPIDefinitions(dummyRef) { for name, value := range GetOpenAPIDefinitions(dummyRef) {
t.Run(name, func(t *testing.T) { t.Run(name, func(t *testing.T) {
// TODO(kubernetes/gengo#193): We currently round-trip ints to floats.
value.Schema = *handler.PruneDefaultsSchema(&value.Schema)
data, err := json.Marshal(value.Schema) data, err := json.Marshal(value.Schema)
if err != nil { if err != nil {
t.Error(err) t.Error(err)

View File

@ -816,6 +816,7 @@ message ContainerPort {
// Protocol for port. Must be UDP, TCP, or SCTP. // Protocol for port. Must be UDP, TCP, or SCTP.
// Defaults to "TCP". // Defaults to "TCP".
// +optional // +optional
// +default="TCP"
optional string protocol = 4; optional string protocol = 4;
// What host IP to bind the external port to. // What host IP to bind the external port to.

View File

@ -1837,6 +1837,7 @@ type ContainerPort struct {
// Protocol for port. Must be UDP, TCP, or SCTP. // Protocol for port. Must be UDP, TCP, or SCTP.
// Defaults to "TCP". // Defaults to "TCP".
// +optional // +optional
// +default="TCP"
Protocol Protocol `json:"protocol,omitempty" protobuf:"bytes,4,opt,name=protocol,casttype=Protocol"` Protocol Protocol `json:"protocol,omitempty" protobuf:"bytes,4,opt,name=protocol,casttype=Protocol"`
// What host IP to bind the external port to. // What host IP to bind the external port to.
// +optional // +optional

View File

@ -189,7 +189,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8= sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=

View File

@ -25,7 +25,7 @@ require (
k8s.io/code-generator v0.0.0 k8s.io/code-generator v0.0.0
k8s.io/component-base v0.0.0 k8s.io/component-base v0.0.0
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 k8s.io/utils v0.0.0-20201110183641-67b214c5f920
sigs.k8s.io/yaml v1.2.0 sigs.k8s.io/yaml v1.2.0
) )

View File

@ -573,6 +573,7 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK
golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -676,13 +677,14 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -1320,7 +1320,8 @@ func buildOpenAPIModelsForApply(staticOpenAPISpec *goopenapispec.Swagger, crd *a
specs := []*goopenapispec.Swagger{} specs := []*goopenapispec.Swagger{}
for _, v := range crd.Spec.Versions { for _, v := range crd.Spec.Versions {
s, err := builder.BuildSwagger(crd, v.Name, builder.Options{V2: false, StripDefaults: true, StripValueValidation: true, StripNullable: true, AllowNonStructural: true}) // Defaults are not pruned here, but before being served.
s, err := builder.BuildSwagger(crd, v.Name, builder.Options{V2: false, StripValueValidation: true, StripNullable: true, AllowNonStructural: true})
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -1331,7 +1332,6 @@ func buildOpenAPIModelsForApply(staticOpenAPISpec *goopenapispec.Swagger, crd *a
if err != nil { if err != nil {
return nil, err return nil, err
} }
models, err := utilopenapi.ToProtoModels(mergedOpenAPI) models, err := utilopenapi.ToProtoModels(mergedOpenAPI)
if err != nil { if err != nil {
return nil, err return nil, err

View File

@ -16,23 +16,6 @@ limitations under the License.
package schema package schema
// StripDefaults returns a copy without defaults.
func (s *Structural) StripDefaults() *Structural {
s = s.DeepCopy()
v := Visitor{
Structural: func(s *Structural) bool {
changed := false
if s.Default.Object != nil {
s.Default.Object = nil
changed = true
}
return changed
},
}
v.Visit(s)
return s
}
// StripValueValidations returns a copy without value validations. // StripValueValidations returns a copy without value validations.
func (s *Structural) StripValueValidations() *Structural { func (s *Structural) StripValueValidations() *Structural {
s = s.DeepCopy() s = s.DeepCopy()

View File

@ -74,9 +74,6 @@ type Options struct {
// Convert to OpenAPI v2. // Convert to OpenAPI v2.
V2 bool V2 bool
// Strip defaults.
StripDefaults bool
// Strip value validation. // Strip value validation.
StripValueValidation bool StripValueValidation bool
@ -106,9 +103,6 @@ func BuildSwagger(crd *apiextensionsv1.CustomResourceDefinition, version string,
if opts.AllowNonStructural || len(structuralschema.ValidateStructural(nil, ss)) == 0 { if opts.AllowNonStructural || len(structuralschema.ValidateStructural(nil, ss)) == 0 {
schema = ss schema = ss
if opts.StripDefaults {
schema = schema.StripDefaults()
}
if opts.StripValueValidation { if opts.StripValueValidation {
schema = schema.StripValueValidations() schema = schema.StripValueValidations()
} }

View File

@ -80,7 +80,7 @@ func TestNewBuilder(t *testing.T) {
{"with extensions", {"with extensions",
` `
{ {
"type":"object", "type":"object",
"properties": { "properties": {
"int-or-string-1": { "int-or-string-1": {
"x-kubernetes-int-or-string": true, "x-kubernetes-int-or-string": true,
@ -183,7 +183,7 @@ func TestNewBuilder(t *testing.T) {
{"with extensions as v3 schema", {"with extensions as v3 schema",
` `
{ {
"type":"object", "type":"object",
"properties": { "properties": {
"int-or-string-1": { "int-or-string-1": {
"x-kubernetes-int-or-string": true, "x-kubernetes-int-or-string": true,
@ -500,7 +500,7 @@ func TestCRDRouteParameterBuilder(t *testing.T) {
}, },
}, },
} }
swagger, err := BuildSwagger(testNamespacedCRD, testCRDVersion, Options{V2: true, StripDefaults: true}) swagger, err := BuildSwagger(testNamespacedCRD, testCRDVersion, Options{V2: true})
require.NoError(t, err) require.NoError(t, err)
require.Equal(t, len(testCase.paths), len(swagger.Paths.Paths), testCase.scope) require.Equal(t, len(testCase.paths), len(swagger.Paths.Paths), testCase.scope)
for path, expected := range testCase.paths { for path, expected := range testCase.paths {
@ -580,63 +580,49 @@ func TestBuildSwagger(t *testing.T) {
"", "",
nil, nil,
`{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true}, Options{V2: true},
}, },
{ {
"with properties", "with properties",
`{"type":"object","properties":{"spec":{"type":"object"},"status":{"type":"object"}}}`, `{"type":"object","properties":{"spec":{"type":"object"},"status":{"type":"object"}}}`,
nil, nil,
`{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"spec":{"type":"object"},"status":{"type":"object"}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"spec":{"type":"object"},"status":{"type":"object"}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true}, Options{V2: true},
}, },
{ {
"with invalid-typed properties", "with invalid-typed properties",
`{"type":"object","properties":{"spec":{"type":"bug"},"status":{"type":"object"}}}`, `{"type":"object","properties":{"spec":{"type":"bug"},"status":{"type":"object"}}}`,
nil, nil,
`{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true}, Options{V2: true},
}, },
{ {
"with non-structural schema", "with non-structural schema",
`{"type":"object","properties":{"foo":{"type":"array"}}}`, `{"type":"object","properties":{"foo":{"type":"array"}}}`,
nil, nil,
`{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true}, Options{V2: true},
}, },
{ {
"with spec.preseveUnknownFields=true", "with spec.preseveUnknownFields=true",
`{"type":"object","properties":{"foo":{"type":"string"}}}`, `{"type":"object","properties":{"foo":{"type":"string"}}}`,
utilpointer.BoolPtr(true), utilpointer.BoolPtr(true),
`{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true}, Options{V2: true},
},
{
"with stripped defaults",
`{"type":"object","properties":{"foo":{"type":"string","default":"bar"}}}`,
nil,
`{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"foo":{"type":"string"}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true},
},
{
"with stripped defaults",
`{"type":"object","properties":{"foo":{"type":"string","default":"bar"}}}`,
nil,
`{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"foo":{"type":"string"}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true},
}, },
{ {
"v2", "v2",
`{"type":"object","properties":{"foo":{"type":"string","oneOf":[{"pattern":"a"},{"pattern":"b"}]}}}`, `{"type":"object","properties":{"foo":{"type":"string","oneOf":[{"pattern":"a"},{"pattern":"b"}]}}}`,
nil, nil,
`{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"foo":{"type":"string"}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"foo":{"type":"string"}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: true, StripDefaults: true}, Options{V2: true},
}, },
{ {
"v3", "v3",
`{"type":"object","properties":{"foo":{"type":"string","oneOf":[{"pattern":"a"},{"pattern":"b"}]}}}`, `{"type":"object","properties":{"foo":{"type":"string","oneOf":[{"pattern":"a"},{"pattern":"b"}]}}}`,
nil, nil,
`{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"foo":{"type":"string","oneOf":[{"pattern":"a"},{"pattern":"b"}]}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`, `{"type":"object","properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"metadata":{"$ref":"#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta"},"foo":{"type":"string","oneOf":[{"pattern":"a"},{"pattern":"b"}]}},"x-kubernetes-group-version-kind":[{"group":"bar.k8s.io","kind":"Foo","version":"v1"}]}`,
Options{V2: false, StripDefaults: true}, Options{V2: false},
}, },
} }
for _, tt := range tests { for _, tt := range tests {

View File

@ -202,7 +202,8 @@ func buildVersionSpecs(crd *apiextensionsv1.CustomResourceDefinition, oldSpecs m
if !v.Served { if !v.Served {
continue continue
} }
spec, err := builder.BuildSwagger(crd, v.Name, builder.Options{V2: true, StripDefaults: true}) // Defaults are not pruned here, but before being served.
spec, err := builder.BuildSwagger(crd, v.Name, builder.Options{V2: true})
if err != nil { if err != nil {
return nil, false, err return nil, false, err
} }

View File

@ -34,7 +34,7 @@ require (
gopkg.in/inf.v0 v0.9.1 gopkg.in/inf.v0 v0.9.1
gopkg.in/yaml.v2 v2.2.8 gopkg.in/yaml.v2 v2.2.8
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 sigs.k8s.io/structured-merge-diff/v4 v4.0.2
sigs.k8s.io/yaml v1.2.0 sigs.k8s.io/yaml v1.2.0
) )

View File

@ -207,8 +207,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8= sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=

View File

@ -46,7 +46,7 @@ require (
k8s.io/client-go v0.0.0 k8s.io/client-go v0.0.0
k8s.io/component-base v0.0.0 k8s.io/component-base v0.0.0
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 k8s.io/utils v0.0.0-20201110183641-67b214c5f920
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14 sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 sigs.k8s.io/structured-merge-diff/v4 v4.0.2

View File

@ -605,8 +605,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -38,7 +38,7 @@ func (oa OpenAPI) Install(c *restful.Container, mux *mux.PathRecorderMux) (*hand
if err != nil { if err != nil {
klog.Fatalf("Failed to build open api spec for root: %v", err) klog.Fatalf("Failed to build open api spec for root: %v", err)
} }
spec.Definitions = handler.PruneDefaults(spec.Definitions)
openAPIVersionedService, err := handler.NewOpenAPIService(spec) openAPIVersionedService, err := handler.NewOpenAPIService(spec)
if err != nil { if err != nil {
klog.Fatalf("Failed to create OpenAPIService: %v", err) klog.Fatalf("Failed to create OpenAPIService: %v", err)

View File

@ -20,7 +20,7 @@ require (
k8s.io/api v0.0.0 k8s.io/api v0.0.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
k8s.io/client-go v0.0.0 k8s.io/client-go v0.0.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
sigs.k8s.io/kustomize v2.0.3+incompatible sigs.k8s.io/kustomize v2.0.3+incompatible
sigs.k8s.io/yaml v1.2.0 sigs.k8s.io/yaml v1.2.0
) )

View File

@ -565,8 +565,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -437,8 +437,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -672,8 +672,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -192,7 +192,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8= sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=

View File

@ -118,6 +118,7 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is the name of the group.", Description: "name is the name of the group.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -129,7 +130,8 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"),
}, },
}, },
}, },
@ -138,6 +140,7 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
"preferredVersion": { "preferredVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "preferredVersion is the version preferred by the API server, which probably is the storage version.", Description: "preferredVersion is the version preferred by the API server, which probably is the storage version.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"),
}, },
}, },
@ -148,7 +151,8 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"),
}, },
}, },
}, },
@ -191,7 +195,8 @@ func schema_pkg_apis_meta_v1_APIGroupList(ref common.ReferenceCallback) common.O
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup"),
}, },
}, },
}, },
@ -216,6 +221,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is the plural name of the resource.", Description: "name is the plural name of the resource.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -223,6 +229,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"singularName": { "singularName": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.", Description: "singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -230,6 +237,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"namespaced": { "namespaced": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "namespaced indicates if a resource is namespaced or not.", Description: "namespaced indicates if a resource is namespaced or not.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -251,6 +259,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')", Description: "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -262,8 +271,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -276,8 +286,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -290,8 +301,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -335,6 +347,7 @@ func schema_pkg_apis_meta_v1_APIResourceList(ref common.ReferenceCallback) commo
"groupVersion": { "groupVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "groupVersion is the group and version this APIResourceList is for.", Description: "groupVersion is the group and version this APIResourceList is for.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -346,7 +359,8 @@ func schema_pkg_apis_meta_v1_APIResourceList(ref common.ReferenceCallback) commo
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIResource"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIResource"),
}, },
}, },
}, },
@ -389,8 +403,9 @@ func schema_pkg_apis_meta_v1_APIVersions(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -403,7 +418,8 @@ func schema_pkg_apis_meta_v1_APIVersions(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"),
}, },
}, },
}, },
@ -428,6 +444,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "type of condition in CamelCase or in foo.example.com/CamelCase.", Description: "type of condition in CamelCase or in foo.example.com/CamelCase.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -435,6 +452,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "status of the condition, one of True, False, Unknown.", Description: "status of the condition, one of True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -449,12 +467,14 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"lastTransitionTime": { "lastTransitionTime": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.", Description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
"reason": { "reason": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.", Description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -462,6 +482,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"message": { "message": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "message is a human readable message indicating details about the transition. This may be an empty string.", Description: "message is a human readable message indicating details about the transition. This may be an empty string.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -503,8 +524,9 @@ func schema_pkg_apis_meta_v1_CreateOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -578,8 +600,9 @@ func schema_pkg_apis_meta_v1_DeleteOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -629,6 +652,7 @@ func schema_pkg_apis_meta_v1_ExportOptions(ref common.ReferenceCallback) common.
"export": { "export": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.", Description: "Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -636,6 +660,7 @@ func schema_pkg_apis_meta_v1_ExportOptions(ref common.ReferenceCallback) common.
"exact": { "exact": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.", Description: "Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -701,14 +726,16 @@ func schema_pkg_apis_meta_v1_GroupKind(ref common.ReferenceCallback) common.Open
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -727,14 +754,16 @@ func schema_pkg_apis_meta_v1_GroupResource(ref common.ReferenceCallback) common.
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"resource": { "resource": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -753,14 +782,16 @@ func schema_pkg_apis_meta_v1_GroupVersion(ref common.ReferenceCallback) common.O
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -780,6 +811,7 @@ func schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref common.ReferenceCallba
"groupVersion": { "groupVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "groupVersion specifies the API group and version in the form \"group/version\"", Description: "groupVersion specifies the API group and version in the form \"group/version\"",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -787,6 +819,7 @@ func schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref common.ReferenceCallba
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.", Description: "version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -807,20 +840,23 @@ func schema_pkg_apis_meta_v1_GroupVersionKind(ref common.ReferenceCallback) comm
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -839,20 +875,23 @@ func schema_pkg_apis_meta_v1_GroupVersionResource(ref common.ReferenceCallback)
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"resource": { "resource": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -871,8 +910,9 @@ func schema_pkg_apis_meta_v1_InternalEvent(ref common.ReferenceCallback) common.
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"Type": { "Type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"Object": { "Object": {
@ -905,8 +945,9 @@ func schema_pkg_apis_meta_v1_LabelSelector(ref common.ReferenceCallback) common.
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -919,7 +960,8 @@ func schema_pkg_apis_meta_v1_LabelSelector(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement"),
}, },
}, },
}, },
@ -954,6 +996,7 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
}, },
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "key is the label key that the selector applies to.", Description: "key is the label key that the selector applies to.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -961,6 +1004,7 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
"operator": { "operator": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.", Description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -972,8 +1016,9 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1010,6 +1055,7 @@ func schema_pkg_apis_meta_v1_List(ref common.ReferenceCallback) common.OpenAPIDe
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1020,7 +1066,8 @@ func schema_pkg_apis_meta_v1_List(ref common.ReferenceCallback) common.OpenAPIDe
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
}, },
@ -1292,6 +1339,7 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
"creationTimestamp": { "creationTimestamp": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", Description: "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
@ -1316,8 +1364,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1331,8 +1380,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1351,7 +1401,8 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference"),
}, },
}, },
}, },
@ -1369,8 +1420,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1390,7 +1442,8 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry"),
}, },
}, },
}, },
@ -1414,6 +1467,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"apiVersion": { "apiVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "API version of the referent.", Description: "API version of the referent.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1421,6 +1475,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1428,6 +1483,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1435,6 +1491,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"uid": { "uid": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", Description: "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1484,6 +1541,7 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadata(ref common.ReferenceCallback)
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
@ -1519,6 +1577,7 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref common.ReferenceCallb
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1529,7 +1588,8 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref common.ReferenceCallb
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata"),
}, },
}, },
}, },
@ -1583,8 +1643,9 @@ func schema_pkg_apis_meta_v1_PatchOptions(ref common.ReferenceCallback) common.O
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1651,8 +1712,9 @@ func schema_pkg_apis_meta_v1_RootPaths(ref common.ReferenceCallback) common.Open
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1675,6 +1737,7 @@ func schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref common.ReferenceCallb
"clientCIDR": { "clientCIDR": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "The CIDR with which clients can match their IP to figure out the server address that they should use.", Description: "The CIDR with which clients can match their IP to figure out the server address that they should use.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1682,6 +1745,7 @@ func schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref common.ReferenceCallb
"serverAddress": { "serverAddress": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.", Description: "Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1717,6 +1781,7 @@ func schema_pkg_apis_meta_v1_Status(ref common.ReferenceCallback) common.OpenAPI
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1838,7 +1903,8 @@ func schema_pkg_apis_meta_v1_StatusDetails(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause"),
}, },
}, },
}, },
@ -1883,6 +1949,7 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1893,7 +1960,8 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition"),
}, },
}, },
}, },
@ -1906,7 +1974,8 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRow"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRow"),
}, },
}, },
}, },
@ -1931,6 +2000,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is a human readable name for the column.", Description: "name is a human readable name for the column.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1938,6 +2008,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "type is an OpenAPI type definition for this column, such as number, integer, string, or array. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", Description: "type is an OpenAPI type definition for this column, such as number, integer, string, or array. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1945,6 +2016,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"format": { "format": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "format is an optional OpenAPI type modifier for this column. A format modifies the type and imposes additional rules, like date or time formatting for a string. The 'name' format is applied to the primary identifier column which has type 'string' to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", Description: "format is an optional OpenAPI type modifier for this column. A format modifies the type and imposes additional rules, like date or time formatting for a string. The 'name' format is applied to the primary identifier column which has type 'string' to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1952,6 +2024,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"description": { "description": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "description is a human readable description of this column.", Description: "description is a human readable description of this column.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1959,6 +2032,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"priority": { "priority": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.", Description: "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2032,7 +2106,8 @@ func schema_pkg_apis_meta_v1_TableRow(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition"),
}, },
}, },
}, },
@ -2041,6 +2116,7 @@ func schema_pkg_apis_meta_v1_TableRow(ref common.ReferenceCallback) common.OpenA
"object": { "object": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing. The media type of the object will always match the enclosing list - if this as a JSON table, these will be JSON encoded objects.", Description: "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing. The media type of the object will always match the enclosing list - if this as a JSON table, these will be JSON encoded objects.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
@ -2063,6 +2139,7 @@ func schema_pkg_apis_meta_v1_TableRowCondition(ref common.ReferenceCallback) com
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Type of row condition. The only defined value is 'Completed' indicating that the object this row represents has reached a completed state and may be given less visual priority than other rows. Clients are not required to honor any conditions but should be consistent where possible about handling the conditions.", Description: "Type of row condition. The only defined value is 'Completed' indicating that the object this row represents has reached a completed state and may be given less visual priority than other rows. Clients are not required to honor any conditions but should be consistent where possible about handling the conditions.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2070,6 +2147,7 @@ func schema_pkg_apis_meta_v1_TableRowCondition(ref common.ReferenceCallback) com
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status of the condition, one of True, False, Unknown.", Description: "Status of the condition, one of True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2117,6 +2195,7 @@ func schema_pkg_apis_meta_v1_Timestamp(ref common.ReferenceCallback) common.Open
"seconds": { "seconds": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", Description: "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int64", Format: "int64",
}, },
@ -2124,6 +2203,7 @@ func schema_pkg_apis_meta_v1_Timestamp(ref common.ReferenceCallback) common.Open
"nanos": { "nanos": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. This field may be limited in precision depending on context.", Description: "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. This field may be limited in precision depending on context.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2190,8 +2270,9 @@ func schema_pkg_apis_meta_v1_UpdateOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2219,13 +2300,15 @@ func schema_pkg_apis_meta_v1_WatchEvent(ref common.ReferenceCallback) common.Ope
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"object": { "object": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Object is:\n * If Type is Added or Modified: the new state of the object.\n * If Type is Deleted: the state of the object immediately before deletion.\n * If Type is Error: *Status is recommended; other types may make sense\n depending on context.", Description: "Object is:\n * If Type is Added or Modified: the new state of the object.\n * If Type is Deleted: the state of the object immediately before deletion.\n * If Type is Error: *Status is recommended; other types may make sense\n depending on context.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
@ -2303,6 +2386,7 @@ func schema_k8sio_apimachinery_pkg_runtime_Unknown(ref common.ReferenceCallback)
"ContentEncoding": { "ContentEncoding": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "ContentEncoding is encoding used to encode 'Raw' data. Unspecified means no encoding.", Description: "ContentEncoding is encoding used to encode 'Raw' data. Unspecified means no encoding.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2310,6 +2394,7 @@ func schema_k8sio_apimachinery_pkg_runtime_Unknown(ref common.ReferenceCallback)
"ContentType": { "ContentType": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "ContentType is serialization method used to serialize 'Raw'. Unspecified means ContentTypeJSON.", Description: "ContentType is serialization method used to serialize 'Raw'. Unspecified means ContentTypeJSON.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2330,56 +2415,65 @@ func schema_k8sio_apimachinery_pkg_version_Info(ref common.ReferenceCallback) co
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"major": { "major": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"minor": { "minor": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitVersion": { "gitVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitCommit": { "gitCommit": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitTreeState": { "gitTreeState": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"buildDate": { "buildDate": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"goVersion": { "goVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"compiler": { "compiler": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"platform": { "platform": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2412,12 +2506,14 @@ func schema_apiserver_apis_example_v1_TestType(ref common.ReferenceCallback) com
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example/v1.TestTypeStatus"), Default: map[string]interface{}{},
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example/v1.TestTypeStatus"),
}, },
}, },
}, },
@ -2451,7 +2547,8 @@ func schema_apiserver_apis_example_v1_TestTypeList(ref common.ReferenceCallback)
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2460,7 +2557,8 @@ func schema_apiserver_apis_example_v1_TestTypeList(ref common.ReferenceCallback)
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example/v1.TestType"), Default: map[string]interface{}{},
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example/v1.TestType"),
}, },
}, },
}, },
@ -2483,8 +2581,9 @@ func schema_apiserver_apis_example_v1_TestTypeStatus(ref common.ReferenceCallbac
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"Blah": { "Blah": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2517,12 +2616,14 @@ func schema_apiserver_apis_example2_v1_TestType(ref common.ReferenceCallback) co
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example2/v1.TestTypeStatus"), Default: map[string]interface{}{},
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example2/v1.TestTypeStatus"),
}, },
}, },
}, },
@ -2556,7 +2657,8 @@ func schema_apiserver_apis_example2_v1_TestTypeList(ref common.ReferenceCallback
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2565,7 +2667,8 @@ func schema_apiserver_apis_example2_v1_TestTypeList(ref common.ReferenceCallback
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example2/v1.TestType"), Default: map[string]interface{}{},
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example2/v1.TestType"),
}, },
}, },
}, },
@ -2588,8 +2691,9 @@ func schema_apiserver_apis_example2_v1_TestTypeStatus(ref common.ReferenceCallba
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"Blah": { "Blah": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2622,12 +2726,14 @@ func schema_apiserver_apis_example3io_v1_TestType(ref common.ReferenceCallback)
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example3.io/v1.TestTypeStatus"), Default: map[string]interface{}{},
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example3.io/v1.TestTypeStatus"),
}, },
}, },
}, },
@ -2661,7 +2767,8 @@ func schema_apiserver_apis_example3io_v1_TestTypeList(ref common.ReferenceCallba
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2670,7 +2777,8 @@ func schema_apiserver_apis_example3io_v1_TestTypeList(ref common.ReferenceCallba
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example3.io/v1.TestType"), Default: map[string]interface{}{},
Ref: ref("k8s.io/code-generator/_examples/apiserver/apis/example3.io/v1.TestType"),
}, },
}, },
}, },
@ -2693,8 +2801,9 @@ func schema_apiserver_apis_example3io_v1_TestTypeStatus(ref common.ReferenceCall
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"Blah": { "Blah": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },

View File

@ -17,10 +17,9 @@ require (
golang.org/x/text v0.3.4 // indirect golang.org/x/text v0.3.4 // indirect
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 // indirect golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 k8s.io/gengo v0.0.0-20201113003025-83324d819ded
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
sigs.k8s.io/yaml v1.2.0 // indirect
) )
replace k8s.io/code-generator => ../code-generator replace k8s.io/code-generator => ../code-generator

View File

@ -35,6 +35,7 @@ github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM= github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM=
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg=
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
@ -109,6 +110,7 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm
golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -129,13 +131,14 @@ gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q=

View File

@ -496,8 +496,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -411,8 +411,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -864,8 +864,8 @@ k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -187,7 +187,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8= sigs.k8s.io/structured-merge-diff/v4 v4.0.2 h1:YHQV7Dajm86OuqnIR6zAelnDWBRjo+YhYV9PmGrh1s8=
sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=

View File

@ -21,7 +21,7 @@ require (
k8s.io/code-generator v0.0.0 k8s.io/code-generator v0.0.0
k8s.io/component-base v0.0.0 k8s.io/component-base v0.0.0
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 k8s.io/utils v0.0.0-20201110183641-67b214c5f920
) )

View File

@ -573,6 +573,7 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK
golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -676,13 +677,14 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -175,7 +175,12 @@ func (s *specAggregator) buildOpenAPISpec() (specToReturn *spec.Swagger, err err
if specInfo.spec == nil { if specInfo.spec == nil {
continue continue
} }
specs = append(specs, *specInfo) // Copy the spec before removing the defaults.
localSpec := *specInfo.spec
localSpecInfo := *specInfo
localSpecInfo.spec = &localSpec
localSpecInfo.spec.Definitions = handler.PruneDefaults(specInfo.spec.Definitions)
specs = append(specs, localSpecInfo)
} }
if len(specs) == 0 { if len(specs) == 0 {
return &spec.Swagger{}, nil return &spec.Swagger{}, nil

View File

@ -121,6 +121,7 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is the name of the group.", Description: "name is the name of the group.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -132,7 +133,8 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"),
}, },
}, },
}, },
@ -141,6 +143,7 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
"preferredVersion": { "preferredVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "preferredVersion is the version preferred by the API server, which probably is the storage version.", Description: "preferredVersion is the version preferred by the API server, which probably is the storage version.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"),
}, },
}, },
@ -151,7 +154,8 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"),
}, },
}, },
}, },
@ -194,7 +198,8 @@ func schema_pkg_apis_meta_v1_APIGroupList(ref common.ReferenceCallback) common.O
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup"),
}, },
}, },
}, },
@ -219,6 +224,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is the plural name of the resource.", Description: "name is the plural name of the resource.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -226,6 +232,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"singularName": { "singularName": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.", Description: "singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -233,6 +240,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"namespaced": { "namespaced": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "namespaced indicates if a resource is namespaced or not.", Description: "namespaced indicates if a resource is namespaced or not.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -254,6 +262,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')", Description: "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -265,8 +274,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -279,8 +289,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -293,8 +304,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -338,6 +350,7 @@ func schema_pkg_apis_meta_v1_APIResourceList(ref common.ReferenceCallback) commo
"groupVersion": { "groupVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "groupVersion is the group and version this APIResourceList is for.", Description: "groupVersion is the group and version this APIResourceList is for.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -349,7 +362,8 @@ func schema_pkg_apis_meta_v1_APIResourceList(ref common.ReferenceCallback) commo
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIResource"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIResource"),
}, },
}, },
}, },
@ -392,8 +406,9 @@ func schema_pkg_apis_meta_v1_APIVersions(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -406,7 +421,8 @@ func schema_pkg_apis_meta_v1_APIVersions(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"),
}, },
}, },
}, },
@ -431,6 +447,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "type of condition in CamelCase or in foo.example.com/CamelCase.", Description: "type of condition in CamelCase or in foo.example.com/CamelCase.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -438,6 +455,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "status of the condition, one of True, False, Unknown.", Description: "status of the condition, one of True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -452,12 +470,14 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"lastTransitionTime": { "lastTransitionTime": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.", Description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
"reason": { "reason": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.", Description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -465,6 +485,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"message": { "message": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "message is a human readable message indicating details about the transition. This may be an empty string.", Description: "message is a human readable message indicating details about the transition. This may be an empty string.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -506,8 +527,9 @@ func schema_pkg_apis_meta_v1_CreateOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -581,8 +603,9 @@ func schema_pkg_apis_meta_v1_DeleteOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -632,6 +655,7 @@ func schema_pkg_apis_meta_v1_ExportOptions(ref common.ReferenceCallback) common.
"export": { "export": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.", Description: "Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -639,6 +663,7 @@ func schema_pkg_apis_meta_v1_ExportOptions(ref common.ReferenceCallback) common.
"exact": { "exact": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.", Description: "Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -704,14 +729,16 @@ func schema_pkg_apis_meta_v1_GroupKind(ref common.ReferenceCallback) common.Open
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -730,14 +757,16 @@ func schema_pkg_apis_meta_v1_GroupResource(ref common.ReferenceCallback) common.
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"resource": { "resource": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -756,14 +785,16 @@ func schema_pkg_apis_meta_v1_GroupVersion(ref common.ReferenceCallback) common.O
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -783,6 +814,7 @@ func schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref common.ReferenceCallba
"groupVersion": { "groupVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "groupVersion specifies the API group and version in the form \"group/version\"", Description: "groupVersion specifies the API group and version in the form \"group/version\"",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -790,6 +822,7 @@ func schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref common.ReferenceCallba
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.", Description: "version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -810,20 +843,23 @@ func schema_pkg_apis_meta_v1_GroupVersionKind(ref common.ReferenceCallback) comm
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -842,20 +878,23 @@ func schema_pkg_apis_meta_v1_GroupVersionResource(ref common.ReferenceCallback)
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"resource": { "resource": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -874,8 +913,9 @@ func schema_pkg_apis_meta_v1_InternalEvent(ref common.ReferenceCallback) common.
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"Type": { "Type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"Object": { "Object": {
@ -908,8 +948,9 @@ func schema_pkg_apis_meta_v1_LabelSelector(ref common.ReferenceCallback) common.
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -922,7 +963,8 @@ func schema_pkg_apis_meta_v1_LabelSelector(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement"),
}, },
}, },
}, },
@ -957,6 +999,7 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
}, },
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "key is the label key that the selector applies to.", Description: "key is the label key that the selector applies to.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -964,6 +1007,7 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
"operator": { "operator": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.", Description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -975,8 +1019,9 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1013,6 +1058,7 @@ func schema_pkg_apis_meta_v1_List(ref common.ReferenceCallback) common.OpenAPIDe
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1023,7 +1069,8 @@ func schema_pkg_apis_meta_v1_List(ref common.ReferenceCallback) common.OpenAPIDe
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
}, },
@ -1295,6 +1342,7 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
"creationTimestamp": { "creationTimestamp": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", Description: "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
@ -1319,8 +1367,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1334,8 +1383,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1354,7 +1404,8 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference"),
}, },
}, },
}, },
@ -1372,8 +1423,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1393,7 +1445,8 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry"),
}, },
}, },
}, },
@ -1417,6 +1470,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"apiVersion": { "apiVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "API version of the referent.", Description: "API version of the referent.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1424,6 +1478,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1431,6 +1486,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1438,6 +1494,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"uid": { "uid": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", Description: "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1487,6 +1544,7 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadata(ref common.ReferenceCallback)
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
@ -1522,6 +1580,7 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref common.ReferenceCallb
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1532,7 +1591,8 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref common.ReferenceCallb
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata"),
}, },
}, },
}, },
@ -1586,8 +1646,9 @@ func schema_pkg_apis_meta_v1_PatchOptions(ref common.ReferenceCallback) common.O
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1654,8 +1715,9 @@ func schema_pkg_apis_meta_v1_RootPaths(ref common.ReferenceCallback) common.Open
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1678,6 +1740,7 @@ func schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref common.ReferenceCallb
"clientCIDR": { "clientCIDR": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "The CIDR with which clients can match their IP to figure out the server address that they should use.", Description: "The CIDR with which clients can match their IP to figure out the server address that they should use.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1685,6 +1748,7 @@ func schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref common.ReferenceCallb
"serverAddress": { "serverAddress": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.", Description: "Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1720,6 +1784,7 @@ func schema_pkg_apis_meta_v1_Status(ref common.ReferenceCallback) common.OpenAPI
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1841,7 +1906,8 @@ func schema_pkg_apis_meta_v1_StatusDetails(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause"),
}, },
}, },
}, },
@ -1886,6 +1952,7 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1896,7 +1963,8 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition"),
}, },
}, },
}, },
@ -1909,7 +1977,8 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRow"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRow"),
}, },
}, },
}, },
@ -1934,6 +2003,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is a human readable name for the column.", Description: "name is a human readable name for the column.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1941,6 +2011,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "type is an OpenAPI type definition for this column, such as number, integer, string, or array. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", Description: "type is an OpenAPI type definition for this column, such as number, integer, string, or array. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1948,6 +2019,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"format": { "format": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "format is an optional OpenAPI type modifier for this column. A format modifies the type and imposes additional rules, like date or time formatting for a string. The 'name' format is applied to the primary identifier column which has type 'string' to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", Description: "format is an optional OpenAPI type modifier for this column. A format modifies the type and imposes additional rules, like date or time formatting for a string. The 'name' format is applied to the primary identifier column which has type 'string' to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1955,6 +2027,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"description": { "description": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "description is a human readable description of this column.", Description: "description is a human readable description of this column.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1962,6 +2035,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"priority": { "priority": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.", Description: "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2035,7 +2109,8 @@ func schema_pkg_apis_meta_v1_TableRow(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition"),
}, },
}, },
}, },
@ -2044,6 +2119,7 @@ func schema_pkg_apis_meta_v1_TableRow(ref common.ReferenceCallback) common.OpenA
"object": { "object": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing. The media type of the object will always match the enclosing list - if this as a JSON table, these will be JSON encoded objects.", Description: "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing. The media type of the object will always match the enclosing list - if this as a JSON table, these will be JSON encoded objects.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
@ -2066,6 +2142,7 @@ func schema_pkg_apis_meta_v1_TableRowCondition(ref common.ReferenceCallback) com
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Type of row condition. The only defined value is 'Completed' indicating that the object this row represents has reached a completed state and may be given less visual priority than other rows. Clients are not required to honor any conditions but should be consistent where possible about handling the conditions.", Description: "Type of row condition. The only defined value is 'Completed' indicating that the object this row represents has reached a completed state and may be given less visual priority than other rows. Clients are not required to honor any conditions but should be consistent where possible about handling the conditions.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2073,6 +2150,7 @@ func schema_pkg_apis_meta_v1_TableRowCondition(ref common.ReferenceCallback) com
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status of the condition, one of True, False, Unknown.", Description: "Status of the condition, one of True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2120,6 +2198,7 @@ func schema_pkg_apis_meta_v1_Timestamp(ref common.ReferenceCallback) common.Open
"seconds": { "seconds": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", Description: "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int64", Format: "int64",
}, },
@ -2127,6 +2206,7 @@ func schema_pkg_apis_meta_v1_Timestamp(ref common.ReferenceCallback) common.Open
"nanos": { "nanos": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. This field may be limited in precision depending on context.", Description: "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. This field may be limited in precision depending on context.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2193,8 +2273,9 @@ func schema_pkg_apis_meta_v1_UpdateOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2222,13 +2303,15 @@ func schema_pkg_apis_meta_v1_WatchEvent(ref common.ReferenceCallback) common.Ope
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"object": { "object": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Object is:\n * If Type is Added or Modified: the new state of the object.\n * If Type is Deleted: the state of the object immediately before deletion.\n * If Type is Error: *Status is recommended; other types may make sense\n depending on context.", Description: "Object is:\n * If Type is Added or Modified: the new state of the object.\n * If Type is Deleted: the state of the object immediately before deletion.\n * If Type is Error: *Status is recommended; other types may make sense\n depending on context.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
@ -2306,6 +2389,7 @@ func schema_k8sio_apimachinery_pkg_runtime_Unknown(ref common.ReferenceCallback)
"ContentEncoding": { "ContentEncoding": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "ContentEncoding is encoding used to encode 'Raw' data. Unspecified means no encoding.", Description: "ContentEncoding is encoding used to encode 'Raw' data. Unspecified means no encoding.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2313,6 +2397,7 @@ func schema_k8sio_apimachinery_pkg_runtime_Unknown(ref common.ReferenceCallback)
"ContentType": { "ContentType": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "ContentType is serialization method used to serialize 'Raw'. Unspecified means ContentTypeJSON.", Description: "ContentType is serialization method used to serialize 'Raw'. Unspecified means ContentTypeJSON.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2333,56 +2418,65 @@ func schema_k8sio_apimachinery_pkg_version_Info(ref common.ReferenceCallback) co
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"major": { "major": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"minor": { "minor": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitVersion": { "gitVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitCommit": { "gitCommit": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitTreeState": { "gitTreeState": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"buildDate": { "buildDate": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"goVersion": { "goVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"compiler": { "compiler": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"platform": { "platform": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2415,18 +2509,21 @@ func schema_pkg_apis_apiregistration_v1_APIService(ref common.ReferenceCallback)
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"spec": { "spec": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Spec contains information for locating and communicating with a server", Description: "Spec contains information for locating and communicating with a server",
Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIServiceSpec"), Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIServiceSpec"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status contains derived information about an API server", Description: "Status contains derived information about an API server",
Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIServiceStatus"), Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIServiceStatus"),
}, },
}, },
@ -2448,6 +2545,7 @@ func schema_pkg_apis_apiregistration_v1_APIServiceCondition(ref common.Reference
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Type is the type of the condition.", Description: "Type is the type of the condition.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2455,6 +2553,7 @@ func schema_pkg_apis_apiregistration_v1_APIServiceCondition(ref common.Reference
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status is the status of the condition. Can be True, False, Unknown.", Description: "Status is the status of the condition. Can be True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2462,6 +2561,7 @@ func schema_pkg_apis_apiregistration_v1_APIServiceCondition(ref common.Reference
"lastTransitionTime": { "lastTransitionTime": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Last time the condition transitioned from one status to another.", Description: "Last time the condition transitioned from one status to another.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
@ -2511,7 +2611,8 @@ func schema_pkg_apis_apiregistration_v1_APIServiceList(ref common.ReferenceCallb
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2520,7 +2621,8 @@ func schema_pkg_apis_apiregistration_v1_APIServiceList(ref common.ReferenceCallb
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIService"), Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIService"),
}, },
}, },
}, },
@ -2584,6 +2686,7 @@ func schema_pkg_apis_apiregistration_v1_APIServiceSpec(ref common.ReferenceCallb
"groupPriorityMinimum": { "groupPriorityMinimum": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "GroupPriorityMininum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMininum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object. (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s", Description: "GroupPriorityMininum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMininum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object. (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2591,6 +2694,7 @@ func schema_pkg_apis_apiregistration_v1_APIServiceSpec(ref common.ReferenceCallb
"versionPriority": { "versionPriority": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "VersionPriority controls the ordering of this API version inside of its group. Must be greater than zero. The primary sort is based on VersionPriority, ordered highest to lowest (20 before 10). Since it's inside of a group, the number can be small, probably in the 10s. In case of equal version priorities, the version string will be used to compute the order inside a group. If the version string is \"kube-like\", it will sort above non \"kube-like\" version strings, which are ordered lexicographically. \"Kube-like\" versions start with a \"v\", then are followed by a number (the major version), then optionally the string \"alpha\" or \"beta\" and another number (the minor version). These are sorted first by GA > beta > alpha (where GA is a version with no suffix such as beta or alpha), and then by comparing major version, then minor version. An example sorted list of versions: v10, v2, v1, v11beta2, v10beta3, v3beta1, v12alpha1, v11alpha2, foo1, foo10.", Description: "VersionPriority controls the ordering of this API version inside of its group. Must be greater than zero. The primary sort is based on VersionPriority, ordered highest to lowest (20 before 10). Since it's inside of a group, the number can be small, probably in the 10s. In case of equal version priorities, the version string will be used to compute the order inside a group. If the version string is \"kube-like\", it will sort above non \"kube-like\" version strings, which are ordered lexicographically. \"Kube-like\" versions start with a \"v\", then are followed by a number (the major version), then optionally the string \"alpha\" or \"beta\" and another number (the minor version). These are sorted first by GA > beta > alpha (where GA is a version with no suffix such as beta or alpha), and then by comparing major version, then minor version. An example sorted list of versions: v10, v2, v1, v11beta2, v10beta3, v3beta1, v12alpha1, v11alpha2, foo1, foo10.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2628,7 +2732,8 @@ func schema_pkg_apis_apiregistration_v1_APIServiceStatus(ref common.ReferenceCal
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIServiceCondition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1.APIServiceCondition"),
}, },
}, },
}, },
@ -2699,18 +2804,21 @@ func schema_pkg_apis_apiregistration_v1beta1_APIService(ref common.ReferenceCall
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"spec": { "spec": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Spec contains information for locating and communicating with a server", Description: "Spec contains information for locating and communicating with a server",
Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIServiceSpec"), Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIServiceSpec"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status contains derived information about an API server", Description: "Status contains derived information about an API server",
Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIServiceStatus"), Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIServiceStatus"),
}, },
}, },
@ -2732,6 +2840,7 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceCondition(ref common.Refe
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Type is the type of the condition.", Description: "Type is the type of the condition.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2739,6 +2848,7 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceCondition(ref common.Refe
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status is the status of the condition. Can be True, False, Unknown.", Description: "Status is the status of the condition. Can be True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2746,6 +2856,7 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceCondition(ref common.Refe
"lastTransitionTime": { "lastTransitionTime": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Last time the condition transitioned from one status to another.", Description: "Last time the condition transitioned from one status to another.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
@ -2795,7 +2906,8 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceList(ref common.Reference
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2804,7 +2916,8 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceList(ref common.Reference
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIService"), Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIService"),
}, },
}, },
}, },
@ -2868,6 +2981,7 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceSpec(ref common.Reference
"groupPriorityMinimum": { "groupPriorityMinimum": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "GroupPriorityMininum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMininum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object. (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s", Description: "GroupPriorityMininum is the priority this group should have at least. Higher priority means that the group is preferred by clients over lower priority ones. Note that other versions of this group might specify even higher GroupPriorityMininum values such that the whole group gets a higher priority. The primary sort is based on GroupPriorityMinimum, ordered highest number to lowest (20 before 10). The secondary sort is based on the alphabetical comparison of the name of the object. (v1.bar before v1.foo) We'd recommend something like: *.k8s.io (except extensions) at 18000 and PaaSes (OpenShift, Deis) are recommended to be in the 2000s",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2875,6 +2989,7 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceSpec(ref common.Reference
"versionPriority": { "versionPriority": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "VersionPriority controls the ordering of this API version inside of its group. Must be greater than zero. The primary sort is based on VersionPriority, ordered highest to lowest (20 before 10). Since it's inside of a group, the number can be small, probably in the 10s. In case of equal version priorities, the version string will be used to compute the order inside a group. If the version string is \"kube-like\", it will sort above non \"kube-like\" version strings, which are ordered lexicographically. \"Kube-like\" versions start with a \"v\", then are followed by a number (the major version), then optionally the string \"alpha\" or \"beta\" and another number (the minor version). These are sorted first by GA > beta > alpha (where GA is a version with no suffix such as beta or alpha), and then by comparing major version, then minor version. An example sorted list of versions: v10, v2, v1, v11beta2, v10beta3, v3beta1, v12alpha1, v11alpha2, foo1, foo10.", Description: "VersionPriority controls the ordering of this API version inside of its group. Must be greater than zero. The primary sort is based on VersionPriority, ordered highest to lowest (20 before 10). Since it's inside of a group, the number can be small, probably in the 10s. In case of equal version priorities, the version string will be used to compute the order inside a group. If the version string is \"kube-like\", it will sort above non \"kube-like\" version strings, which are ordered lexicographically. \"Kube-like\" versions start with a \"v\", then are followed by a number (the major version), then optionally the string \"alpha\" or \"beta\" and another number (the minor version). These are sorted first by GA > beta > alpha (where GA is a version with no suffix such as beta or alpha), and then by comparing major version, then minor version. An example sorted list of versions: v10, v2, v1, v11beta2, v10beta3, v3beta1, v12alpha1, v11alpha2, foo1, foo10.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2912,7 +3027,8 @@ func schema_pkg_apis_apiregistration_v1beta1_APIServiceStatus(ref common.Referen
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIServiceCondition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1.APIServiceCondition"),
}, },
}, },
}, },

View File

@ -652,7 +652,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -456,7 +456,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -456,7 +456,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -41,7 +41,7 @@ require (
k8s.io/component-base v0.0.0 k8s.io/component-base v0.0.0
k8s.io/component-helpers v0.0.0 k8s.io/component-helpers v0.0.0
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/metrics v0.0.0 k8s.io/metrics v0.0.0
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 k8s.io/utils v0.0.0-20201110183641-67b214c5f920
sigs.k8s.io/kustomize v2.0.3+incompatible sigs.k8s.io/kustomize v2.0.3+incompatible

View File

@ -542,6 +542,7 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK
golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -634,12 +635,13 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -468,7 +468,7 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -687,8 +687,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -342,6 +342,7 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK
golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -426,13 +427,14 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -14,7 +14,7 @@ require (
k8s.io/code-generator v0.0.0 k8s.io/code-generator v0.0.0
k8s.io/component-base v0.0.0 k8s.io/component-base v0.0.0
k8s.io/klog/v2 v2.4.0 k8s.io/klog/v2 v2.4.0
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
) )
replace ( replace (

View File

@ -570,6 +570,7 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK
golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -673,13 +674,14 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -119,6 +119,7 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is the name of the group.", Description: "name is the name of the group.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -130,7 +131,8 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"),
}, },
}, },
}, },
@ -139,6 +141,7 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
"preferredVersion": { "preferredVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "preferredVersion is the version preferred by the API server, which probably is the storage version.", Description: "preferredVersion is the version preferred by the API server, which probably is the storage version.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery"),
}, },
}, },
@ -149,7 +152,8 @@ func schema_pkg_apis_meta_v1_APIGroup(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"),
}, },
}, },
}, },
@ -192,7 +196,8 @@ func schema_pkg_apis_meta_v1_APIGroupList(ref common.ReferenceCallback) common.O
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup"),
}, },
}, },
}, },
@ -217,6 +222,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is the plural name of the resource.", Description: "name is the plural name of the resource.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -224,6 +230,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"singularName": { "singularName": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.", Description: "singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -231,6 +238,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"namespaced": { "namespaced": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "namespaced indicates if a resource is namespaced or not.", Description: "namespaced indicates if a resource is namespaced or not.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -252,6 +260,7 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')", Description: "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -263,8 +272,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -277,8 +287,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -291,8 +302,9 @@ func schema_pkg_apis_meta_v1_APIResource(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -336,6 +348,7 @@ func schema_pkg_apis_meta_v1_APIResourceList(ref common.ReferenceCallback) commo
"groupVersion": { "groupVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "groupVersion is the group and version this APIResourceList is for.", Description: "groupVersion is the group and version this APIResourceList is for.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -347,7 +360,8 @@ func schema_pkg_apis_meta_v1_APIResourceList(ref common.ReferenceCallback) commo
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIResource"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.APIResource"),
}, },
}, },
}, },
@ -390,8 +404,9 @@ func schema_pkg_apis_meta_v1_APIVersions(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -404,7 +419,8 @@ func schema_pkg_apis_meta_v1_APIVersions(ref common.ReferenceCallback) common.Op
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR"),
}, },
}, },
}, },
@ -429,6 +445,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "type of condition in CamelCase or in foo.example.com/CamelCase.", Description: "type of condition in CamelCase or in foo.example.com/CamelCase.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -436,6 +453,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "status of the condition, one of True, False, Unknown.", Description: "status of the condition, one of True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -450,12 +468,14 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"lastTransitionTime": { "lastTransitionTime": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.", Description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
"reason": { "reason": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.", Description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -463,6 +483,7 @@ func schema_pkg_apis_meta_v1_Condition(ref common.ReferenceCallback) common.Open
"message": { "message": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "message is a human readable message indicating details about the transition. This may be an empty string.", Description: "message is a human readable message indicating details about the transition. This may be an empty string.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -504,8 +525,9 @@ func schema_pkg_apis_meta_v1_CreateOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -579,8 +601,9 @@ func schema_pkg_apis_meta_v1_DeleteOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -630,6 +653,7 @@ func schema_pkg_apis_meta_v1_ExportOptions(ref common.ReferenceCallback) common.
"export": { "export": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.", Description: "Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -637,6 +661,7 @@ func schema_pkg_apis_meta_v1_ExportOptions(ref common.ReferenceCallback) common.
"exact": { "exact": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.", Description: "Should the export be exact. Exact export maintains cluster-specific fields like 'Namespace'. Deprecated. Planned for removal in 1.18.",
Default: false,
Type: []string{"boolean"}, Type: []string{"boolean"},
Format: "", Format: "",
}, },
@ -702,14 +727,16 @@ func schema_pkg_apis_meta_v1_GroupKind(ref common.ReferenceCallback) common.Open
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -728,14 +755,16 @@ func schema_pkg_apis_meta_v1_GroupResource(ref common.ReferenceCallback) common.
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"resource": { "resource": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -754,14 +783,16 @@ func schema_pkg_apis_meta_v1_GroupVersion(ref common.ReferenceCallback) common.O
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -781,6 +812,7 @@ func schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref common.ReferenceCallba
"groupVersion": { "groupVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "groupVersion specifies the API group and version in the form \"group/version\"", Description: "groupVersion specifies the API group and version in the form \"group/version\"",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -788,6 +820,7 @@ func schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref common.ReferenceCallba
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.", Description: "version specifies the version in the form of \"version\". This is to save the clients the trouble of splitting the GroupVersion.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -808,20 +841,23 @@ func schema_pkg_apis_meta_v1_GroupVersionKind(ref common.ReferenceCallback) comm
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -840,20 +876,23 @@ func schema_pkg_apis_meta_v1_GroupVersionResource(ref common.ReferenceCallback)
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"group": { "group": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"version": { "version": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"resource": { "resource": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -872,8 +911,9 @@ func schema_pkg_apis_meta_v1_InternalEvent(ref common.ReferenceCallback) common.
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"Type": { "Type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"Object": { "Object": {
@ -906,8 +946,9 @@ func schema_pkg_apis_meta_v1_LabelSelector(ref common.ReferenceCallback) common.
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -920,7 +961,8 @@ func schema_pkg_apis_meta_v1_LabelSelector(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement"),
}, },
}, },
}, },
@ -955,6 +997,7 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
}, },
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "key is the label key that the selector applies to.", Description: "key is the label key that the selector applies to.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -962,6 +1005,7 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
"operator": { "operator": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.", Description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -973,8 +1017,9 @@ func schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref common.ReferenceCallba
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1011,6 +1056,7 @@ func schema_pkg_apis_meta_v1_List(ref common.ReferenceCallback) common.OpenAPIDe
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1021,7 +1067,8 @@ func schema_pkg_apis_meta_v1_List(ref common.ReferenceCallback) common.OpenAPIDe
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
}, },
@ -1293,6 +1340,7 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
"creationTimestamp": { "creationTimestamp": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", Description: "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.Time"),
}, },
}, },
@ -1317,8 +1365,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1332,8 +1381,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Allows: true, Allows: true,
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1352,7 +1402,8 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference"),
}, },
}, },
}, },
@ -1370,8 +1421,9 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1391,7 +1443,8 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry"),
}, },
}, },
}, },
@ -1415,6 +1468,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"apiVersion": { "apiVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "API version of the referent.", Description: "API version of the referent.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1422,6 +1476,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"kind": { "kind": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1429,6 +1484,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1436,6 +1492,7 @@ func schema_pkg_apis_meta_v1_OwnerReference(ref common.ReferenceCallback) common
"uid": { "uid": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", Description: "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1485,6 +1542,7 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadata(ref common.ReferenceCallback)
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata", Description: "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
@ -1520,6 +1578,7 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref common.ReferenceCallb
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1530,7 +1589,8 @@ func schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref common.ReferenceCallb
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata"),
}, },
}, },
}, },
@ -1584,8 +1644,9 @@ func schema_pkg_apis_meta_v1_PatchOptions(ref common.ReferenceCallback) common.O
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1652,8 +1713,9 @@ func schema_pkg_apis_meta_v1_RootPaths(ref common.ReferenceCallback) common.Open
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -1676,6 +1738,7 @@ func schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref common.ReferenceCallb
"clientCIDR": { "clientCIDR": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "The CIDR with which clients can match their IP to figure out the server address that they should use.", Description: "The CIDR with which clients can match their IP to figure out the server address that they should use.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1683,6 +1746,7 @@ func schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref common.ReferenceCallb
"serverAddress": { "serverAddress": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.", Description: "Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1718,6 +1782,7 @@ func schema_pkg_apis_meta_v1_Status(ref common.ReferenceCallback) common.OpenAPI
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1839,7 +1904,8 @@ func schema_pkg_apis_meta_v1_StatusDetails(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause"),
}, },
}, },
}, },
@ -1884,6 +1950,7 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", Description: "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
@ -1894,7 +1961,8 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition"),
}, },
}, },
}, },
@ -1907,7 +1975,8 @@ func schema_pkg_apis_meta_v1_Table(ref common.ReferenceCallback) common.OpenAPID
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRow"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRow"),
}, },
}, },
}, },
@ -1932,6 +2001,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"name": { "name": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "name is a human readable name for the column.", Description: "name is a human readable name for the column.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1939,6 +2009,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "type is an OpenAPI type definition for this column, such as number, integer, string, or array. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", Description: "type is an OpenAPI type definition for this column, such as number, integer, string, or array. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1946,6 +2017,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"format": { "format": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "format is an optional OpenAPI type modifier for this column. A format modifies the type and imposes additional rules, like date or time formatting for a string. The 'name' format is applied to the primary identifier column which has type 'string' to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", Description: "format is an optional OpenAPI type modifier for this column. A format modifies the type and imposes additional rules, like date or time formatting for a string. The 'name' format is applied to the primary identifier column which has type 'string' to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1953,6 +2025,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"description": { "description": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "description is a human readable description of this column.", Description: "description is a human readable description of this column.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -1960,6 +2033,7 @@ func schema_pkg_apis_meta_v1_TableColumnDefinition(ref common.ReferenceCallback)
"priority": { "priority": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.", Description: "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2033,7 +2107,8 @@ func schema_pkg_apis_meta_v1_TableRow(ref common.ReferenceCallback) common.OpenA
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition"),
}, },
}, },
}, },
@ -2042,6 +2117,7 @@ func schema_pkg_apis_meta_v1_TableRow(ref common.ReferenceCallback) common.OpenA
"object": { "object": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing. The media type of the object will always match the enclosing list - if this as a JSON table, these will be JSON encoded objects.", Description: "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing. The media type of the object will always match the enclosing list - if this as a JSON table, these will be JSON encoded objects.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
@ -2064,6 +2140,7 @@ func schema_pkg_apis_meta_v1_TableRowCondition(ref common.ReferenceCallback) com
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Type of row condition. The only defined value is 'Completed' indicating that the object this row represents has reached a completed state and may be given less visual priority than other rows. Clients are not required to honor any conditions but should be consistent where possible about handling the conditions.", Description: "Type of row condition. The only defined value is 'Completed' indicating that the object this row represents has reached a completed state and may be given less visual priority than other rows. Clients are not required to honor any conditions but should be consistent where possible about handling the conditions.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2071,6 +2148,7 @@ func schema_pkg_apis_meta_v1_TableRowCondition(ref common.ReferenceCallback) com
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Status of the condition, one of True, False, Unknown.", Description: "Status of the condition, one of True, False, Unknown.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2118,6 +2196,7 @@ func schema_pkg_apis_meta_v1_Timestamp(ref common.ReferenceCallback) common.Open
"seconds": { "seconds": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", Description: "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int64", Format: "int64",
}, },
@ -2125,6 +2204,7 @@ func schema_pkg_apis_meta_v1_Timestamp(ref common.ReferenceCallback) common.Open
"nanos": { "nanos": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. This field may be limited in precision depending on context.", Description: "Non-negative fractions of a second at nanosecond resolution. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be from 0 to 999,999,999 inclusive. This field may be limited in precision depending on context.",
Default: 0,
Type: []string{"integer"}, Type: []string{"integer"},
Format: "int32", Format: "int32",
}, },
@ -2191,8 +2271,9 @@ func schema_pkg_apis_meta_v1_UpdateOptions(ref common.ReferenceCallback) common.
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2220,13 +2301,15 @@ func schema_pkg_apis_meta_v1_WatchEvent(ref common.ReferenceCallback) common.Ope
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"type": { "type": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"object": { "object": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "Object is:\n * If Type is Added or Modified: the new state of the object.\n * If Type is Deleted: the state of the object immediately before deletion.\n * If Type is Error: *Status is recommended; other types may make sense\n depending on context.", Description: "Object is:\n * If Type is Added or Modified: the new state of the object.\n * If Type is Deleted: the state of the object immediately before deletion.\n * If Type is Error: *Status is recommended; other types may make sense\n depending on context.",
Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"), Ref: ref("k8s.io/apimachinery/pkg/runtime.RawExtension"),
}, },
}, },
@ -2304,6 +2387,7 @@ func schema_k8sio_apimachinery_pkg_runtime_Unknown(ref common.ReferenceCallback)
"ContentEncoding": { "ContentEncoding": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "ContentEncoding is encoding used to encode 'Raw' data. Unspecified means no encoding.", Description: "ContentEncoding is encoding used to encode 'Raw' data. Unspecified means no encoding.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2311,6 +2395,7 @@ func schema_k8sio_apimachinery_pkg_runtime_Unknown(ref common.ReferenceCallback)
"ContentType": { "ContentType": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Description: "ContentType is serialization method used to serialize 'Raw'. Unspecified means ContentTypeJSON.", Description: "ContentType is serialization method used to serialize 'Raw'. Unspecified means ContentTypeJSON.",
Default: "",
Type: []string{"string"}, Type: []string{"string"},
Format: "", Format: "",
}, },
@ -2331,56 +2416,65 @@ func schema_k8sio_apimachinery_pkg_version_Info(ref common.ReferenceCallback) co
Properties: map[string]spec.Schema{ Properties: map[string]spec.Schema{
"major": { "major": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"minor": { "minor": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitVersion": { "gitVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitCommit": { "gitCommit": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"gitTreeState": { "gitTreeState": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"buildDate": { "buildDate": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"goVersion": { "goVersion": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"compiler": { "compiler": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
"platform": { "platform": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2412,7 +2506,8 @@ func schema_pkg_apis_wardle_v1alpha1_Fischer(ref common.ReferenceCallback) commo
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"disallowedFlunders": { "disallowedFlunders": {
@ -2422,8 +2517,9 @@ func schema_pkg_apis_wardle_v1alpha1_Fischer(ref common.ReferenceCallback) commo
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{"string"}, Default: "",
Format: "", Type: []string{"string"},
Format: "",
}, },
}, },
}, },
@ -2460,7 +2556,8 @@ func schema_pkg_apis_wardle_v1alpha1_FischerList(ref common.ReferenceCallback) c
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2469,7 +2566,8 @@ func schema_pkg_apis_wardle_v1alpha1_FischerList(ref common.ReferenceCallback) c
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.Fischer"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.Fischer"),
}, },
}, },
}, },
@ -2506,17 +2604,20 @@ func schema_pkg_apis_wardle_v1alpha1_Flunder(ref common.ReferenceCallback) commo
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"spec": { "spec": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.FlunderSpec"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.FlunderSpec"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.FlunderStatus"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.FlunderStatus"),
}, },
}, },
}, },
@ -2550,7 +2651,8 @@ func schema_pkg_apis_wardle_v1alpha1_FlunderList(ref common.ReferenceCallback) c
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2559,7 +2661,8 @@ func schema_pkg_apis_wardle_v1alpha1_FlunderList(ref common.ReferenceCallback) c
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.Flunder"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1.Flunder"),
}, },
}, },
}, },
@ -2633,17 +2736,20 @@ func schema_pkg_apis_wardle_v1beta1_Flunder(ref common.ReferenceCallback) common
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta"),
}, },
}, },
"spec": { "spec": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1.FlunderSpec"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1.FlunderSpec"),
}, },
}, },
"status": { "status": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1.FlunderStatus"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1.FlunderStatus"),
}, },
}, },
}, },
@ -2677,7 +2783,8 @@ func schema_pkg_apis_wardle_v1beta1_FlunderList(ref common.ReferenceCallback) co
}, },
"metadata": { "metadata": {
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"), Default: map[string]interface{}{},
Ref: ref("k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta"),
}, },
}, },
"items": { "items": {
@ -2686,7 +2793,8 @@ func schema_pkg_apis_wardle_v1beta1_FlunderList(ref common.ReferenceCallback) co
Items: &spec.SchemaOrArray{ Items: &spec.SchemaOrArray{
Schema: &spec.Schema{ Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1.Flunder"), Default: map[string]interface{}{},
Ref: ref("k8s.io/sample-apiserver/pkg/apis/wardle/v1beta1.Flunder"),
}, },
}, },
}, },

View File

@ -565,8 +565,8 @@ k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -348,6 +348,7 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK
golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw=
golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054 h1:HHeAlu5H9b71C+Fx0K+1dGgVFN1DM1/wz4aoGOA5qS8=
golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@ -432,13 +433,14 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 h1:t4L10Qfx/p7ASH3gXCdIUtPbbIuegCoUJf3TMSFekjw= k8s.io/gengo v0.0.0-20201113003025-83324d819ded h1:JApXBKYyB7l9xx+DK7/+mFjC7A9Bt5A93FPvFD0HIFE=
k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E=
k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE=
k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ= k8s.io/klog/v2 v2.4.0 h1:7+X0fUguPyrKEC4WjH8iGDg3laWgMo5tMnRTIGTTxGQ=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 h1:CJasJGBT+Atu2XLJHJ90GJBqW23sfBn4vtTlB/+aJJ4= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd h1:sOHNzJIkytDF6qadMNKhhDRpc6ODik8lVC6nOur7B2c=
k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw= k8s.io/utils v0.0.0-20201110183641-67b214c5f920 h1:CbnUZsM497iRC5QMVkHwyl8s2tB3g7yaSHkYPkpgelw=
k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=

View File

@ -18,6 +18,7 @@ go_test(
"//pkg/controlplane:go_default_library", "//pkg/controlplane:go_default_library",
"//staging/src/k8s.io/api/apps/v1:go_default_library", "//staging/src/k8s.io/api/apps/v1:go_default_library",
"//staging/src/k8s.io/api/core/v1:go_default_library", "//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1:go_default_library",
"//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1:go_default_library", "//staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1:go_default_library",
"//staging/src/k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset:go_default_library", "//staging/src/k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset:go_default_library",
"//staging/src/k8s.io/apiextensions-apiserver/test/integration/fixtures:go_default_library", "//staging/src/k8s.io/apiextensions-apiserver/test/integration/fixtures:go_default_library",

View File

@ -23,6 +23,7 @@ import (
"reflect" "reflect"
"testing" "testing"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
apiextensionsv1beta1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1" apiextensionsv1beta1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1"
"k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
"k8s.io/apiextensions-apiserver/test/integration/fixtures" "k8s.io/apiextensions-apiserver/test/integration/fixtures"
@ -825,3 +826,138 @@ func getManagedFields(rawResponse []byte) ([]metav1.ManagedFieldsEntry, error) {
} }
return obj.GetManagedFields(), nil return obj.GetManagedFields(), nil
} }
func TestDefaultMissingKeyCRD(t *testing.T) {
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.ServerSideApply, true)()
server, err := apiservertesting.StartTestServer(t, apiservertesting.NewDefaultTestServerOptions(), nil, framework.SharedEtcd())
if err != nil {
t.Fatal(err)
}
defer server.TearDownFn()
config := server.ClientConfig
apiExtensionClient, err := clientset.NewForConfig(config)
if err != nil {
t.Fatal(err)
}
dynamicClient, err := dynamic.NewForConfig(config)
if err != nil {
t.Fatal(err)
}
noxuDefinition := fixtures.NewNoxuV1CustomResourceDefinition(apiextensionsv1.ClusterScoped)
err = json.Unmarshal([]byte(`{
"openAPIV3Schema": {
"type": "object",
"properties": {
"spec": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true,
"properties": {
"cronSpec": {
"type": "string",
"pattern": "^(\\d+|\\*)(/\\d+)?(\\s+(\\d+|\\*)(/\\d+)?){4}$"
},
"ports": {
"type": "array",
"x-kubernetes-list-map-keys": [
"containerPort",
"protocol"
],
"x-kubernetes-list-type": "map",
"items": {
"properties": {
"containerPort": {
"format": "int32",
"type": "integer"
},
"hostIP": {
"type": "string"
},
"hostPort": {
"format": "int32",
"type": "integer"
},
"name": {
"type": "string"
},
"protocol": {
"default": "TCP",
"type": "string"
}
},
"required": [
"containerPort"
],
"type": "object"
}
}
}
}
}
}
}`), &noxuDefinition.Spec.Versions[0].Schema)
if err != nil {
t.Fatal(err)
}
noxuDefinition, err = fixtures.CreateNewV1CustomResourceDefinition(noxuDefinition, apiExtensionClient, dynamicClient)
if err != nil {
t.Fatal(err)
}
kind := noxuDefinition.Spec.Names.Kind
apiVersion := noxuDefinition.Spec.Group + "/" + noxuDefinition.Spec.Versions[0].Name
name := "mytest"
rest := apiExtensionClient.Discovery().RESTClient()
yamlBody := []byte(fmt.Sprintf(`
apiVersion: %s
kind: %s
metadata:
name: %s
finalizers:
- test-finalizer
spec:
cronSpec: "* * * * */5"
replicas: 1
ports:
- name: x
containerPort: 80`, apiVersion, kind, name))
result, err := rest.Patch(types.ApplyPatchType).
AbsPath("/apis", noxuDefinition.Spec.Group, noxuDefinition.Spec.Versions[0].Name, noxuDefinition.Spec.Names.Plural).
Name(name).
Param("fieldManager", "apply_test").
Body(yamlBody).
DoRaw(context.TODO())
if err != nil {
t.Fatalf("failed to create custom resource with apply: %v:\n%v", err, string(result))
}
// New applier tries to edit an existing list item, we should get conflicts.
result, err = rest.Patch(types.ApplyPatchType).
AbsPath("/apis", noxuDefinition.Spec.Group, noxuDefinition.Spec.Versions[0].Name, noxuDefinition.Spec.Names.Plural).
Name(name).
Param("fieldManager", "apply_test_2").
Body([]byte(fmt.Sprintf(`
apiVersion: %s
kind: %s
metadata:
name: %s
spec:
ports:
- name: "y"
containerPort: 80
protocol: TCP`, apiVersion, kind, name))).
DoRaw(context.TODO())
if err == nil {
t.Fatalf("Expecting to get conflicts when a different applier updates existing list item, got no error: %s", result)
}
status, ok := err.(*apierrors.StatusError)
if !ok {
t.Fatalf("Expecting to get conflicts as API error")
}
if len(status.Status().Details.Causes) != 1 {
t.Fatalf("Expecting to get one conflict when a different applier updates existing list item, got: %v", status.Status().Details.Causes)
}
}

View File

@ -2231,6 +2231,115 @@ func TestApplyCanRemoveMapItemsContributedToByControllers(t *testing.T) {
} }
} }
// TestDefaultMissingKeys makes sure that the missing keys default is used when merging.
func TestDefaultMissingKeys(t *testing.T) {
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.ServerSideApply, true)()
_, client, closeFn := setup(t)
defer closeFn()
// Applier creates a deployment with containerPort but no protocol
apply := []byte(`{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "deployment-shared-map-item-removal",
"labels": {"app": "nginx"}
},
"spec": {
"selector": {
"matchLabels": {
"app": "nginx"
}
},
"template": {
"metadata": {
"labels": {
"app": "nginx"
}
},
"spec": {
"containers": [{
"name": "nginx",
"image": "nginx:latest",
"ports": [{
"name": "foo",
"containerPort": 80
}]
}]
}
}
}
}`)
_, err := client.CoreV1().RESTClient().Patch(types.ApplyPatchType).
AbsPath("/apis/apps/v1").
Namespace("default").
Resource("deployments").
Name("deployment-shared-map-item-removal").
Param("fieldManager", "test_applier").
Body(apply).
Do(context.TODO()).
Get()
if err != nil {
t.Fatalf("Failed to create object using Apply patch: %v", err)
}
// Applier updates the name, and uses the protocol, we should get a conflict.
apply = []byte(`{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "deployment-shared-map-item-removal",
"labels": {"app": "nginx"}
},
"spec": {
"selector": {
"matchLabels": {
"app": "nginx"
}
},
"template": {
"metadata": {
"labels": {
"app": "nginx"
}
},
"spec": {
"containers": [{
"name": "nginx",
"image": "nginx:latest",
"ports": [{
"name": "bar",
"containerPort": 80,
"protocol": "TCP"
}]
}]
}
}
}
}`)
patched, err := client.CoreV1().RESTClient().Patch(types.ApplyPatchType).
AbsPath("/apis/apps/v1").
Namespace("default").
Resource("deployments").
Name("deployment-shared-map-item-removal").
Param("fieldManager", "test_applier_conflict").
Body(apply).
Do(context.TODO()).
Get()
if err == nil {
t.Fatalf("Expecting to get conflicts when a different applier updates existing list item, got no error: %s", patched)
}
status, ok := err.(*apierrors.StatusError)
if !ok {
t.Fatalf("Expecting to get conflicts as API error")
}
if len(status.Status().Details.Causes) != 1 {
t.Fatalf("Expecting to get one conflict when a different applier updates existing list item, got: %v", status.Status().Details.Causes)
}
}
var podBytes = []byte(` var podBytes = []byte(`
apiVersion: v1 apiVersion: v1
kind: Pod kind: Pod

View File

@ -18,6 +18,7 @@ package generators
import ( import (
"bytes" "bytes"
"encoding/json"
"fmt" "fmt"
"io" "io"
"path/filepath" "path/filepath"
@ -38,16 +39,45 @@ type CustomArgs struct {
ExtraPeerDirs []string // Always consider these as last-ditch possibilities for conversions. ExtraPeerDirs []string // Always consider these as last-ditch possibilities for conversions.
} }
var typeZeroValue = map[string]interface{}{
"uint": 0.,
"uint8": 0.,
"uint16": 0.,
"uint32": 0.,
"uint64": 0.,
"int": 0.,
"int8": 0.,
"int16": 0.,
"int32": 0.,
"int64": 0.,
"byte": 0,
"float64": 0.,
"float32": 0.,
"bool": false,
"time.Time": "",
"string": "",
"integer": 0.,
"number": 0.,
"boolean": false,
"[]byte": "", // base64 encoded characters
"interface{}": interface{}(nil),
}
// These are the comment tags that carry parameters for defaulter generation. // These are the comment tags that carry parameters for defaulter generation.
const tagName = "k8s:defaulter-gen" const tagName = "k8s:defaulter-gen"
const intputTagName = "k8s:defaulter-gen-input" const inputTagName = "k8s:defaulter-gen-input"
const defaultTagName = "default"
func extractDefaultTag(comments []string) []string {
return types.ExtractCommentTags("+", comments)[defaultTagName]
}
func extractTag(comments []string) []string { func extractTag(comments []string) []string {
return types.ExtractCommentTags("+", comments)[tagName] return types.ExtractCommentTags("+", comments)[tagName]
} }
func extractInputTag(comments []string) []string { func extractInputTag(comments []string) []string {
return types.ExtractCommentTags("+", comments)[intputTagName] return types.ExtractCommentTags("+", comments)[inputTagName]
} }
func checkTag(comments []string, require ...string) bool { func checkTag(comments []string, require ...string) bool {
@ -401,6 +431,112 @@ func newCallTreeForType(existingDefaulters, newDefaulters defaulterFuncMap) *cal
} }
} }
func resolveTypeAndDepth(t *types.Type) (*types.Type, int) {
var prev *types.Type
depth := 0
for prev != t {
prev = t
if t.Kind == types.Alias {
t = t.Underlying
} else if t.Kind == types.Pointer {
t = t.Elem
depth += 1
}
}
return t, depth
}
// getNestedDefault returns the first default value when resolving alias types
func getNestedDefault(t *types.Type) string {
var prev *types.Type
for prev != t {
prev = t
defaultMap := extractDefaultTag(t.CommentLines)
if len(defaultMap) == 1 && defaultMap[0] != "" {
return defaultMap[0]
}
if t.Kind == types.Alias {
t = t.Underlying
} else if t.Kind == types.Pointer {
t = t.Elem
}
}
return ""
}
func mustEnforceDefault(t *types.Type, depth int, omitEmpty bool) (interface{}, error) {
if depth > 0 {
return nil, nil
}
switch t.Kind {
case types.Pointer, types.Map, types.Slice, types.Array, types.Interface:
return nil, nil
case types.Struct:
return map[string]interface{}{}, nil
case types.Builtin:
if !omitEmpty {
if zero, ok := typeZeroValue[t.String()]; ok {
return zero, nil
} else {
return nil, fmt.Errorf("please add type %v to typeZeroValue struct", t)
}
}
return nil, nil
default:
return nil, fmt.Errorf("not sure how to enforce default for %v", t.Kind)
}
}
func populateDefaultValue(node *callNode, t *types.Type, tags string, commentLines []string) *callNode {
defaultMap := extractDefaultTag(commentLines)
var defaultString string
if len(defaultMap) == 1 {
defaultString = defaultMap[0]
}
t, depth := resolveTypeAndDepth(t)
if depth > 0 && defaultString == "" {
defaultString = getNestedDefault(t)
}
if len(defaultMap) > 1 {
klog.Fatalf("Found more than one default tag for %v", t.Kind)
} else if len(defaultMap) == 0 {
return node
}
var defaultValue interface{}
if err := json.Unmarshal([]byte(defaultString), &defaultValue); err != nil {
klog.Fatalf("Failed to unmarshal default: %v", err)
}
omitEmpty := strings.Contains(reflect.StructTag(tags).Get("json"), "omitempty")
if enforced, err := mustEnforceDefault(t, depth, omitEmpty); err != nil {
klog.Fatal(err)
} else if enforced != nil {
if defaultValue != nil {
if reflect.DeepEqual(defaultValue, enforced) {
// If the default value annotation matches the default value for the type,
// do not generate any defaulting function
return node
} else {
enforcedJSON, _ := json.Marshal(enforced)
klog.Fatalf("Invalid default value (%#v) for non-pointer/non-omitempty. If specified, must be: %v", defaultValue, string(enforcedJSON))
}
}
}
// callNodes are not automatically generated for primitive types. Generate one if the callNode does not exist
if node == nil {
node = &callNode{}
node.markerOnly = true
}
node.defaultIsPrimitive = t.IsPrimitive()
node.defaultType = t.String()
node.defaultValue = defaultString
node.defaultDepth = depth
return node
}
// build creates a tree of paths to fields (based on how they would be accessed in Go - pointer, elem, // build creates a tree of paths to fields (based on how they would be accessed in Go - pointer, elem,
// slice, or key) and the functions that should be invoked on each field. An in-order traversal of the resulting tree // slice, or key) and the functions that should be invoked on each field. An in-order traversal of the resulting tree
// can be used to generate a Go function that invokes each nested function on the appropriate type. The return // can be used to generate a Go function that invokes each nested function on the appropriate type. The return
@ -473,12 +609,19 @@ func (c *callTreeForType) build(t *types.Type, root bool) *callNode {
child.elem = true child.elem = true
} }
parent.children = append(parent.children, *child) parent.children = append(parent.children, *child)
} else if member := populateDefaultValue(nil, t.Elem, "", t.Elem.CommentLines); member != nil {
member.index = true
parent.children = append(parent.children, *member)
} }
case types.Map: case types.Map:
if child := c.build(t.Elem, false); child != nil { if child := c.build(t.Elem, false); child != nil {
child.key = true child.key = true
parent.children = append(parent.children, *child) parent.children = append(parent.children, *child)
} else if member := populateDefaultValue(nil, t.Elem, "", t.Elem.CommentLines); member != nil {
member.key = true
parent.children = append(parent.children, *member)
} }
case types.Struct: case types.Struct:
for _, field := range t.Members { for _, field := range t.Members {
name := field.Name name := field.Name
@ -491,7 +634,11 @@ func (c *callTreeForType) build(t *types.Type, root bool) *callNode {
} }
if child := c.build(field.Type, false); child != nil { if child := c.build(field.Type, false); child != nil {
child.field = name child.field = name
populateDefaultValue(child, field.Type, field.Tags, field.CommentLines)
parent.children = append(parent.children, *child) parent.children = append(parent.children, *child)
} else if member := populateDefaultValue(nil, field.Type, field.Tags, field.CommentLines); member != nil {
member.field = name
parent.children = append(parent.children, *member)
} }
} }
case types.Alias: case types.Alias:
@ -676,6 +823,27 @@ type callNode struct {
call []*types.Type call []*types.Type
// children is the child call nodes that must also be traversed // children is the child call nodes that must also be traversed
children []callNode children []callNode
// defaultValue is the defaultValue of a callNode struct
// Only primitive types and pointer types are eligible to have a default value
defaultValue string
// defaultIsPrimitive is used to determine how to assign the default value.
// Primitive types will be directly assigned while complex types will use JSON unmarshalling
defaultIsPrimitive bool
// markerOnly is true if the callNode exists solely to fill in a default value
markerOnly bool
// defaultDepth is used to determine pointer level of the default value
// For example 1 corresponds to setting a default value and taking its pointer while
// 2 corresponds to setting a default value and taking its pointer's pointer
// 0 implies that no pointers are used
defaultDepth int
// defaultType is the type of the default value.
// Only populated if defaultIsPrimitive is true
defaultType string
} }
// CallNodeVisitorFunc is a function for visiting a call tree. ancestors is the list of all parents // CallNodeVisitorFunc is a function for visiting a call tree. ancestors is the list of all parents
@ -731,6 +899,85 @@ func (n *callNode) writeCalls(varName string, isVarPointer bool, sw *generator.S
} }
} }
func (n *callNode) writeDefaulter(varName string, index string, isVarPointer bool, sw *generator.SnippetWriter) {
if n.defaultValue == "" {
return
}
varPointer := varName
if !isVarPointer {
varPointer = "&" + varPointer
}
args := generator.Args{
"defaultValue": n.defaultValue,
"varPointer": varPointer,
"varName": varName,
"index": index,
"varDepth": n.defaultDepth,
"varType": n.defaultType,
}
if n.index {
sw.Do("if reflect.ValueOf($.var$[$.index$]).IsZero() {\n", generator.Args{"var": varName, "index": index})
if n.defaultIsPrimitive {
if n.defaultDepth > 0 {
sw.Do("var ptrVar$.varDepth$ $.varType$ = $.defaultValue$\n", args)
for i := n.defaultDepth; i > 0; i-- {
sw.Do("ptrVar$.ptri$ := &ptrVar$.i$\n", generator.Args{"i": fmt.Sprintf("%d", i), "ptri": fmt.Sprintf("%d", (i - 1))})
}
sw.Do("$.varName$[$.index$] = ptrVar0", args)
} else {
sw.Do("$.varName$[$.index$] = $.defaultValue$", args)
}
} else {
sw.Do("if err := json.Unmarshal([]byte(`$.defaultValue$`), $.varPointer$[$.index$]); err != nil {\n", args)
sw.Do("panic(err)\n", nil)
sw.Do("}\n", nil)
}
} else if n.key {
mapDefaultVar := index + "_default"
args["mapDefaultVar"] = mapDefaultVar
sw.Do("if reflect.ValueOf($.var$[$.index$]).IsZero() {\n", generator.Args{"var": varName, "index": index})
if n.defaultIsPrimitive {
if n.defaultDepth > 0 {
sw.Do("var ptrVar$.varDepth$ $.varType$ = $.defaultValue$\n", args)
for i := n.defaultDepth; i > 0; i-- {
sw.Do("ptrVar$.ptri$ := &ptrVar$.i$\n", generator.Args{"i": fmt.Sprintf("%d", i), "ptri": fmt.Sprintf("%d", (i - 1))})
}
sw.Do("$.varName$[$.index$] = ptrVar0", args)
} else {
sw.Do("$.varName$[$.index$] = $.defaultValue$", args)
}
} else {
sw.Do("$.mapDefaultVar$ := $.varName$[$.index$]\n", args)
sw.Do("if err := json.Unmarshal([]byte(`$.defaultValue$`), &$.mapDefaultVar$); err != nil {\n", args)
sw.Do("panic(err)\n", nil)
sw.Do("}\n", nil)
sw.Do("$.varName$[$.index$] = $.mapDefaultVar$\n", args)
}
} else {
sw.Do("if reflect.ValueOf($.var$).IsZero() {\n", generator.Args{"var": varName})
if n.defaultIsPrimitive {
if n.defaultDepth > 0 {
sw.Do("var ptrVar$.varDepth$ $.varType$ = $.defaultValue$\n", args)
for i := n.defaultDepth; i > 0; i-- {
sw.Do("ptrVar$.ptri$ := &ptrVar$.i$\n", generator.Args{"i": fmt.Sprintf("%d", i), "ptri": fmt.Sprintf("%d", (i - 1))})
}
sw.Do("$.varName$ = ptrVar0", args)
} else {
sw.Do("$.varName$ = $.defaultValue$", args)
}
} else {
sw.Do("if err := json.Unmarshal([]byte(`$.defaultValue$`), $.varPointer$); err != nil {\n", args)
sw.Do("panic(err)\n", nil)
sw.Do("}\n", nil)
}
}
sw.Do("}\n", nil)
}
// WriteMethod performs an in-order traversal of the calltree, generating loops and if blocks as necessary // WriteMethod performs an in-order traversal of the calltree, generating loops and if blocks as necessary
// to correctly turn the call tree into a method body that invokes all calls on all child nodes of the call tree. // to correctly turn the call tree into a method body that invokes all calls on all child nodes of the call tree.
// Depth is used to generate local variables at the proper depth. // Depth is used to generate local variables at the proper depth.
@ -758,19 +1005,31 @@ func (n *callNode) WriteMethod(varName string, depth int, ancestors []*callNode,
switch { switch {
case n.index: case n.index:
sw.Do("for $.index$ := range $.var$ {\n", vars) sw.Do("for $.index$ := range $.var$ {\n", vars)
if n.elem { if !n.markerOnly {
sw.Do("$.local$ := $.var$[$.index$]\n", vars) if n.elem {
} else { sw.Do("$.local$ := $.var$[$.index$]\n", vars)
sw.Do("$.local$ := &$.var$[$.index$]\n", vars) } else {
sw.Do("$.local$ := &$.var$[$.index$]\n", vars)
}
} }
n.writeDefaulter(varName, index, isPointer, sw)
n.writeCalls(local, true, sw) n.writeCalls(local, true, sw)
for i := range n.children { for i := range n.children {
n.children[i].WriteMethod(local, depth+1, append(ancestors, n), sw) n.children[i].WriteMethod(local, depth+1, append(ancestors, n), sw)
} }
sw.Do("}\n", nil) sw.Do("}\n", nil)
case n.key: case n.key:
if n.defaultValue != "" {
// Map keys are typed and cannot share the same index variable as arrays and other maps
index = index + "_" + ancestors[len(ancestors)-1].field
vars["index"] = index
sw.Do("for $.index$ := range $.var$ {\n", vars)
n.writeDefaulter(varName, index, isPointer, sw)
sw.Do("}\n", nil)
}
default: default:
n.writeDefaulter(varName, index, isPointer, sw)
n.writeCalls(varName, isPointer, sw) n.writeCalls(varName, isPointer, sw)
for i := range n.children { for i := range n.children {
n.children[i].WriteMethod(varName, depth, append(ancestors, n), sw) n.children[i].WriteMethod(varName, depth, append(ancestors, n), sw)

View File

@ -187,7 +187,7 @@ type $.type|public$ map[$.type|raw$]Empty
// New$.type|public$ creates a $.type|public$ from a list of values. // New$.type|public$ creates a $.type|public$ from a list of values.
func New$.type|public$(items ...$.type|raw$) $.type|public$ { func New$.type|public$(items ...$.type|raw$) $.type|public$ {
ss := $.type|public${} ss := make($.type|public$, len(items))
ss.Insert(items...) ss.Insert(items...)
return ss return ss
} }

View File

@ -28,7 +28,7 @@ type Byte map[byte]Empty
// NewByte creates a Byte from a list of values. // NewByte creates a Byte from a list of values.
func NewByte(items ...byte) Byte { func NewByte(items ...byte) Byte {
ss := Byte{} ss := make(Byte, len(items))
ss.Insert(items...) ss.Insert(items...)
return ss return ss
} }

View File

@ -28,7 +28,7 @@ type Int map[int]Empty
// NewInt creates a Int from a list of values. // NewInt creates a Int from a list of values.
func NewInt(items ...int) Int { func NewInt(items ...int) Int {
ss := Int{} ss := make(Int, len(items))
ss.Insert(items...) ss.Insert(items...)
return ss return ss
} }

View File

@ -28,7 +28,7 @@ type Int64 map[int64]Empty
// NewInt64 creates a Int64 from a list of values. // NewInt64 creates a Int64 from a list of values.
func NewInt64(items ...int64) Int64 { func NewInt64(items ...int64) Int64 {
ss := Int64{} ss := make(Int64, len(items))
ss.Insert(items...) ss.Insert(items...)
return ss return ss
} }

View File

@ -28,7 +28,7 @@ type String map[string]Empty
// NewString creates a String from a list of values. // NewString creates a String from a list of values.
func NewString(items ...string) String { func NewString(items ...string) String {
ss := String{} ss := make(String, len(items))
ss.Insert(items...) ss.Insert(items...)
return ss return ss
} }

View File

@ -57,7 +57,7 @@ func NewSnippetWriter(w io.Writer, c *Context, left, right string) *SnippetWrite
// Do parses format and runs args through it. You can have arbitrary logic in // Do parses format and runs args through it. You can have arbitrary logic in
// the format (see the text/template documentation), but consider running many // the format (see the text/template documentation), but consider running many
// short templaces, with ordinary go logic in between--this may be more // short templates with ordinary go logic in between--this may be more
// readable. Do is chainable. Any error causes every other call to do to be // readable. Do is chainable. Any error causes every other call to do to be
// ignored, and the error will be returned by Error(). So you can check it just // ignored, and the error will be returned by Error(). So you can check it just
// once, at the end of your function. // once, at the end of your function.

20
vendor/k8s.io/gengo/parser/parse.go generated vendored
View File

@ -20,6 +20,7 @@ import (
"fmt" "fmt"
"go/ast" "go/ast"
"go/build" "go/build"
"go/constant"
"go/parser" "go/parser"
"go/token" "go/token"
tc "go/types" tc "go/types"
@ -335,7 +336,8 @@ func (b *Builder) addDir(dir string, userRequested bool) error {
return nil return nil
} }
var regexErrPackageNotFound = regexp.MustCompile(`^unable to import ".*?": cannot find package ".*?" in any of:`) // regexErrPackageNotFound helps test the expected error for not finding a package.
var regexErrPackageNotFound = regexp.MustCompile(`^unable to import ".*?":.*`)
func isErrPackageNotFound(err error) bool { func isErrPackageNotFound(err error) bool {
return regexErrPackageNotFound.MatchString(err.Error()) return regexErrPackageNotFound.MatchString(err.Error())
@ -847,6 +849,22 @@ func (b *Builder) addConstant(u types.Universe, useName *types.Name, in *tc.Cons
out := u.Constant(name) out := u.Constant(name)
out.Kind = types.DeclarationOf out.Kind = types.DeclarationOf
out.Underlying = b.walkType(u, nil, in.Type()) out.Underlying = b.walkType(u, nil, in.Type())
var constval string
// For strings, we use `StringVal()` to get the un-truncated,
// un-quoted string. For other values, `.String()` is preferable to
// get something relatively human readable (especially since for
// floating point types, `ExactString()` will generate numeric
// expressions using `big.(*Float).Text()`.
switch in.Val().Kind() {
case constant.String:
constval = constant.StringVal(in.Val())
default:
constval = in.Val().String()
}
out.ConstValue = &constval
return out return out
} }

7
vendor/k8s.io/gengo/types/types.go generated vendored
View File

@ -341,6 +341,13 @@ type Type struct {
// If Kind == func, this is the signature of the function. // If Kind == func, this is the signature of the function.
Signature *Signature Signature *Signature
// ConstValue contains a stringified constant value if
// Kind == DeclarationOf and this is a constant value
// declaration. For string constants, this field contains
// the entire, un-quoted value. For other types, it contains
// a human-readable literal.
ConstValue *string
// TODO: Add: // TODO: Add:
// * channel direction // * channel direction
// * array length // * array length

View File

@ -369,7 +369,7 @@ func (o *openAPI) findCommonParameters(routes []restful.Route) (map[interface{}]
} }
func (o *openAPI) toSchema(name string) (_ *spec.Schema, err error) { func (o *openAPI) toSchema(name string) (_ *spec.Schema, err error) {
if openAPIType, openAPIFormat := common.GetOpenAPITypeFormat(name); openAPIType != "" { if openAPIType, openAPIFormat := common.OpenAPITypeFormat(name); openAPIType != "" {
return &spec.Schema{ return &spec.Schema{
SchemaProps: spec.SchemaProps{ SchemaProps: spec.SchemaProps{
Type: []string{openAPIType}, Type: []string{openAPIType},
@ -423,7 +423,7 @@ func (o *openAPI) buildParameter(restParam restful.ParameterData, bodySample int
default: default:
return ret, fmt.Errorf("unknown restful operation kind : %v", restParam.Kind) return ret, fmt.Errorf("unknown restful operation kind : %v", restParam.Kind)
} }
openAPIType, openAPIFormat := common.GetOpenAPITypeFormat(restParam.DataType) openAPIType, openAPIFormat := common.OpenAPITypeFormat(restParam.DataType)
if openAPIType == "" { if openAPIType == "" {
return ret, fmt.Errorf("non-body Restful parameter type should be a simple type, but got : %v", restParam.DataType) return ret, fmt.Errorf("non-body Restful parameter type should be a simple type, but got : %v", restParam.DataType)
} }

View File

@ -26,7 +26,7 @@ import (
const ( const (
// TODO: Make this configurable. // TODO: Make this configurable.
ExtensionPrefix = "x-kubernetes-" ExtensionPrefix = "x-kubernetes-"
ExtensionV2Schema = ExtensionPrefix + "v2-schema" ExtensionV2Schema = ExtensionPrefix + "v2-schema"
) )
@ -105,28 +105,34 @@ type Config struct {
DefaultSecurity []map[string][]string DefaultSecurity []map[string][]string
} }
var schemaTypeFormatMap = map[string][]string{ type typeInfo struct {
"uint": {"integer", "int32"}, name string
"uint8": {"integer", "byte"}, format string
"uint16": {"integer", "int32"}, zero interface{}
"uint32": {"integer", "int64"}, }
"uint64": {"integer", "int64"},
"int": {"integer", "int32"}, var schemaTypeFormatMap = map[string]typeInfo{
"int8": {"integer", "byte"}, "uint": {"integer", "int32", 0.},
"int16": {"integer", "int32"}, "uint8": {"integer", "byte", 0.},
"int32": {"integer", "int32"}, "uint16": {"integer", "int32", 0.},
"int64": {"integer", "int64"}, "uint32": {"integer", "int64", 0.},
"byte": {"integer", "byte"}, "uint64": {"integer", "int64", 0.},
"float64": {"number", "double"}, "int": {"integer", "int32", 0.},
"float32": {"number", "float"}, "int8": {"integer", "byte", 0.},
"bool": {"boolean", ""}, "int16": {"integer", "int32", 0.},
"time.Time": {"string", "date-time"}, "int32": {"integer", "int32", 0.},
"string": {"string", ""}, "int64": {"integer", "int64", 0.},
"integer": {"integer", ""}, "byte": {"integer", "byte", 0},
"number": {"number", ""}, "float64": {"number", "double", 0.},
"boolean": {"boolean", ""}, "float32": {"number", "float", 0.},
"[]byte": {"string", "byte"}, // base64 encoded characters "bool": {"boolean", "", false},
"interface{}": {"object", ""}, "time.Time": {"string", "date-time", ""},
"string": {"string", "", ""},
"integer": {"integer", "", 0.},
"number": {"number", "", 0.},
"boolean": {"boolean", "", false},
"[]byte": {"string", "byte", ""}, // base64 encoded characters
"interface{}": {"object", "", interface{}(nil)},
} }
// This function is a reference for converting go (or any custom type) to a simple open API type,format pair. There are // This function is a reference for converting go (or any custom type) to a simple open API type,format pair. There are
@ -168,12 +174,22 @@ var schemaTypeFormatMap = map[string][]string{
// } // }
// } // }
// //
func GetOpenAPITypeFormat(typeName string) (string, string) { func OpenAPITypeFormat(typeName string) (string, string) {
mapped, ok := schemaTypeFormatMap[typeName] mapped, ok := schemaTypeFormatMap[typeName]
if !ok { if !ok {
return "", "" return "", ""
} }
return mapped[0], mapped[1] return mapped.name, mapped.format
}
// Returns the zero-value for the given type along with true if the type
// could be found.
func OpenAPIZeroValue(typeName string) (interface{}, bool) {
mapped, ok := schemaTypeFormatMap[typeName]
if !ok {
return nil, false
}
return mapped.zero, true
} }
func EscapeJsonPointer(p string) string { func EscapeJsonPointer(p string) string {

View File

@ -18,6 +18,7 @@ package generators
import ( import (
"bytes" "bytes"
"encoding/json"
"fmt" "fmt"
"io" "io"
"path/filepath" "path/filepath"
@ -36,6 +37,7 @@ import (
// This is the comment tag that carries parameters for open API generation. // This is the comment tag that carries parameters for open API generation.
const tagName = "k8s:openapi-gen" const tagName = "k8s:openapi-gen"
const tagOptional = "optional" const tagOptional = "optional"
const tagDefault = "default"
// Known values for the tag. // Known values for the tag.
const ( const (
@ -414,7 +416,7 @@ func (g openAPITypeWriter) generate(t *types.Type) error {
deps := []string{} deps := []string{}
for _, k := range keys { for _, k := range keys {
v := g.refTypes[k] v := g.refTypes[k]
if t, _ := openapi.GetOpenAPITypeFormat(v.String()); t != "" { if t, _ := openapi.OpenAPITypeFormat(v.String()); t != "" {
// This is a known type, we do not need a reference to it // This is a known type, we do not need a reference to it
// Will eliminate special case of time.Time // Will eliminate special case of time.Time
continue continue
@ -513,6 +515,60 @@ func (g openAPITypeWriter) validatePatchTags(m *types.Member, parent *types.Type
return nil return nil
} }
func defaultFromComments(comments []string) (interface{}, error) {
tag, err := getSingleTagsValue(comments, tagDefault)
if tag == "" {
return nil, err
}
var i interface{}
if err := json.Unmarshal([]byte(tag), &i); err != nil {
return nil, fmt.Errorf("failed to unmarshal default: %v", err)
}
return i, nil
}
func mustEnforceDefault(t *types.Type, omitEmpty bool) (interface{}, error) {
switch t.Kind {
case types.Pointer, types.Map, types.Slice, types.Array, types.Interface:
return nil, nil
case types.Struct:
return map[string]interface{}{}, nil
case types.Builtin:
if !omitEmpty {
if zero, ok := openapi.OpenAPIZeroValue(t.String()); ok {
return zero, nil
} else {
return nil, fmt.Errorf("please add type %v to getOpenAPITypeFormat function", t)
}
}
return nil, nil
default:
return nil, fmt.Errorf("not sure how to enforce default for %v", t.Kind)
}
}
func (g openAPITypeWriter) generateDefault(comments []string, t *types.Type, omitEmpty bool) error {
t = resolveAliasType(t)
def, err := defaultFromComments(comments)
if err != nil {
return err
}
if enforced, err := mustEnforceDefault(t, omitEmpty); err != nil {
return err
} else if enforced != nil {
if def == nil {
def = enforced
} else if !reflect.DeepEqual(def, enforced) {
enforcedJson, _ := json.Marshal(enforced)
return fmt.Errorf("invalid default value (%#v) for non-pointer/non-omitempty. If specified, must be: %v", def, string(enforcedJson))
}
}
if def != nil {
g.Do("Default: $.$,\n", fmt.Sprintf("%#v", def))
}
return nil
}
func (g openAPITypeWriter) generateDescription(CommentLines []string) { func (g openAPITypeWriter) generateDescription(CommentLines []string) {
var buffer bytes.Buffer var buffer bytes.Buffer
delPrevChar := func() { delPrevChar := func() {
@ -576,9 +632,13 @@ func (g openAPITypeWriter) generateProperty(m *types.Member, parent *types.Type)
g.Do("},\n},\n", nil) g.Do("},\n},\n", nil)
return nil return nil
} }
omitEmpty := strings.Contains(reflect.StructTag(m.Tags).Get("json"), "omitempty")
if err := g.generateDefault(m.CommentLines, m.Type, omitEmpty); err != nil {
return fmt.Errorf("failed to generate default in %v: %v: %v", parent, m.Name, err)
}
t := resolveAliasAndPtrType(m.Type) t := resolveAliasAndPtrType(m.Type)
// If we can get a openAPI type and format for this type, we consider it to be simple property // If we can get a openAPI type and format for this type, we consider it to be simple property
typeString, format := openapi.GetOpenAPITypeFormat(t.String()) typeString, format := openapi.OpenAPITypeFormat(t.String())
if typeString != "" { if typeString != "" {
g.generateSimpleProperty(typeString, format) g.generateSimpleProperty(typeString, format)
g.Do("},\n},\n", nil) g.Do("},\n},\n", nil)
@ -589,11 +649,11 @@ func (g openAPITypeWriter) generateProperty(m *types.Member, parent *types.Type)
return fmt.Errorf("please add type %v to getOpenAPITypeFormat function", t) return fmt.Errorf("please add type %v to getOpenAPITypeFormat function", t)
case types.Map: case types.Map:
if err := g.generateMapProperty(t); err != nil { if err := g.generateMapProperty(t); err != nil {
return err return fmt.Errorf("failed to generate map property in %v: %v: %v", parent, m.Name, err)
} }
case types.Slice, types.Array: case types.Slice, types.Array:
if err := g.generateSliceProperty(t); err != nil { if err := g.generateSliceProperty(t); err != nil {
return err return fmt.Errorf("failed to generate slice property in %v: %v: %v", parent, m.Name, err)
} }
case types.Struct, types.Interface: case types.Struct, types.Interface:
g.generateReferenceProperty(t) g.generateReferenceProperty(t)
@ -614,6 +674,17 @@ func (g openAPITypeWriter) generateReferenceProperty(t *types.Type) {
g.Do("Ref: ref(\"$.$\"),\n", t.Name.String()) g.Do("Ref: ref(\"$.$\"),\n", t.Name.String())
} }
func resolveAliasType(t *types.Type) *types.Type {
var prev *types.Type
for prev != t {
prev = t
if t.Kind == types.Alias {
t = t.Underlying
}
}
return t
}
func resolveAliasAndPtrType(t *types.Type) *types.Type { func resolveAliasAndPtrType(t *types.Type) *types.Type {
var prev *types.Type var prev *types.Type
for prev != t { for prev != t {
@ -636,9 +707,13 @@ func (g openAPITypeWriter) generateMapProperty(t *types.Type) error {
if keyType.Name.Name != "string" { if keyType.Name.Name != "string" {
return fmt.Errorf("map with non-string keys are not supported by OpenAPI in %v", t) return fmt.Errorf("map with non-string keys are not supported by OpenAPI in %v", t)
} }
g.Do("Type: []string{\"object\"},\n", nil) g.Do("Type: []string{\"object\"},\n", nil)
g.Do("AdditionalProperties: &spec.SchemaOrBool{\nAllows: true,\nSchema: &spec.Schema{\nSchemaProps: spec.SchemaProps{\n", nil) g.Do("AdditionalProperties: &spec.SchemaOrBool{\nAllows: true,\nSchema: &spec.Schema{\nSchemaProps: spec.SchemaProps{\n", nil)
typeString, format := openapi.GetOpenAPITypeFormat(elemType.String()) if err := g.generateDefault(t.Elem.CommentLines, t.Elem, false); err != nil {
return err
}
typeString, format := openapi.OpenAPITypeFormat(elemType.String())
if typeString != "" { if typeString != "" {
g.generateSimpleProperty(typeString, format) g.generateSimpleProperty(typeString, format)
g.Do("},\n},\n},\n", nil) g.Do("},\n},\n},\n", nil)
@ -668,7 +743,10 @@ func (g openAPITypeWriter) generateSliceProperty(t *types.Type) error {
elemType := resolveAliasAndPtrType(t.Elem) elemType := resolveAliasAndPtrType(t.Elem)
g.Do("Type: []string{\"array\"},\n", nil) g.Do("Type: []string{\"array\"},\n", nil)
g.Do("Items: &spec.SchemaOrArray{\nSchema: &spec.Schema{\nSchemaProps: spec.SchemaProps{\n", nil) g.Do("Items: &spec.SchemaOrArray{\nSchema: &spec.Schema{\nSchemaProps: spec.SchemaProps{\n", nil)
typeString, format := openapi.GetOpenAPITypeFormat(elemType.String()) if err := g.generateDefault(t.Elem.CommentLines, t.Elem, false); err != nil {
return err
}
typeString, format := openapi.OpenAPITypeFormat(elemType.String())
if typeString != "" { if typeString != "" {
g.generateSimpleProperty(typeString, format) g.generateSimpleProperty(typeString, format)
g.Do("},\n},\n},\n", nil) g.Do("},\n},\n},\n", nil)

View File

@ -2,7 +2,10 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library")
go_library( go_library(
name = "go_default_library", name = "go_default_library",
srcs = ["handler.go"], srcs = [
"default_pruning.go",
"handler.go",
],
importmap = "k8s.io/kubernetes/vendor/k8s.io/kube-openapi/pkg/handler", importmap = "k8s.io/kubernetes/vendor/k8s.io/kube-openapi/pkg/handler",
importpath = "k8s.io/kube-openapi/pkg/handler", importpath = "k8s.io/kube-openapi/pkg/handler",
visibility = ["//visibility:public"], visibility = ["//visibility:public"],

View File

@ -0,0 +1,208 @@
/*
Copyright 2020 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 handler
import "github.com/go-openapi/spec"
// PruneDefaults remove all the defaults recursively from all the
// schemas in the definitions, and does not modify the definitions in
// place.
func PruneDefaults(definitions spec.Definitions) spec.Definitions {
definitionsCloned := false
for k, v := range definitions {
if s := PruneDefaultsSchema(&v); s != &v {
if !definitionsCloned {
definitionsCloned = true
orig := definitions
definitions = make(spec.Definitions, len(orig))
for k2, v2 := range orig {
definitions[k2] = v2
}
}
definitions[k] = *s
}
}
return definitions
}
// PruneDefaultsSchema remove all the defaults recursively from the
// schema in place.
func PruneDefaultsSchema(schema *spec.Schema) *spec.Schema {
if schema == nil {
return nil
}
orig := schema
clone := func() {
if orig == schema {
schema = &spec.Schema{}
*schema = *orig
}
}
if schema.Default != nil {
clone()
schema.Default = nil
}
definitionsCloned := false
for k, v := range schema.Definitions {
if s := PruneDefaultsSchema(&v); s != &v {
if !definitionsCloned {
definitionsCloned = true
clone()
schema.Definitions = make(spec.Definitions, len(orig.Definitions))
for k2, v2 := range orig.Definitions {
schema.Definitions[k2] = v2
}
}
schema.Definitions[k] = *s
}
}
propertiesCloned := false
for k, v := range schema.Properties {
if s := PruneDefaultsSchema(&v); s != &v {
if !propertiesCloned {
propertiesCloned = true
clone()
schema.Properties = make(map[string]spec.Schema, len(orig.Properties))
for k2, v2 := range orig.Properties {
schema.Properties[k2] = v2
}
}
schema.Properties[k] = *s
}
}
patternPropertiesCloned := false
for k, v := range schema.PatternProperties {
if s := PruneDefaultsSchema(&v); s != &v {
if !patternPropertiesCloned {
patternPropertiesCloned = true
clone()
schema.PatternProperties = make(map[string]spec.Schema, len(orig.PatternProperties))
for k2, v2 := range orig.PatternProperties {
schema.PatternProperties[k2] = v2
}
}
schema.PatternProperties[k] = *s
}
}
dependenciesCloned := false
for k, v := range schema.Dependencies {
if s := PruneDefaultsSchema(v.Schema); s != v.Schema {
if !dependenciesCloned {
dependenciesCloned = true
clone()
schema.Dependencies = make(spec.Dependencies, len(orig.Dependencies))
for k2, v2 := range orig.Dependencies {
schema.Dependencies[k2] = v2
}
}
v.Schema = s
schema.Dependencies[k] = v
}
}
allOfCloned := false
for i := range schema.AllOf {
if s := PruneDefaultsSchema(&schema.AllOf[i]); s != &schema.AllOf[i] {
if !allOfCloned {
allOfCloned = true
clone()
schema.AllOf = make([]spec.Schema, len(orig.AllOf))
copy(schema.AllOf, orig.AllOf)
}
schema.AllOf[i] = *s
}
}
anyOfCloned := false
for i := range schema.AnyOf {
if s := PruneDefaultsSchema(&schema.AnyOf[i]); s != &schema.AnyOf[i] {
if !anyOfCloned {
anyOfCloned = true
clone()
schema.AnyOf = make([]spec.Schema, len(orig.AnyOf))
copy(schema.AnyOf, orig.AnyOf)
}
schema.AnyOf[i] = *s
}
}
oneOfCloned := false
for i := range schema.OneOf {
if s := PruneDefaultsSchema(&schema.OneOf[i]); s != &schema.OneOf[i] {
if !oneOfCloned {
oneOfCloned = true
clone()
schema.OneOf = make([]spec.Schema, len(orig.OneOf))
copy(schema.OneOf, orig.OneOf)
}
schema.OneOf[i] = *s
}
}
if schema.Not != nil {
if s := PruneDefaultsSchema(schema.Not); s != schema.Not {
clone()
schema.Not = s
}
}
if schema.AdditionalProperties != nil && schema.AdditionalProperties.Schema != nil {
if s := PruneDefaultsSchema(schema.AdditionalProperties.Schema); s != schema.AdditionalProperties.Schema {
clone()
schema.AdditionalProperties = &spec.SchemaOrBool{Schema: s, Allows: schema.AdditionalProperties.Allows}
}
}
if schema.AdditionalItems != nil && schema.AdditionalItems.Schema != nil {
if s := PruneDefaultsSchema(schema.AdditionalItems.Schema); s != schema.AdditionalItems.Schema {
clone()
schema.AdditionalItems = &spec.SchemaOrBool{Schema: s, Allows: schema.AdditionalItems.Allows}
}
}
if schema.Items != nil {
if schema.Items.Schema != nil {
if s := PruneDefaultsSchema(schema.Items.Schema); s != schema.Items.Schema {
clone()
schema.Items = &spec.SchemaOrArray{Schema: s}
}
} else {
itemsCloned := false
for i := range schema.Items.Schemas {
if s := PruneDefaultsSchema(&schema.Items.Schemas[i]); s != &schema.Items.Schemas[i] {
if !itemsCloned {
clone()
schema.Items = &spec.SchemaOrArray{
Schemas: make([]spec.Schema, len(orig.Items.Schemas)),
}
itemsCloned = true
copy(schema.Items.Schemas, orig.Items.Schemas)
}
schema.Items.Schemas[i] = *s
}
}
}
}
return schema
}

8
vendor/modules.txt vendored
View File

@ -2271,9 +2271,9 @@ k8s.io/cri-api/pkg/apis/testing
k8s.io/csi-translation-lib k8s.io/csi-translation-lib
# k8s.io/csi-translation-lib => ./staging/src/k8s.io/csi-translation-lib # k8s.io/csi-translation-lib => ./staging/src/k8s.io/csi-translation-lib
k8s.io/csi-translation-lib/plugins k8s.io/csi-translation-lib/plugins
# k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 => k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 # k8s.io/gengo v0.0.0-20201113003025-83324d819ded => k8s.io/gengo v0.0.0-20201113003025-83324d819ded
## explicit ## explicit
# k8s.io/gengo => k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14 # k8s.io/gengo => k8s.io/gengo v0.0.0-20201113003025-83324d819ded
k8s.io/gengo/args k8s.io/gengo/args
k8s.io/gengo/examples/deepcopy-gen/generators k8s.io/gengo/examples/deepcopy-gen/generators
k8s.io/gengo/examples/defaulter-gen/generators k8s.io/gengo/examples/defaulter-gen/generators
@ -2326,9 +2326,9 @@ k8s.io/kube-aggregator/pkg/registry/apiservice/rest
## explicit ## explicit
# k8s.io/kube-controller-manager => ./staging/src/k8s.io/kube-controller-manager # k8s.io/kube-controller-manager => ./staging/src/k8s.io/kube-controller-manager
k8s.io/kube-controller-manager/config/v1alpha1 k8s.io/kube-controller-manager/config/v1alpha1
# k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 => k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 # k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd => k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
## explicit ## explicit
# k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20201107163737-74b467f3a622 # k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
k8s.io/kube-openapi/cmd/openapi-gen k8s.io/kube-openapi/cmd/openapi-gen
k8s.io/kube-openapi/cmd/openapi-gen/args k8s.io/kube-openapi/cmd/openapi-gen/args
k8s.io/kube-openapi/pkg/aggregator k8s.io/kube-openapi/pkg/aggregator