From dac31c0530fac43d97de4d88acafe911f4ed442e Mon Sep 17 00:00:00 2001 From: Marc Nuri Date: Wed, 24 Jul 2024 10:08:51 +0200 Subject: [PATCH 1/4] fix(openapi): apiextensions with path info Signed-off-by: Marc Nuri --- .../openapi/generator/main.go | 23 ++++++++++--------- .../openapi/schemas/apiextensions.json | 2 +- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/kubernetes-model-generator/openapi/generator/main.go b/kubernetes-model-generator/openapi/generator/main.go index 61ad775bd2f..246acdfb68f 100644 --- a/kubernetes-model-generator/openapi/generator/main.go +++ b/kubernetes-model-generator/openapi/generator/main.go @@ -93,17 +93,18 @@ func main() { reflect.TypeOf(admissionV1Beta1.AdmissionReview{}): {false, admissionV1Beta1.SchemeGroupVersion.String(), "admissionreviews", false}, reflect.TypeOf(admissionregistrationV1.Rule{}): {}, }, "admission-registration"), - NewTypeSchema([]reflect.Type{ - reflect.TypeOf(apiextensionsV1.ConversionReview{}), - reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrArray{}), - reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrBool{}), - reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrStringArray{}), - reflect.TypeOf(apiextensionsV1Beta1.ConversionReview{}), - reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrArray{}), - reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrBool{}), - reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrStringArray{}), - reflect.TypeOf(apiextensionsV1Beta1.SelectableField{}), - reflect.TypeOf(apiextensionsV1Beta1.ValidationRule{}), + // Webhooks, add fake paths so that Maven OpenAPI plugin adds deserialization type information + NewPathSchema(map[reflect.Type]ApiVersion{ + reflect.TypeOf(apiextensionsV1.ConversionReview{}): {false, apiextensionsV1.SchemeGroupVersion.String(), "conversionreviews", false}, + reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrArray{}): {}, + reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrBool{}): {}, + reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrStringArray{}): {}, + reflect.TypeOf(apiextensionsV1Beta1.ConversionReview{}): {false, apiextensionsV1Beta1.SchemeGroupVersion.String(), "conversionreviews", false}, + reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrArray{}): {}, + reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrBool{}): {}, + reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrStringArray{}): {}, + reflect.TypeOf(apiextensionsV1Beta1.SelectableField{}): {}, + reflect.TypeOf(apiextensionsV1Beta1.ValidationRule{}): {}, }, "apiextensions"), NewPathSchema(map[reflect.Type]ApiVersion{ reflect.TypeOf(gatewayApiV1.GatewayList{}): {true, gatewayApiV1.GroupVersion.String(), "gateways", true}, diff --git a/kubernetes-model-generator/openapi/schemas/apiextensions.json b/kubernetes-model-generator/openapi/schemas/apiextensions.json index e4146e9f3b7..4ac5b36995f 100644 --- a/kubernetes-model-generator/openapi/schemas/apiextensions.json +++ b/kubernetes-model-generator/openapi/schemas/apiextensions.json @@ -1 +1 @@ -{"components":{"schemas":{"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.SelectableField":{"properties":{"jsonPath":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta":{"properties":{"continue":{"type":"string"},"remainingItemCount":{"format":"int64","type":"integer"},"resourceVersion":{"type":"string"},"selfLink":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.Status":{"properties":{"apiVersion":{"type":"string"},"code":{"format":"int32","type":"integer"},"details":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"},"kind":{"type":"string"},"message":{"type":"string"},"metadata":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"},"reason":{"type":"string"},"status":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause":{"properties":{"field":{"type":"string"},"message":{"type":"string"},"reason":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails":{"properties":{"causes":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"},"type":"array"},"group":{"type":"string"},"kind":{"type":"string"},"name":{"type":"string"},"retryAfterSeconds":{"format":"int32","type":"integer"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.runtime.RawExtension":{"properties":{"-":{"type":"object"}},"type":"object"}}},"info":{"title":"apiextensions","version":"0.0.0"},"openapi":"3.0.0","paths":{}} \ No newline at end of file +{"components":{"schemas":{"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.SelectableField":{"properties":{"jsonPath":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta":{"properties":{"continue":{"type":"string"},"remainingItemCount":{"format":"int64","type":"integer"},"resourceVersion":{"type":"string"},"selfLink":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.Status":{"properties":{"apiVersion":{"type":"string"},"code":{"format":"int32","type":"integer"},"details":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"},"kind":{"type":"string"},"message":{"type":"string"},"metadata":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"},"reason":{"type":"string"},"status":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause":{"properties":{"field":{"type":"string"},"message":{"type":"string"},"reason":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails":{"properties":{"causes":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"},"type":"array"},"group":{"type":"string"},"kind":{"type":"string"},"name":{"type":"string"},"retryAfterSeconds":{"format":"int32","type":"integer"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.runtime.RawExtension":{"properties":{"-":{"type":"object"}},"type":"object"}}},"info":{"title":"apiextensions","version":"0.0.0"},"openapi":"3.0.0","paths":{"/apis/apiextensions.k8s.io/v1/conversionreviews/{name}":{"get":{"parameters":[{"in":"path","name":"name","required":true}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview"}}},"description":"OK"},"default":{"description":""}},"x-kubernetes-group-version-kind":{"group":"apiextensions.k8s.io","kind":"ConversionReview","version":"v1"}}},"/apis/apiextensions.k8s.io/v1beta1/conversionreviews/{name}":{"get":{"parameters":[{"in":"path","name":"name","required":true}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionReview"}}},"description":"OK"},"default":{"description":""}},"x-kubernetes-group-version-kind":{"group":"apiextensions.k8s.io","kind":"ConversionReview","version":"v1beta1"}}}}} From e0fc424e1a0fa8129ff5a467eba89917a154ca94 Mon Sep 17 00:00:00 2001 From: Marc Nuri Date: Wed, 24 Jul 2024 11:52:01 +0200 Subject: [PATCH 2/4] fix(openapi): remove unneeded v1beta1 ConversionXxx definitions for apiextensions Signed-off-by: Marc Nuri --- kubernetes-model-generator/openapi/generator/main.go | 1 - kubernetes-model-generator/openapi/schemas/apiextensions.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/kubernetes-model-generator/openapi/generator/main.go b/kubernetes-model-generator/openapi/generator/main.go index 246acdfb68f..1202fbc417f 100644 --- a/kubernetes-model-generator/openapi/generator/main.go +++ b/kubernetes-model-generator/openapi/generator/main.go @@ -99,7 +99,6 @@ func main() { reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrArray{}): {}, reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrBool{}): {}, reflect.TypeOf(apiextensionsV1.JSONSchemaPropsOrStringArray{}): {}, - reflect.TypeOf(apiextensionsV1Beta1.ConversionReview{}): {false, apiextensionsV1Beta1.SchemeGroupVersion.String(), "conversionreviews", false}, reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrArray{}): {}, reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrBool{}): {}, reflect.TypeOf(apiextensionsV1Beta1.JSONSchemaPropsOrStringArray{}): {}, diff --git a/kubernetes-model-generator/openapi/schemas/apiextensions.json b/kubernetes-model-generator/openapi/schemas/apiextensions.json index 4ac5b36995f..0ddfa45b7e2 100644 --- a/kubernetes-model-generator/openapi/schemas/apiextensions.json +++ b/kubernetes-model-generator/openapi/schemas/apiextensions.json @@ -1 +1 @@ -{"components":{"schemas":{"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.SelectableField":{"properties":{"jsonPath":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta":{"properties":{"continue":{"type":"string"},"remainingItemCount":{"format":"int64","type":"integer"},"resourceVersion":{"type":"string"},"selfLink":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.Status":{"properties":{"apiVersion":{"type":"string"},"code":{"format":"int32","type":"integer"},"details":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"},"kind":{"type":"string"},"message":{"type":"string"},"metadata":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"},"reason":{"type":"string"},"status":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause":{"properties":{"field":{"type":"string"},"message":{"type":"string"},"reason":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails":{"properties":{"causes":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"},"type":"array"},"group":{"type":"string"},"kind":{"type":"string"},"name":{"type":"string"},"retryAfterSeconds":{"format":"int32","type":"integer"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.runtime.RawExtension":{"properties":{"-":{"type":"object"}},"type":"object"}}},"info":{"title":"apiextensions","version":"0.0.0"},"openapi":"3.0.0","paths":{"/apis/apiextensions.k8s.io/v1/conversionreviews/{name}":{"get":{"parameters":[{"in":"path","name":"name","required":true}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview"}}},"description":"OK"},"default":{"description":""}},"x-kubernetes-group-version-kind":{"group":"apiextensions.k8s.io","kind":"ConversionReview","version":"v1"}}},"/apis/apiextensions.k8s.io/v1beta1/conversionreviews/{name}":{"get":{"parameters":[{"in":"path","name":"name","required":true}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ConversionReview"}}},"description":"OK"},"default":{"description":""}},"x-kubernetes-group-version-kind":{"group":"apiextensions.k8s.io","kind":"ConversionReview","version":"v1beta1"}}}}} +{"components":{"schemas":{"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest":{"properties":{"desiredAPIVersion":{"type":"string"},"objects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse":{"properties":{"convertedObjects":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.runtime.RawExtension"},"type":"array"},"result":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.Status"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview":{"properties":{"apiVersion":{"type":"string"},"kind":{"type":"string"},"request":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionRequest"},"response":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionResponse"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation":{"properties":{"description":{"type":"string"},"url":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON":{"properties":{"-":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps":{"properties":{"$ref":{"type":"string"},"$schema":{"type":"string"},"additionalItems":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool"},"allOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"anyOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"default":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"definitions":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"dependencies":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray"},"type":"object"},"description":{"type":"string"},"enum":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"type":"array"},"example":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON"},"exclusiveMaximum":{"type":"boolean"},"exclusiveMinimum":{"type":"boolean"},"externalDocs":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation"},"format":{"type":"string"},"id":{"type":"string"},"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray"},"maxItems":{"format":"int64","type":"integer"},"maxLength":{"format":"int64","type":"integer"},"maxProperties":{"format":"int64","type":"integer"},"maximum":{"format":"double","type":"number"},"minItems":{"format":"int64","type":"integer"},"minLength":{"format":"int64","type":"integer"},"minProperties":{"format":"int64","type":"integer"},"minimum":{"format":"double","type":"number"},"multipleOf":{"format":"double","type":"number"},"not":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"nullable":{"type":"boolean"},"oneOf":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"pattern":{"type":"string"},"patternProperties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"properties":{"additionalProperties":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"object"},"required":{"items":{"type":"string"},"type":"array"},"title":{"type":"string"},"type":{"type":"string"},"uniqueItems":{"type":"boolean"},"x-kubernetes-embedded-resource":{"type":"boolean"},"x-kubernetes-int-or-string":{"type":"boolean"},"x-kubernetes-list-map-keys":{"items":{"type":"string"},"type":"array"},"x-kubernetes-list-type":{"type":"string"},"x-kubernetes-map-type":{"type":"string"},"x-kubernetes-preserve-unknown-fields":{"type":"boolean"},"x-kubernetes-validations":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule"},"type":"array"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray":{"properties":{"JSONSchemas":{"items":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool":{"properties":{"Allows":{"type":"boolean"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray":{"properties":{"Property":{"items":{"type":"string"},"type":"array"},"Schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.SelectableField":{"properties":{"jsonPath":{"type":"string"}},"type":"object"},"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule":{"properties":{"fieldPath":{"type":"string"},"message":{"type":"string"},"messageExpression":{"type":"string"},"optionalOldSelf":{"type":"boolean"},"reason":{"type":"string"},"rule":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta":{"properties":{"continue":{"type":"string"},"remainingItemCount":{"format":"int64","type":"integer"},"resourceVersion":{"type":"string"},"selfLink":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.Status":{"properties":{"apiVersion":{"type":"string"},"code":{"format":"int32","type":"integer"},"details":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails"},"kind":{"type":"string"},"message":{"type":"string"},"metadata":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.ListMeta"},"reason":{"type":"string"},"status":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause":{"properties":{"field":{"type":"string"},"message":{"type":"string"},"reason":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.apis.meta.v1.StatusDetails":{"properties":{"causes":{"items":{"$ref":"#/components/schemas/io.k8s.apimachinery.pkg.apis.meta.v1.StatusCause"},"type":"array"},"group":{"type":"string"},"kind":{"type":"string"},"name":{"type":"string"},"retryAfterSeconds":{"format":"int32","type":"integer"},"uid":{"type":"string"}},"type":"object"},"io.k8s.apimachinery.pkg.runtime.RawExtension":{"properties":{"-":{"type":"object"}},"type":"object"}}},"info":{"title":"apiextensions","version":"0.0.0"},"openapi":"3.0.0","paths":{"/apis/apiextensions.k8s.io/v1/conversionreviews/{name}":{"get":{"parameters":[{"in":"path","name":"name","required":true}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ConversionReview"}}},"description":"OK"},"default":{"description":""}},"x-kubernetes-group-version-kind":{"group":"apiextensions.k8s.io","kind":"ConversionReview","version":"v1"}}}}} \ No newline at end of file From 7beecb0c87eb3403ca21ca0785aa84ae94ce7975 Mon Sep 17 00:00:00 2001 From: Marc Nuri Date: Wed, 24 Jul 2024 11:54:32 +0200 Subject: [PATCH 3/4] fix(openapi): additionalProperties not added if field with same name exists Signed-off-by: Marc Nuri --- .../schema/generator/model/ModelGenerator.java | 12 ++++++------ .../schema/generator/model/TemplateContext.java | 5 +++++ .../main/resources/templates/model_fields.mustache | 2 ++ .../main/resources/templates/model_methods.mustache | 2 ++ 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/ModelGenerator.java b/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/ModelGenerator.java index cbc662f19ba..402a5d1dbc3 100644 --- a/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/ModelGenerator.java +++ b/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/ModelGenerator.java @@ -142,14 +142,16 @@ private void processTemplate(TemplateContext ret) { } else { ret.put("buildable", true); } + if (!ret.getSchemaProperties().containsKey("additionalProperties")) { + ret.put("additionalProperties", true); + ret.addImport("com.fasterxml.jackson.annotation.JsonAnyGetter"); + ret.addImport("com.fasterxml.jackson.annotation.JsonAnySetter"); + } } private List> templateFields(TemplateContext templateContext) { - if (templateContext.getClassSchema().getProperties() == null) { - return Collections.emptyList(); - } final List> properties = new ArrayList<>(); - for (Entry property : templateContext.getClassSchema().getProperties().entrySet()) { + for (Entry property : templateContext.getSchemaProperties().entrySet()) { final Map templateProp = new HashMap<>(); final Schema propertySchema = property.getValue(); properties.add(templateProp); @@ -287,8 +289,6 @@ private static Set initDefaultImports() { "java.util.LinkedHashMap", "java.util.Map", "javax.annotation.Generated", - "com.fasterxml.jackson.annotation.JsonAnyGetter", - "com.fasterxml.jackson.annotation.JsonAnySetter", "com.fasterxml.jackson.annotation.JsonIgnore", "com.fasterxml.jackson.annotation.JsonPropertyOrder", "com.fasterxml.jackson.databind.annotation.JsonDeserialize", diff --git a/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/TemplateContext.java b/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/TemplateContext.java index f291b96cbda..7a466adbec9 100644 --- a/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/TemplateContext.java +++ b/kubernetes-model-generator/openapi/maven-plugin/src/main/java/io/fabric8/kubernetes/schema/generator/model/TemplateContext.java @@ -23,6 +23,7 @@ import lombok.Getter; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.Map; import java.util.Objects; @@ -83,4 +84,8 @@ void addImport(String importedClass) { void addAllImports(Collection allImports) { allImports.forEach(this::addImport); } + + Map getSchemaProperties() { + return classSchema.getProperties() == null ? Collections.emptyMap() : classSchema.getProperties(); + } } diff --git a/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_fields.mustache b/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_fields.mustache index 7eaa315c29c..59ad3409aca 100644 --- a/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_fields.mustache +++ b/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_fields.mustache @@ -35,5 +35,7 @@ @JsonInclude(JsonInclude.Include.{{.}}) {{/jsonInclude}} private {{type}} {{name}}{{#defaultValue}} = {{.}}{{/defaultValue}};{{/fields}} +{{#additionalProperties}} @JsonIgnore private Map additionalProperties = new LinkedHashMap(); +{{/additionalProperties}} diff --git a/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_methods.mustache b/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_methods.mustache index b7d77517bfd..eb6844d2e65 100644 --- a/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_methods.mustache +++ b/kubernetes-model-generator/openapi/maven-plugin/src/main/resources/templates/model_methods.mustache @@ -52,6 +52,7 @@ return edit(); } +{{#additionalProperties}} @JsonAnyGetter public Map getAdditionalProperties() { return this.additionalProperties; @@ -65,3 +66,4 @@ public void setAdditionalProperties(Map additionalProperties) { this.additionalProperties = additionalProperties; } +{{/additionalProperties}} From 74441d4d56e5af0b16b3b6bc05719e41d5b1479b Mon Sep 17 00:00:00 2001 From: Marc Nuri Date: Wed, 24 Jul 2024 11:59:24 +0200 Subject: [PATCH 4/4] refactor: kubernetes-model-apiextensions generated from OpenAPI schemas Signed-off-by: Marc Nuri --- Makefile | 1 + kubernetes-model-generator/generateModel.sh | 1 - .../kubernetes-model-apiextensions/Makefile | 27 -- .../cmd/generate/generate.go | 163 ------- .../kubernetes-model-apiextensions/pom.xml | 40 +- .../kubernetes/api/model/KubeSchema.java | 441 ------------------ .../api/model/ValidationSchema.java | 441 ------------------ .../v1/CustomResourceDefinition.java | 11 +- .../apiextensions/v1/JSONSchemaProps.java | 21 +- .../v1beta1/CustomResourceDefinition.java | 11 +- .../v1beta1/CustomResourceDefinitionSpec.java | 18 +- .../CustomResourceDefinitionVersion.java | 18 +- .../v1beta1/JSONSchemaProps.java | 21 +- .../generator/model/KubernetesTest.java | 15 - 14 files changed, 58 insertions(+), 1171 deletions(-) delete mode 100644 kubernetes-model-generator/kubernetes-model-apiextensions/Makefile delete mode 100644 kubernetes-model-generator/kubernetes-model-apiextensions/cmd/generate/generate.go delete mode 100644 kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/KubeSchema.java delete mode 100644 kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/ValidationSchema.java diff --git a/Makefile b/Makefile index 0f2d27d13e3..2d15b3b1519 100644 --- a/Makefile +++ b/Makefile @@ -37,6 +37,7 @@ generate-openapi-classes: cd kubernetes-model-generator/kubernetes-model-core && mvn -Pgenerate clean install cd kubernetes-model-generator/kubernetes-model-rbac && mvn -Pgenerate clean install cd kubernetes-model-generator/kubernetes-model-admissionregistration && mvn -Pgenerate clean install + cd kubernetes-model-generator/kubernetes-model-apiextensions && mvn -Pgenerate clean install # Legacy generation of the model: TODO: remove .PHONY: generate-model-legacy diff --git a/kubernetes-model-generator/generateModel.sh b/kubernetes-model-generator/generateModel.sh index 6c6d06b3e6b..5c4f58b0fda 100755 --- a/kubernetes-model-generator/generateModel.sh +++ b/kubernetes-model-generator/generateModel.sh @@ -22,7 +22,6 @@ ABSOLUTE_BASEDIR=$(realpath "$BASEDIR") # Array for all existing modules declare -a modules=( - "kubernetes-model-apiextensions" "kubernetes-model-apps" "kubernetes-model-autoscaling" "kubernetes-model-batch" diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/Makefile b/kubernetes-model-generator/kubernetes-model-apiextensions/Makefile deleted file mode 100644 index c09a7003874..00000000000 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/Makefile +++ /dev/null @@ -1,27 +0,0 @@ -# -# Copyright (C) 2015 Red Hat, Inc. -# -# 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. -# - -SHELL := /bin/bash - -all: build - -build: gobuild - mvn -Pgenerate clean install -DskipTests - -gobuild: - CGO_ENABLED=0 GO15VENDOREXPERIMENT=1 go build -a ./cmd/generate/generate.go - ./generate > src/main/resources/schema/kube-schema.json - ./generate validation > src/main/resources/schema/validation-schema.json diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/cmd/generate/generate.go b/kubernetes-model-generator/kubernetes-model-apiextensions/cmd/generate/generate.go deleted file mode 100644 index e9b97d76a22..00000000000 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/cmd/generate/generate.go +++ /dev/null @@ -1,163 +0,0 @@ -/** - * Copyright (C) 2015 Red Hat, Inc. - * - * 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 main - -import ( - "bytes" - "encoding/json" - "fmt" - - // Dependencies of rbac - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/api/resource" - apimachineryversion "k8s.io/apimachinery/pkg/version" - kapi "k8s.io/api/core/v1" - - apiextensions "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1" - v1apiextensions "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" - - "log" - "reflect" - "strings" - "time" - - "os" - - "github.com/fabric8io/kubernetes-client/kubernetes-model-generator/pkg/schemagen" -) - -type Schema struct { - Info apimachineryversion.Info - APIGroup metav1.APIGroup - APIGroupList metav1.APIGroupList - BaseKubernetesList metav1.List - ObjectMeta metav1.ObjectMeta - TypeMeta metav1.TypeMeta - Status metav1.Status - Patch metav1.Patch - ListOptions metav1.ListOptions - DeleteOptions metav1.DeleteOptions - CreateOptions metav1.CreateOptions - UpdateOptions metav1.UpdateOptions - GetOptions metav1.GetOptions - PatchOptions metav1.PatchOptions - Time metav1.Time - RootPaths metav1.RootPaths - Quantity resource.Quantity - ObjectReference kapi.ObjectReference - - CustomResourceDefinition apiextensions.CustomResourceDefinition - CustomResourceDefinitionList apiextensions.CustomResourceDefinitionList - CustomResourceDefinitionSpec apiextensions.CustomResourceDefinitionSpec - CustomResourceDefinitionNames apiextensions.CustomResourceDefinitionNames - CustomResourceDefinitionCondition apiextensions.CustomResourceDefinitionCondition - CustomResourceDefinitionStatus apiextensions.CustomResourceDefinitionStatus - // Added JSONSchemaPropsorStringArray here because of - // https://github.com/joelittlejohn/jsonschema2pojo/issues/866 - JSONSchemaPropsOrStringArray apiextensions.JSONSchemaPropsOrStringArray - - V1CustomResourceDefinition v1apiextensions.CustomResourceDefinition - V1CustomResourceDefinitionList v1apiextensions.CustomResourceDefinitionList - V1CustomResourceDefinitionSpec v1apiextensions.CustomResourceDefinitionSpec - V1CustomResourceDefinitionNames v1apiextensions.CustomResourceDefinitionNames - V1CustomResourceDefinitionCondition v1apiextensions.CustomResourceDefinitionCondition - V1CustomResourceDefinitionStatus v1apiextensions.CustomResourceDefinitionStatus - // Added JSONSchemaPropsorStringArray here because of - // https://github.com/joelittlejohn/jsonschema2pojo/issues/866 - V1JSONSchemaPropsOrStringArray v1apiextensions.JSONSchemaPropsOrStringArray - V1ConversionReview v1apiextensions.ConversionReview -} - -func main() { - packages := []schemagen.PackageDescriptor{ - {"k8s.io/apimachinery/pkg/util/intstr", "", "io.fabric8.kubernetes.api.model", "kubernetes_apimachinery_pkg_util_intstr_", false}, - {"k8s.io/apimachinery/pkg/runtime", "", "io.fabric8.kubernetes.api.model.runtime", "kubernetes_apimachinery_pkg_runtime_", false}, - {"k8s.io/apimachinery/pkg/version", "", "io.fabric8.kubernetes.api.model.version", "kubernetes_apimachinery_pkg_version_", false}, - {"k8s.io/apimachinery/pkg/apis/meta/v1", "", "io.fabric8.kubernetes.api.model", "kubernetes_apimachinery_", false}, - {"k8s.io/api/core/v1", "", "io.fabric8.kubernetes.api.model", "kubernetes_core_", false}, - {"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1", "", "io.fabric8.kubernetes.api.model.apiextensions.v1beta1", "kubernetes_apiextensions_v1beta1_", true}, - {"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1", "", "io.fabric8.kubernetes.api.model.apiextensions.v1", "kubernetes_apiextensions_v1_", true}, - } - - typeMap := map[reflect.Type]reflect.Type{ - reflect.TypeOf(time.Time{}): reflect.TypeOf(""), - reflect.TypeOf(struct{}{}): reflect.TypeOf(""), - } - - // overwriting some times - manualTypeMapping := map[reflect.Type]string{ - reflect.TypeOf(apiextensions.JSON{}): "com.fasterxml.jackson.databind.JsonNode", - reflect.TypeOf(v1apiextensions.JSON{}): "com.fasterxml.jackson.databind.JsonNode", - } - schema, err := schemagen.GenerateSchema(reflect.TypeOf(Schema{}), packages, typeMap, manualTypeMapping, "apiextensions") - if err != nil { - fmt.Fprintf(os.Stderr, "An error occurred: %v", err) - return - } - - serdes := map[string]*schemagen.JavaSerDeDescriptor{ - "kubernetes_apiextensions_v1beta1_JSONSchemaPropsOrBool": &schemagen.JavaSerDeDescriptor{ - Serializer: "io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrBoolSerDe.Serializer.class", - Deserializer: "io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrBoolSerDe.Deserializer.class", - }, - "kubernetes_apiextensions_v1beta1_JSONSchemaPropsOrArray": &schemagen.JavaSerDeDescriptor{ - Serializer: "io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrArraySerDe.Serializer.class", - Deserializer: "io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrArraySerDe.Deserializer.class", - }, - "kubernetes_apiextensions_v1beta1_JSONSchemaPropsOrStringArray": &schemagen.JavaSerDeDescriptor{ - Serializer: "io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArraySerDe.Serializer.class", - Deserializer: "io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArraySerDe.Deserializer.class", - }, - "kubernetes_apiextensions_v1_JSONSchemaPropsOrBool": &schemagen.JavaSerDeDescriptor{ - Serializer: "io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrBoolSerDe.Serializer.class", - Deserializer: "io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrBoolSerDe.Deserializer.class", - }, - "kubernetes_apiextensions_v1_JSONSchemaPropsOrArray": &schemagen.JavaSerDeDescriptor{ - Serializer: "io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrArraySerDe.Serializer.class", - Deserializer: "io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrArraySerDe.Deserializer.class", - }, - "kubernetes_apiextensions_v1_JSONSchemaPropsOrStringArray": &schemagen.JavaSerDeDescriptor{ - Serializer: "io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArraySerDe.Serializer.class", - Deserializer: "io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArraySerDe.Deserializer.class", - }, -} - - for definitionKey, descriptor := range serdes { - val := schema.Definitions[definitionKey] - val.JavaSerDeDescriptor = descriptor - schema.Definitions[definitionKey] = val - } - - args := os.Args[1:] - if len(args) < 1 || args[0] != "validation" { - schema.Resources = nil - } - - b, err := json.Marshal(&schema) - if err != nil { - log.Fatal(err) - } - result := string(b) - result = strings.Replace(result, "\"additionalProperty\":", "\"additionalProperties\":", -1) - - var out bytes.Buffer - err = json.Indent(&out, []byte(result), "", " ") - if err != nil { - log.Fatal(err) - } - - fmt.Println(out.String()) -} diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/pom.xml b/kubernetes-model-generator/kubernetes-model-apiextensions/pom.xml index 2824333e819..7d35bddb91f 100644 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/pom.xml +++ b/kubernetes-model-generator/kubernetes-model-apiextensions/pom.xml @@ -52,31 +52,33 @@ - - - - org.codehaus.mojo - build-helper-maven-plugin - - - attach-artifacts - - false - - - - - - - generate - org.jsonschema2pojo - jsonschema2pojo-maven-plugin + io.fabric8 + openapi-model-generator-maven-plugin + + + + ${project.basedir}/../openapi/schemas/kubernetes-1.21.14.json + ${openapi.schema.kubernetes-latest} + ${project.basedir}/../openapi/schemas/apiextensions.json + + + io.fabric8.kubernetes.api.model + + + ^io\.k8s\.apiextensions-apiserver\.pkg\.apis\.apiextensions\.v1beta1\.JSON$ + ^io\.k8s\.apiextensions-apiserver\.pkg\.apis\.apiextensions\.v1\.JSON$ + + + ^io\.k8s\.apiextensions-apiserver\..*$ + + + diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/KubeSchema.java b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/KubeSchema.java deleted file mode 100644 index 4d84f16df7e..00000000000 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/KubeSchema.java +++ /dev/null @@ -1,441 +0,0 @@ - -package io.fabric8.kubernetes.api.model; - -import java.util.LinkedHashMap; -import java.util.Map; -import javax.annotation.Generated; -import com.fasterxml.jackson.annotation.JsonAnyGetter; -import com.fasterxml.jackson.annotation.JsonAnySetter; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; -import io.fabric8.kubernetes.api.model.apiextensions.v1.ConversionReview; -import io.fabric8.kubernetes.api.model.version.Info; - -@Generated("jsonschema2pojo") -public class KubeSchema { - - private APIGroup aPIGroup; - private APIGroupList aPIGroupList; - private KubernetesList baseKubernetesList; - private CreateOptions createOptions; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition customResourceDefinition; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition customResourceDefinitionCondition; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList customResourceDefinitionList; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames customResourceDefinitionNames; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec customResourceDefinitionSpec; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus customResourceDefinitionStatus; - private DeleteOptions deleteOptions; - private GetOptions getOptions; - private Info info; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray jSONSchemaPropsOrStringArray; - private ListOptions listOptions; - private ObjectMeta objectMeta; - private ObjectReference objectReference; - private Patch patch; - private PatchOptions patchOptions; - private Quantity quantity; - private RootPaths rootPaths; - private Status status; - private String time; - private TypeMeta typeMeta; - private UpdateOptions updateOptions; - private ConversionReview v1ConversionReview; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition v1CustomResourceDefinition; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition v1CustomResourceDefinitionCondition; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList v1CustomResourceDefinitionList; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames v1CustomResourceDefinitionNames; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec v1CustomResourceDefinitionSpec; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus v1CustomResourceDefinitionStatus; - private io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray v1JSONSchemaPropsOrStringArray; - @JsonIgnore - private Map additionalProperties = new LinkedHashMap(); - - /** - * No args constructor for use in serialization - * - */ - public KubeSchema() { - } - - public KubeSchema(APIGroup aPIGroup, APIGroupList aPIGroupList, KubernetesList baseKubernetesList, CreateOptions createOptions, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition customResourceDefinition, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition customResourceDefinitionCondition, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList customResourceDefinitionList, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames customResourceDefinitionNames, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec customResourceDefinitionSpec, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus customResourceDefinitionStatus, DeleteOptions deleteOptions, GetOptions getOptions, Info info, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray jSONSchemaPropsOrStringArray, ListOptions listOptions, ObjectMeta objectMeta, ObjectReference objectReference, Patch patch, PatchOptions patchOptions, Quantity quantity, RootPaths rootPaths, Status status, String time, TypeMeta typeMeta, UpdateOptions updateOptions, ConversionReview v1ConversionReview, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition v1CustomResourceDefinition, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition v1CustomResourceDefinitionCondition, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList v1CustomResourceDefinitionList, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames v1CustomResourceDefinitionNames, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec v1CustomResourceDefinitionSpec, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus v1CustomResourceDefinitionStatus, io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray v1JSONSchemaPropsOrStringArray) { - super(); - this.aPIGroup = aPIGroup; - this.aPIGroupList = aPIGroupList; - this.baseKubernetesList = baseKubernetesList; - this.createOptions = createOptions; - this.customResourceDefinition = customResourceDefinition; - this.customResourceDefinitionCondition = customResourceDefinitionCondition; - this.customResourceDefinitionList = customResourceDefinitionList; - this.customResourceDefinitionNames = customResourceDefinitionNames; - this.customResourceDefinitionSpec = customResourceDefinitionSpec; - this.customResourceDefinitionStatus = customResourceDefinitionStatus; - this.deleteOptions = deleteOptions; - this.getOptions = getOptions; - this.info = info; - this.jSONSchemaPropsOrStringArray = jSONSchemaPropsOrStringArray; - this.listOptions = listOptions; - this.objectMeta = objectMeta; - this.objectReference = objectReference; - this.patch = patch; - this.patchOptions = patchOptions; - this.quantity = quantity; - this.rootPaths = rootPaths; - this.status = status; - this.time = time; - this.typeMeta = typeMeta; - this.updateOptions = updateOptions; - this.v1ConversionReview = v1ConversionReview; - this.v1CustomResourceDefinition = v1CustomResourceDefinition; - this.v1CustomResourceDefinitionCondition = v1CustomResourceDefinitionCondition; - this.v1CustomResourceDefinitionList = v1CustomResourceDefinitionList; - this.v1CustomResourceDefinitionNames = v1CustomResourceDefinitionNames; - this.v1CustomResourceDefinitionSpec = v1CustomResourceDefinitionSpec; - this.v1CustomResourceDefinitionStatus = v1CustomResourceDefinitionStatus; - this.v1JSONSchemaPropsOrStringArray = v1JSONSchemaPropsOrStringArray; - } - - @JsonProperty("APIGroup") - public APIGroup getAPIGroup() { - return aPIGroup; - } - - @JsonProperty("APIGroup") - public void setAPIGroup(APIGroup aPIGroup) { - this.aPIGroup = aPIGroup; - } - - @JsonProperty("APIGroupList") - public APIGroupList getAPIGroupList() { - return aPIGroupList; - } - - @JsonProperty("APIGroupList") - public void setAPIGroupList(APIGroupList aPIGroupList) { - this.aPIGroupList = aPIGroupList; - } - - @JsonProperty("BaseKubernetesList") - public KubernetesList getBaseKubernetesList() { - return baseKubernetesList; - } - - @JsonProperty("BaseKubernetesList") - public void setBaseKubernetesList(KubernetesList baseKubernetesList) { - this.baseKubernetesList = baseKubernetesList; - } - - @JsonProperty("CreateOptions") - public CreateOptions getCreateOptions() { - return createOptions; - } - - @JsonProperty("CreateOptions") - public void setCreateOptions(CreateOptions createOptions) { - this.createOptions = createOptions; - } - - @JsonProperty("CustomResourceDefinition") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition getCustomResourceDefinition() { - return customResourceDefinition; - } - - @JsonProperty("CustomResourceDefinition") - public void setCustomResourceDefinition(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition customResourceDefinition) { - this.customResourceDefinition = customResourceDefinition; - } - - @JsonProperty("CustomResourceDefinitionCondition") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition getCustomResourceDefinitionCondition() { - return customResourceDefinitionCondition; - } - - @JsonProperty("CustomResourceDefinitionCondition") - public void setCustomResourceDefinitionCondition(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition customResourceDefinitionCondition) { - this.customResourceDefinitionCondition = customResourceDefinitionCondition; - } - - @JsonProperty("CustomResourceDefinitionList") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList getCustomResourceDefinitionList() { - return customResourceDefinitionList; - } - - @JsonProperty("CustomResourceDefinitionList") - public void setCustomResourceDefinitionList(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList customResourceDefinitionList) { - this.customResourceDefinitionList = customResourceDefinitionList; - } - - @JsonProperty("CustomResourceDefinitionNames") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames getCustomResourceDefinitionNames() { - return customResourceDefinitionNames; - } - - @JsonProperty("CustomResourceDefinitionNames") - public void setCustomResourceDefinitionNames(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames customResourceDefinitionNames) { - this.customResourceDefinitionNames = customResourceDefinitionNames; - } - - @JsonProperty("CustomResourceDefinitionSpec") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec getCustomResourceDefinitionSpec() { - return customResourceDefinitionSpec; - } - - @JsonProperty("CustomResourceDefinitionSpec") - public void setCustomResourceDefinitionSpec(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec customResourceDefinitionSpec) { - this.customResourceDefinitionSpec = customResourceDefinitionSpec; - } - - @JsonProperty("CustomResourceDefinitionStatus") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus getCustomResourceDefinitionStatus() { - return customResourceDefinitionStatus; - } - - @JsonProperty("CustomResourceDefinitionStatus") - public void setCustomResourceDefinitionStatus(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus customResourceDefinitionStatus) { - this.customResourceDefinitionStatus = customResourceDefinitionStatus; - } - - @JsonProperty("DeleteOptions") - public DeleteOptions getDeleteOptions() { - return deleteOptions; - } - - @JsonProperty("DeleteOptions") - public void setDeleteOptions(DeleteOptions deleteOptions) { - this.deleteOptions = deleteOptions; - } - - @JsonProperty("GetOptions") - public GetOptions getGetOptions() { - return getOptions; - } - - @JsonProperty("GetOptions") - public void setGetOptions(GetOptions getOptions) { - this.getOptions = getOptions; - } - - @JsonProperty("Info") - public Info getInfo() { - return info; - } - - @JsonProperty("Info") - public void setInfo(Info info) { - this.info = info; - } - - @JsonProperty("JSONSchemaPropsOrStringArray") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray getJSONSchemaPropsOrStringArray() { - return jSONSchemaPropsOrStringArray; - } - - @JsonProperty("JSONSchemaPropsOrStringArray") - public void setJSONSchemaPropsOrStringArray(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray jSONSchemaPropsOrStringArray) { - this.jSONSchemaPropsOrStringArray = jSONSchemaPropsOrStringArray; - } - - @JsonProperty("ListOptions") - public ListOptions getListOptions() { - return listOptions; - } - - @JsonProperty("ListOptions") - public void setListOptions(ListOptions listOptions) { - this.listOptions = listOptions; - } - - @JsonProperty("ObjectMeta") - public ObjectMeta getObjectMeta() { - return objectMeta; - } - - @JsonProperty("ObjectMeta") - public void setObjectMeta(ObjectMeta objectMeta) { - this.objectMeta = objectMeta; - } - - @JsonProperty("ObjectReference") - public ObjectReference getObjectReference() { - return objectReference; - } - - @JsonProperty("ObjectReference") - public void setObjectReference(ObjectReference objectReference) { - this.objectReference = objectReference; - } - - @JsonProperty("Patch") - public Patch getPatch() { - return patch; - } - - @JsonProperty("Patch") - public void setPatch(Patch patch) { - this.patch = patch; - } - - @JsonProperty("PatchOptions") - public PatchOptions getPatchOptions() { - return patchOptions; - } - - @JsonProperty("PatchOptions") - public void setPatchOptions(PatchOptions patchOptions) { - this.patchOptions = patchOptions; - } - - @JsonProperty("Quantity") - public Quantity getQuantity() { - return quantity; - } - - @JsonProperty("Quantity") - public void setQuantity(Quantity quantity) { - this.quantity = quantity; - } - - @JsonProperty("RootPaths") - public RootPaths getRootPaths() { - return rootPaths; - } - - @JsonProperty("RootPaths") - public void setRootPaths(RootPaths rootPaths) { - this.rootPaths = rootPaths; - } - - @JsonProperty("Status") - public Status getStatus() { - return status; - } - - @JsonProperty("Status") - public void setStatus(Status status) { - this.status = status; - } - - @JsonProperty("Time") - public String getTime() { - return time; - } - - @JsonProperty("Time") - public void setTime(String time) { - this.time = time; - } - - @JsonProperty("TypeMeta") - public TypeMeta getTypeMeta() { - return typeMeta; - } - - @JsonProperty("TypeMeta") - public void setTypeMeta(TypeMeta typeMeta) { - this.typeMeta = typeMeta; - } - - @JsonProperty("UpdateOptions") - public UpdateOptions getUpdateOptions() { - return updateOptions; - } - - @JsonProperty("UpdateOptions") - public void setUpdateOptions(UpdateOptions updateOptions) { - this.updateOptions = updateOptions; - } - - @JsonProperty("V1ConversionReview") - public ConversionReview getV1ConversionReview() { - return v1ConversionReview; - } - - @JsonProperty("V1ConversionReview") - public void setV1ConversionReview(ConversionReview v1ConversionReview) { - this.v1ConversionReview = v1ConversionReview; - } - - @JsonProperty("V1CustomResourceDefinition") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition getV1CustomResourceDefinition() { - return v1CustomResourceDefinition; - } - - @JsonProperty("V1CustomResourceDefinition") - public void setV1CustomResourceDefinition(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition v1CustomResourceDefinition) { - this.v1CustomResourceDefinition = v1CustomResourceDefinition; - } - - @JsonProperty("V1CustomResourceDefinitionCondition") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition getV1CustomResourceDefinitionCondition() { - return v1CustomResourceDefinitionCondition; - } - - @JsonProperty("V1CustomResourceDefinitionCondition") - public void setV1CustomResourceDefinitionCondition(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition v1CustomResourceDefinitionCondition) { - this.v1CustomResourceDefinitionCondition = v1CustomResourceDefinitionCondition; - } - - @JsonProperty("V1CustomResourceDefinitionList") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList getV1CustomResourceDefinitionList() { - return v1CustomResourceDefinitionList; - } - - @JsonProperty("V1CustomResourceDefinitionList") - public void setV1CustomResourceDefinitionList(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList v1CustomResourceDefinitionList) { - this.v1CustomResourceDefinitionList = v1CustomResourceDefinitionList; - } - - @JsonProperty("V1CustomResourceDefinitionNames") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames getV1CustomResourceDefinitionNames() { - return v1CustomResourceDefinitionNames; - } - - @JsonProperty("V1CustomResourceDefinitionNames") - public void setV1CustomResourceDefinitionNames(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames v1CustomResourceDefinitionNames) { - this.v1CustomResourceDefinitionNames = v1CustomResourceDefinitionNames; - } - - @JsonProperty("V1CustomResourceDefinitionSpec") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec getV1CustomResourceDefinitionSpec() { - return v1CustomResourceDefinitionSpec; - } - - @JsonProperty("V1CustomResourceDefinitionSpec") - public void setV1CustomResourceDefinitionSpec(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec v1CustomResourceDefinitionSpec) { - this.v1CustomResourceDefinitionSpec = v1CustomResourceDefinitionSpec; - } - - @JsonProperty("V1CustomResourceDefinitionStatus") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus getV1CustomResourceDefinitionStatus() { - return v1CustomResourceDefinitionStatus; - } - - @JsonProperty("V1CustomResourceDefinitionStatus") - public void setV1CustomResourceDefinitionStatus(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus v1CustomResourceDefinitionStatus) { - this.v1CustomResourceDefinitionStatus = v1CustomResourceDefinitionStatus; - } - - @JsonProperty("V1JSONSchemaPropsOrStringArray") - public io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray getV1JSONSchemaPropsOrStringArray() { - return v1JSONSchemaPropsOrStringArray; - } - - @JsonProperty("V1JSONSchemaPropsOrStringArray") - public void setV1JSONSchemaPropsOrStringArray(io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray v1JSONSchemaPropsOrStringArray) { - this.v1JSONSchemaPropsOrStringArray = v1JSONSchemaPropsOrStringArray; - } - - @JsonAnyGetter - public Map getAdditionalProperties() { - return this.additionalProperties; - } - - @JsonAnySetter - public void setAdditionalProperty(String name, Object value) { - this.additionalProperties.put(name, value); - } - - public void setAdditionalProperties(Map additionalProperties) { - this.additionalProperties = additionalProperties; - } - -} diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/ValidationSchema.java b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/ValidationSchema.java deleted file mode 100644 index e3763ec7147..00000000000 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/ValidationSchema.java +++ /dev/null @@ -1,441 +0,0 @@ - -package io.fabric8.kubernetes.api.model; - -import java.util.LinkedHashMap; -import java.util.Map; -import javax.annotation.Generated; -import com.fasterxml.jackson.annotation.JsonAnyGetter; -import com.fasterxml.jackson.annotation.JsonAnySetter; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; -import io.fabric8.kubernetes.api.model.apiextensions.v1.ConversionReview; -import io.fabric8.kubernetes.api.model.version.Info; - -@Generated("jsonschema2pojo") -public class ValidationSchema { - - private APIGroup aPIGroup; - private APIGroupList aPIGroupList; - private KubernetesList baseKubernetesList; - private CreateOptions createOptions; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition customResourceDefinition; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition customResourceDefinitionCondition; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList customResourceDefinitionList; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames customResourceDefinitionNames; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec customResourceDefinitionSpec; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus customResourceDefinitionStatus; - private DeleteOptions deleteOptions; - private GetOptions getOptions; - private Info info; - private io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray jSONSchemaPropsOrStringArray; - private ListOptions listOptions; - private ObjectMeta objectMeta; - private ObjectReference objectReference; - private Patch patch; - private PatchOptions patchOptions; - private Quantity quantity; - private RootPaths rootPaths; - private Status status; - private String time; - private TypeMeta typeMeta; - private UpdateOptions updateOptions; - private ConversionReview v1ConversionReview; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition v1CustomResourceDefinition; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition v1CustomResourceDefinitionCondition; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList v1CustomResourceDefinitionList; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames v1CustomResourceDefinitionNames; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec v1CustomResourceDefinitionSpec; - private io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus v1CustomResourceDefinitionStatus; - private io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray v1JSONSchemaPropsOrStringArray; - @JsonIgnore - private Map additionalProperties = new LinkedHashMap(); - - /** - * No args constructor for use in serialization - * - */ - public ValidationSchema() { - } - - public ValidationSchema(APIGroup aPIGroup, APIGroupList aPIGroupList, KubernetesList baseKubernetesList, CreateOptions createOptions, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition customResourceDefinition, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition customResourceDefinitionCondition, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList customResourceDefinitionList, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames customResourceDefinitionNames, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec customResourceDefinitionSpec, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus customResourceDefinitionStatus, DeleteOptions deleteOptions, GetOptions getOptions, Info info, io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray jSONSchemaPropsOrStringArray, ListOptions listOptions, ObjectMeta objectMeta, ObjectReference objectReference, Patch patch, PatchOptions patchOptions, Quantity quantity, RootPaths rootPaths, Status status, String time, TypeMeta typeMeta, UpdateOptions updateOptions, ConversionReview v1ConversionReview, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition v1CustomResourceDefinition, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition v1CustomResourceDefinitionCondition, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList v1CustomResourceDefinitionList, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames v1CustomResourceDefinitionNames, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec v1CustomResourceDefinitionSpec, io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus v1CustomResourceDefinitionStatus, io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray v1JSONSchemaPropsOrStringArray) { - super(); - this.aPIGroup = aPIGroup; - this.aPIGroupList = aPIGroupList; - this.baseKubernetesList = baseKubernetesList; - this.createOptions = createOptions; - this.customResourceDefinition = customResourceDefinition; - this.customResourceDefinitionCondition = customResourceDefinitionCondition; - this.customResourceDefinitionList = customResourceDefinitionList; - this.customResourceDefinitionNames = customResourceDefinitionNames; - this.customResourceDefinitionSpec = customResourceDefinitionSpec; - this.customResourceDefinitionStatus = customResourceDefinitionStatus; - this.deleteOptions = deleteOptions; - this.getOptions = getOptions; - this.info = info; - this.jSONSchemaPropsOrStringArray = jSONSchemaPropsOrStringArray; - this.listOptions = listOptions; - this.objectMeta = objectMeta; - this.objectReference = objectReference; - this.patch = patch; - this.patchOptions = patchOptions; - this.quantity = quantity; - this.rootPaths = rootPaths; - this.status = status; - this.time = time; - this.typeMeta = typeMeta; - this.updateOptions = updateOptions; - this.v1ConversionReview = v1ConversionReview; - this.v1CustomResourceDefinition = v1CustomResourceDefinition; - this.v1CustomResourceDefinitionCondition = v1CustomResourceDefinitionCondition; - this.v1CustomResourceDefinitionList = v1CustomResourceDefinitionList; - this.v1CustomResourceDefinitionNames = v1CustomResourceDefinitionNames; - this.v1CustomResourceDefinitionSpec = v1CustomResourceDefinitionSpec; - this.v1CustomResourceDefinitionStatus = v1CustomResourceDefinitionStatus; - this.v1JSONSchemaPropsOrStringArray = v1JSONSchemaPropsOrStringArray; - } - - @JsonProperty("APIGroup") - public APIGroup getAPIGroup() { - return aPIGroup; - } - - @JsonProperty("APIGroup") - public void setAPIGroup(APIGroup aPIGroup) { - this.aPIGroup = aPIGroup; - } - - @JsonProperty("APIGroupList") - public APIGroupList getAPIGroupList() { - return aPIGroupList; - } - - @JsonProperty("APIGroupList") - public void setAPIGroupList(APIGroupList aPIGroupList) { - this.aPIGroupList = aPIGroupList; - } - - @JsonProperty("BaseKubernetesList") - public KubernetesList getBaseKubernetesList() { - return baseKubernetesList; - } - - @JsonProperty("BaseKubernetesList") - public void setBaseKubernetesList(KubernetesList baseKubernetesList) { - this.baseKubernetesList = baseKubernetesList; - } - - @JsonProperty("CreateOptions") - public CreateOptions getCreateOptions() { - return createOptions; - } - - @JsonProperty("CreateOptions") - public void setCreateOptions(CreateOptions createOptions) { - this.createOptions = createOptions; - } - - @JsonProperty("CustomResourceDefinition") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition getCustomResourceDefinition() { - return customResourceDefinition; - } - - @JsonProperty("CustomResourceDefinition") - public void setCustomResourceDefinition(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition customResourceDefinition) { - this.customResourceDefinition = customResourceDefinition; - } - - @JsonProperty("CustomResourceDefinitionCondition") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition getCustomResourceDefinitionCondition() { - return customResourceDefinitionCondition; - } - - @JsonProperty("CustomResourceDefinitionCondition") - public void setCustomResourceDefinitionCondition(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionCondition customResourceDefinitionCondition) { - this.customResourceDefinitionCondition = customResourceDefinitionCondition; - } - - @JsonProperty("CustomResourceDefinitionList") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList getCustomResourceDefinitionList() { - return customResourceDefinitionList; - } - - @JsonProperty("CustomResourceDefinitionList") - public void setCustomResourceDefinitionList(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList customResourceDefinitionList) { - this.customResourceDefinitionList = customResourceDefinitionList; - } - - @JsonProperty("CustomResourceDefinitionNames") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames getCustomResourceDefinitionNames() { - return customResourceDefinitionNames; - } - - @JsonProperty("CustomResourceDefinitionNames") - public void setCustomResourceDefinitionNames(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionNames customResourceDefinitionNames) { - this.customResourceDefinitionNames = customResourceDefinitionNames; - } - - @JsonProperty("CustomResourceDefinitionSpec") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec getCustomResourceDefinitionSpec() { - return customResourceDefinitionSpec; - } - - @JsonProperty("CustomResourceDefinitionSpec") - public void setCustomResourceDefinitionSpec(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionSpec customResourceDefinitionSpec) { - this.customResourceDefinitionSpec = customResourceDefinitionSpec; - } - - @JsonProperty("CustomResourceDefinitionStatus") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus getCustomResourceDefinitionStatus() { - return customResourceDefinitionStatus; - } - - @JsonProperty("CustomResourceDefinitionStatus") - public void setCustomResourceDefinitionStatus(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionStatus customResourceDefinitionStatus) { - this.customResourceDefinitionStatus = customResourceDefinitionStatus; - } - - @JsonProperty("DeleteOptions") - public DeleteOptions getDeleteOptions() { - return deleteOptions; - } - - @JsonProperty("DeleteOptions") - public void setDeleteOptions(DeleteOptions deleteOptions) { - this.deleteOptions = deleteOptions; - } - - @JsonProperty("GetOptions") - public GetOptions getGetOptions() { - return getOptions; - } - - @JsonProperty("GetOptions") - public void setGetOptions(GetOptions getOptions) { - this.getOptions = getOptions; - } - - @JsonProperty("Info") - public Info getInfo() { - return info; - } - - @JsonProperty("Info") - public void setInfo(Info info) { - this.info = info; - } - - @JsonProperty("JSONSchemaPropsOrStringArray") - public io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray getJSONSchemaPropsOrStringArray() { - return jSONSchemaPropsOrStringArray; - } - - @JsonProperty("JSONSchemaPropsOrStringArray") - public void setJSONSchemaPropsOrStringArray(io.fabric8.kubernetes.api.model.apiextensions.v1beta1.JSONSchemaPropsOrStringArray jSONSchemaPropsOrStringArray) { - this.jSONSchemaPropsOrStringArray = jSONSchemaPropsOrStringArray; - } - - @JsonProperty("ListOptions") - public ListOptions getListOptions() { - return listOptions; - } - - @JsonProperty("ListOptions") - public void setListOptions(ListOptions listOptions) { - this.listOptions = listOptions; - } - - @JsonProperty("ObjectMeta") - public ObjectMeta getObjectMeta() { - return objectMeta; - } - - @JsonProperty("ObjectMeta") - public void setObjectMeta(ObjectMeta objectMeta) { - this.objectMeta = objectMeta; - } - - @JsonProperty("ObjectReference") - public ObjectReference getObjectReference() { - return objectReference; - } - - @JsonProperty("ObjectReference") - public void setObjectReference(ObjectReference objectReference) { - this.objectReference = objectReference; - } - - @JsonProperty("Patch") - public Patch getPatch() { - return patch; - } - - @JsonProperty("Patch") - public void setPatch(Patch patch) { - this.patch = patch; - } - - @JsonProperty("PatchOptions") - public PatchOptions getPatchOptions() { - return patchOptions; - } - - @JsonProperty("PatchOptions") - public void setPatchOptions(PatchOptions patchOptions) { - this.patchOptions = patchOptions; - } - - @JsonProperty("Quantity") - public Quantity getQuantity() { - return quantity; - } - - @JsonProperty("Quantity") - public void setQuantity(Quantity quantity) { - this.quantity = quantity; - } - - @JsonProperty("RootPaths") - public RootPaths getRootPaths() { - return rootPaths; - } - - @JsonProperty("RootPaths") - public void setRootPaths(RootPaths rootPaths) { - this.rootPaths = rootPaths; - } - - @JsonProperty("Status") - public Status getStatus() { - return status; - } - - @JsonProperty("Status") - public void setStatus(Status status) { - this.status = status; - } - - @JsonProperty("Time") - public String getTime() { - return time; - } - - @JsonProperty("Time") - public void setTime(String time) { - this.time = time; - } - - @JsonProperty("TypeMeta") - public TypeMeta getTypeMeta() { - return typeMeta; - } - - @JsonProperty("TypeMeta") - public void setTypeMeta(TypeMeta typeMeta) { - this.typeMeta = typeMeta; - } - - @JsonProperty("UpdateOptions") - public UpdateOptions getUpdateOptions() { - return updateOptions; - } - - @JsonProperty("UpdateOptions") - public void setUpdateOptions(UpdateOptions updateOptions) { - this.updateOptions = updateOptions; - } - - @JsonProperty("V1ConversionReview") - public ConversionReview getV1ConversionReview() { - return v1ConversionReview; - } - - @JsonProperty("V1ConversionReview") - public void setV1ConversionReview(ConversionReview v1ConversionReview) { - this.v1ConversionReview = v1ConversionReview; - } - - @JsonProperty("V1CustomResourceDefinition") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition getV1CustomResourceDefinition() { - return v1CustomResourceDefinition; - } - - @JsonProperty("V1CustomResourceDefinition") - public void setV1CustomResourceDefinition(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition v1CustomResourceDefinition) { - this.v1CustomResourceDefinition = v1CustomResourceDefinition; - } - - @JsonProperty("V1CustomResourceDefinitionCondition") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition getV1CustomResourceDefinitionCondition() { - return v1CustomResourceDefinitionCondition; - } - - @JsonProperty("V1CustomResourceDefinitionCondition") - public void setV1CustomResourceDefinitionCondition(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionCondition v1CustomResourceDefinitionCondition) { - this.v1CustomResourceDefinitionCondition = v1CustomResourceDefinitionCondition; - } - - @JsonProperty("V1CustomResourceDefinitionList") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList getV1CustomResourceDefinitionList() { - return v1CustomResourceDefinitionList; - } - - @JsonProperty("V1CustomResourceDefinitionList") - public void setV1CustomResourceDefinitionList(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList v1CustomResourceDefinitionList) { - this.v1CustomResourceDefinitionList = v1CustomResourceDefinitionList; - } - - @JsonProperty("V1CustomResourceDefinitionNames") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames getV1CustomResourceDefinitionNames() { - return v1CustomResourceDefinitionNames; - } - - @JsonProperty("V1CustomResourceDefinitionNames") - public void setV1CustomResourceDefinitionNames(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionNames v1CustomResourceDefinitionNames) { - this.v1CustomResourceDefinitionNames = v1CustomResourceDefinitionNames; - } - - @JsonProperty("V1CustomResourceDefinitionSpec") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec getV1CustomResourceDefinitionSpec() { - return v1CustomResourceDefinitionSpec; - } - - @JsonProperty("V1CustomResourceDefinitionSpec") - public void setV1CustomResourceDefinitionSpec(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionSpec v1CustomResourceDefinitionSpec) { - this.v1CustomResourceDefinitionSpec = v1CustomResourceDefinitionSpec; - } - - @JsonProperty("V1CustomResourceDefinitionStatus") - public io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus getV1CustomResourceDefinitionStatus() { - return v1CustomResourceDefinitionStatus; - } - - @JsonProperty("V1CustomResourceDefinitionStatus") - public void setV1CustomResourceDefinitionStatus(io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionStatus v1CustomResourceDefinitionStatus) { - this.v1CustomResourceDefinitionStatus = v1CustomResourceDefinitionStatus; - } - - @JsonProperty("V1JSONSchemaPropsOrStringArray") - public io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray getV1JSONSchemaPropsOrStringArray() { - return v1JSONSchemaPropsOrStringArray; - } - - @JsonProperty("V1JSONSchemaPropsOrStringArray") - public void setV1JSONSchemaPropsOrStringArray(io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaPropsOrStringArray v1JSONSchemaPropsOrStringArray) { - this.v1JSONSchemaPropsOrStringArray = v1JSONSchemaPropsOrStringArray; - } - - @JsonAnyGetter - public Map getAdditionalProperties() { - return this.additionalProperties; - } - - @JsonAnySetter - public void setAdditionalProperty(String name, Object value) { - this.additionalProperties.put(name, value); - } - - public void setAdditionalProperties(Map additionalProperties) { - this.additionalProperties = additionalProperties; - } - -} diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1/CustomResourceDefinition.java b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1/CustomResourceDefinition.java index 4d79b931f60..1b0b642e802 100644 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1/CustomResourceDefinition.java +++ b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1/CustomResourceDefinition.java @@ -17,6 +17,7 @@ import io.fabric8.kubernetes.api.model.IntOrString; import io.fabric8.kubernetes.api.model.LabelSelector; import io.fabric8.kubernetes.api.model.LocalObjectReference; +import io.fabric8.kubernetes.api.model.ObjectMeta; import io.fabric8.kubernetes.api.model.ObjectReference; import io.fabric8.kubernetes.api.model.PersistentVolumeClaim; import io.fabric8.kubernetes.api.model.PodTemplateSpec; @@ -47,7 +48,7 @@ "" }) @Buildable(editableEnabled = false, validationEnabled = false, generateBuilderPackage = false, lazyCollectionInitEnabled = false, builderPackage = "io.fabric8.kubernetes.api.builder", refs = { - @BuildableReference(io.fabric8.kubernetes.api.model.ObjectMeta.class), + @BuildableReference(ObjectMeta.class), @BuildableReference(LabelSelector.class), @BuildableReference(Container.class), @BuildableReference(PodTemplateSpec.class), @@ -81,7 +82,7 @@ public class CustomResourceDefinition implements Editable , Kuber private JsonNode _default; @JsonProperty("definitions") @JsonInclude(JsonInclude.Include.NON_EMPTY) - private Map definitions = new LinkedHashMap<>(); + private Map definitions = new LinkedHashMap<>(); @JsonProperty("dependencies") @JsonInclude(JsonInclude.Include.NON_EMPTY) private Map dependencies = new LinkedHashMap<>(); @@ -168,10 +168,10 @@ public class JSONSchemaProps implements Editable , Kuber private String pattern; @JsonProperty("patternProperties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - private Map patternProperties = new LinkedHashMap<>(); + private Map patternProperties = new LinkedHashMap<>(); @JsonProperty("properties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - private Map properties = new LinkedHashMap<>(); + private Map properties = new LinkedHashMap<>(); @JsonProperty("required") @JsonInclude(JsonInclude.Include.NON_EMPTY) private List required = new ArrayList<>(); @@ -205,7 +205,7 @@ public class JSONSchemaProps implements Editable , Kuber public JSONSchemaProps() { } - public JSONSchemaProps(String $ref, String $schema, JSONSchemaPropsOrBool additionalItems, JSONSchemaPropsOrBool additionalProperties, List allOf, List anyOf, JsonNode _default, Map definitions, Map dependencies, String description, List _enum, JsonNode example, Boolean exclusiveMaximum, Boolean exclusiveMinimum, ExternalDocumentation externalDocs, String format, String id, JSONSchemaPropsOrArray items, Long maxItems, Long maxLength, Long maxProperties, Double maximum, Long minItems, Long minLength, Long minProperties, Double minimum, Double multipleOf, JSONSchemaProps not, Boolean nullable, List oneOf, String pattern, Map patternProperties, Map properties, List required, String title, String type, Boolean uniqueItems, Boolean xKubernetesEmbeddedResource, Boolean xKubernetesIntOrString, List xKubernetesListMapKeys, String xKubernetesListType, String xKubernetesMapType, Boolean xKubernetesPreserveUnknownFields, List xKubernetesValidations) { + public JSONSchemaProps(String $ref, String $schema, JSONSchemaPropsOrBool additionalItems, JSONSchemaPropsOrBool additionalProperties, List allOf, List anyOf, JsonNode _default, Map definitions, Map dependencies, String description, List _enum, JsonNode example, Boolean exclusiveMaximum, Boolean exclusiveMinimum, ExternalDocumentation externalDocs, String format, String id, JSONSchemaPropsOrArray items, Long maxItems, Long maxLength, Long maxProperties, Double maximum, Long minItems, Long minLength, Long minProperties, Double minimum, Double multipleOf, JSONSchemaProps not, Boolean nullable, List oneOf, String pattern, Map patternProperties, Map properties, List required, String title, String type, Boolean uniqueItems, Boolean xKubernetesEmbeddedResource, Boolean xKubernetesIntOrString, List xKubernetesListMapKeys, String xKubernetesListType, String xKubernetesMapType, Boolean xKubernetesPreserveUnknownFields, List xKubernetesValidations) { super(); this.$ref = $ref; this.$schema = $schema; @@ -327,12 +327,12 @@ public void setDefault(JsonNode _default) { @JsonProperty("definitions") @JsonInclude(JsonInclude.Include.NON_EMPTY) - public Map getDefinitions() { + public Map getDefinitions() { return definitions; } @JsonProperty("definitions") - public void setDefinitions(Map definitions) { + public void setDefinitions(Map definitions) { this.definitions = definitions; } @@ -571,23 +571,23 @@ public void setPattern(String pattern) { @JsonProperty("patternProperties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - public Map getPatternProperties() { + public Map getPatternProperties() { return patternProperties; } @JsonProperty("patternProperties") - public void setPatternProperties(Map patternProperties) { + public void setPatternProperties(Map patternProperties) { this.patternProperties = patternProperties; } @JsonProperty("properties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - public Map getProperties() { + public Map getProperties() { return properties; } @JsonProperty("properties") - public void setProperties(Map properties) { + public void setProperties(Map properties) { this.properties = properties; } @@ -714,4 +714,5 @@ public JSONSchemaPropsBuilder toBuilder() { return edit(); } + } diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinition.java b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinition.java index df9cab31564..fe84a3808b3 100644 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinition.java +++ b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinition.java @@ -17,6 +17,7 @@ import io.fabric8.kubernetes.api.model.IntOrString; import io.fabric8.kubernetes.api.model.LabelSelector; import io.fabric8.kubernetes.api.model.LocalObjectReference; +import io.fabric8.kubernetes.api.model.ObjectMeta; import io.fabric8.kubernetes.api.model.ObjectReference; import io.fabric8.kubernetes.api.model.PersistentVolumeClaim; import io.fabric8.kubernetes.api.model.PodTemplateSpec; @@ -47,7 +48,7 @@ "" }) @Buildable(editableEnabled = false, validationEnabled = false, generateBuilderPackage = false, lazyCollectionInitEnabled = false, builderPackage = "io.fabric8.kubernetes.api.builder", refs = { - @BuildableReference(io.fabric8.kubernetes.api.model.ObjectMeta.class), + @BuildableReference(ObjectMeta.class), @BuildableReference(LabelSelector.class), @BuildableReference(Container.class), @BuildableReference(PodTemplateSpec.class), @@ -81,7 +82,7 @@ public class CustomResourceDefinition implements Editable selectableFields = new ArrayList<>(); @JsonProperty("subresources") private CustomResourceSubresources subresources; @JsonProperty("validation") @@ -101,7 +97,7 @@ public class CustomResourceDefinitionSpec implements Editable additionalPrinterColumns, CustomResourceConversion conversion, String group, CustomResourceDefinitionNames names, Boolean preserveUnknownFields, String scope, List selectableFields, CustomResourceSubresources subresources, CustomResourceValidation validation, String version, List versions) { + public CustomResourceDefinitionSpec(List additionalPrinterColumns, CustomResourceConversion conversion, String group, CustomResourceDefinitionNames names, Boolean preserveUnknownFields, String scope, CustomResourceSubresources subresources, CustomResourceValidation validation, String version, List versions) { super(); this.additionalPrinterColumns = additionalPrinterColumns; this.conversion = conversion; @@ -109,7 +105,6 @@ public CustomResourceDefinitionSpec(List additio this.names = names; this.preserveUnknownFields = preserveUnknownFields; this.scope = scope; - this.selectableFields = selectableFields; this.subresources = subresources; this.validation = validation; this.version = version; @@ -177,17 +172,6 @@ public void setScope(String scope) { this.scope = scope; } - @JsonProperty("selectableFields") - @JsonInclude(JsonInclude.Include.NON_EMPTY) - public List getSelectableFields() { - return selectableFields; - } - - @JsonProperty("selectableFields") - public void setSelectableFields(List selectableFields) { - this.selectableFields = selectableFields; - } - @JsonProperty("subresources") public CustomResourceSubresources getSubresources() { return subresources; diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinitionVersion.java b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinitionVersion.java index e5389bd2381..a682b5209a5 100644 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinitionVersion.java +++ b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/CustomResourceDefinitionVersion.java @@ -38,7 +38,6 @@ "deprecationWarning", "name", "schema", - "selectableFields", "served", "storage", "subresources" @@ -75,9 +74,6 @@ public class CustomResourceDefinitionVersion implements Editable selectableFields = new ArrayList<>(); @JsonProperty("served") private Boolean served; @JsonProperty("storage") @@ -94,14 +90,13 @@ public class CustomResourceDefinitionVersion implements Editable additionalPrinterColumns, Boolean deprecated, String deprecationWarning, String name, CustomResourceValidation schema, List selectableFields, Boolean served, Boolean storage, CustomResourceSubresources subresources) { + public CustomResourceDefinitionVersion(List additionalPrinterColumns, Boolean deprecated, String deprecationWarning, String name, CustomResourceValidation schema, Boolean served, Boolean storage, CustomResourceSubresources subresources) { super(); this.additionalPrinterColumns = additionalPrinterColumns; this.deprecated = deprecated; this.deprecationWarning = deprecationWarning; this.name = name; this.schema = schema; - this.selectableFields = selectableFields; this.served = served; this.storage = storage; this.subresources = subresources; @@ -158,17 +153,6 @@ public void setSchema(CustomResourceValidation schema) { this.schema = schema; } - @JsonProperty("selectableFields") - @JsonInclude(JsonInclude.Include.NON_EMPTY) - public List getSelectableFields() { - return selectableFields; - } - - @JsonProperty("selectableFields") - public void setSelectableFields(List selectableFields) { - this.selectableFields = selectableFields; - } - @JsonProperty("served") public Boolean getServed() { return served; diff --git a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/JSONSchemaProps.java b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/JSONSchemaProps.java index 6d0c1831c92..43595495647 100644 --- a/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/JSONSchemaProps.java +++ b/kubernetes-model-generator/kubernetes-model-apiextensions/src/generated/java/io/fabric8/kubernetes/api/model/apiextensions/v1beta1/JSONSchemaProps.java @@ -116,7 +116,7 @@ public class JSONSchemaProps implements Editable , Kuber private JsonNode _default; @JsonProperty("definitions") @JsonInclude(JsonInclude.Include.NON_EMPTY) - private Map definitions = new LinkedHashMap<>(); + private Map definitions = new LinkedHashMap<>(); @JsonProperty("dependencies") @JsonInclude(JsonInclude.Include.NON_EMPTY) private Map dependencies = new LinkedHashMap<>(); @@ -168,10 +168,10 @@ public class JSONSchemaProps implements Editable , Kuber private String pattern; @JsonProperty("patternProperties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - private Map patternProperties = new LinkedHashMap<>(); + private Map patternProperties = new LinkedHashMap<>(); @JsonProperty("properties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - private Map properties = new LinkedHashMap<>(); + private Map properties = new LinkedHashMap<>(); @JsonProperty("required") @JsonInclude(JsonInclude.Include.NON_EMPTY) private List required = new ArrayList<>(); @@ -205,7 +205,7 @@ public class JSONSchemaProps implements Editable , Kuber public JSONSchemaProps() { } - public JSONSchemaProps(String $ref, String $schema, JSONSchemaPropsOrBool additionalItems, JSONSchemaPropsOrBool additionalProperties, List allOf, List anyOf, JsonNode _default, Map definitions, Map dependencies, String description, List _enum, JsonNode example, Boolean exclusiveMaximum, Boolean exclusiveMinimum, ExternalDocumentation externalDocs, String format, String id, JSONSchemaPropsOrArray items, Long maxItems, Long maxLength, Long maxProperties, Double maximum, Long minItems, Long minLength, Long minProperties, Double minimum, Double multipleOf, JSONSchemaProps not, Boolean nullable, List oneOf, String pattern, Map patternProperties, Map properties, List required, String title, String type, Boolean uniqueItems, Boolean xKubernetesEmbeddedResource, Boolean xKubernetesIntOrString, List xKubernetesListMapKeys, String xKubernetesListType, String xKubernetesMapType, Boolean xKubernetesPreserveUnknownFields, List xKubernetesValidations) { + public JSONSchemaProps(String $ref, String $schema, JSONSchemaPropsOrBool additionalItems, JSONSchemaPropsOrBool additionalProperties, List allOf, List anyOf, JsonNode _default, Map definitions, Map dependencies, String description, List _enum, JsonNode example, Boolean exclusiveMaximum, Boolean exclusiveMinimum, ExternalDocumentation externalDocs, String format, String id, JSONSchemaPropsOrArray items, Long maxItems, Long maxLength, Long maxProperties, Double maximum, Long minItems, Long minLength, Long minProperties, Double minimum, Double multipleOf, JSONSchemaProps not, Boolean nullable, List oneOf, String pattern, Map patternProperties, Map properties, List required, String title, String type, Boolean uniqueItems, Boolean xKubernetesEmbeddedResource, Boolean xKubernetesIntOrString, List xKubernetesListMapKeys, String xKubernetesListType, String xKubernetesMapType, Boolean xKubernetesPreserveUnknownFields, List xKubernetesValidations) { super(); this.$ref = $ref; this.$schema = $schema; @@ -327,12 +327,12 @@ public void setDefault(JsonNode _default) { @JsonProperty("definitions") @JsonInclude(JsonInclude.Include.NON_EMPTY) - public Map getDefinitions() { + public Map getDefinitions() { return definitions; } @JsonProperty("definitions") - public void setDefinitions(Map definitions) { + public void setDefinitions(Map definitions) { this.definitions = definitions; } @@ -571,23 +571,23 @@ public void setPattern(String pattern) { @JsonProperty("patternProperties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - public Map getPatternProperties() { + public Map getPatternProperties() { return patternProperties; } @JsonProperty("patternProperties") - public void setPatternProperties(Map patternProperties) { + public void setPatternProperties(Map patternProperties) { this.patternProperties = patternProperties; } @JsonProperty("properties") @JsonInclude(JsonInclude.Include.NON_EMPTY) - public Map getProperties() { + public Map getProperties() { return properties; } @JsonProperty("properties") - public void setProperties(Map properties) { + public void setProperties(Map properties) { this.properties = properties; } @@ -714,4 +714,5 @@ public JSONSchemaPropsBuilder toBuilder() { return edit(); } + } diff --git a/kubernetes-model-generator/openapi/maven-plugin/src/test/java/io/fabric8/kubernetes/schema/generator/model/KubernetesTest.java b/kubernetes-model-generator/openapi/maven-plugin/src/test/java/io/fabric8/kubernetes/schema/generator/model/KubernetesTest.java index 7aa0290fb9e..ba99a4e107e 100644 --- a/kubernetes-model-generator/openapi/maven-plugin/src/test/java/io/fabric8/kubernetes/schema/generator/model/KubernetesTest.java +++ b/kubernetes-model-generator/openapi/maven-plugin/src/test/java/io/fabric8/kubernetes/schema/generator/model/KubernetesTest.java @@ -45,21 +45,6 @@ void setUp() { .generateJavadoc(false); } - @Test - void apiExtensions() { - new ModelGenerator(baseSettings - .clearSchemas() - .schema(new File("../schemas/kubernetes-1.21.14.json")) - .schema(new File("../schemas/kubernetes-1.30.0.json")) - .schema(new File("../schemas/apiextensions.json")) - .skipGenerationRegex("^io\\.k8s\\.apiextensions-apiserver\\.pkg\\.apis\\.apiextensions\\.v1beta1\\.JSON$") - .skipGenerationRegex("^io\\.k8s\\.apiextensions-apiserver\\.pkg\\.apis\\.apiextensions\\.v1\\.JSON$") - .includeGenerationRegex("^io\\.k8s\\.apiextensions-apiserver\\..*$") - .packageMapping("io.k8s.apiextensions-apiserver.pkg.apis", "io.fabric8.kubernetes.api.model") - .build()) - .generate(); - } - @Test void apps() { new ModelGenerator(baseSettings