type SchemaValidator …
type SchemaCreateValidator …
type ValidationOptions …
type ValidationOption …
func NewValidationOptions(opts ...ValidationOption) ValidationOptions { … }
func WithRatcheting(correlation *common.CorrelatedObject) ValidationOption { … }
type basicSchemaValidator …
func (s basicSchemaValidator) Validate(new interface{ … }
func (s basicSchemaValidator) ValidateUpdate(new, old interface{ … }
func NewSchemaValidator(customResourceValidation *apiextensions.JSONSchemaProps) (SchemaValidator, *spec.Schema, error) { … }
func NewSchemaValidatorFromOpenAPI(openapiSchema *spec.Schema) SchemaValidator { … }
func ValidateCustomResourceUpdate(fldPath *field.Path, customResource, old interface{ … }
func ValidateCustomResource(fldPath *field.Path, customResource interface{ … }
func kubeOpenAPIResultToFieldErrors(fldPath *field.Path, result *validate.Result) field.ErrorList { … }
func ConvertJSONSchemaProps(in *apiextensions.JSONSchemaProps, out *spec.Schema) error { … }
type PostProcessFunc …
func ConvertJSONSchemaPropsWithPostProcess(in *apiextensions.JSONSchemaProps, out *spec.Schema, postProcess PostProcessFunc) error { … }
func convertSliceToInterfaceSlice[T any](in []T) []interface{ … }
func convertSliceOfJSONSchemaProps(in *[]apiextensions.JSONSchemaProps, out *[]spec.Schema, postProcess PostProcessFunc) error { … }
func convertMapOfJSONSchemaProps(in map[string]apiextensions.JSONSchemaProps, postProcess PostProcessFunc) (map[string]spec.Schema, error) { … }
func convertJSONSchemaPropsOrArray(in *apiextensions.JSONSchemaPropsOrArray, out *spec.SchemaOrArray, postProcess PostProcessFunc) error { … }
func convertJSONSchemaPropsorBool(in *apiextensions.JSONSchemaPropsOrBool, out *spec.SchemaOrBool, postProcess PostProcessFunc) error { … }
func convertJSONSchemaPropsOrStringArray(in *apiextensions.JSONSchemaPropsOrStringArray, out *spec.SchemaOrStringArray, postProcess PostProcessFunc) error { … }