var printerColumnDatatypes …
var customResourceColumnDefinitionFormats …
var openapiV3Types …
const StaticEstimatedCostLimit …
const StaticEstimatedCRDCostLimit …
const MaxSelectableFields …
var supportedValidationReason …
func ValidateCustomResourceDefinition(ctx context.Context, obj *apiextensions.CustomResourceDefinition) field.ErrorList { … }
type validationOptions …
type preexistingExpressions …
func (pe preexistingExpressions) RuleEnv(envSet *environment.EnvSet, expression string) *celgo.Env { … }
func (pe preexistingExpressions) MessageExpressionEnv(envSet *environment.EnvSet, expression string) *celgo.Env { … }
func findPreexistingExpressions(spec *apiextensions.CustomResourceDefinitionSpec) preexistingExpressions { … }
func findPreexistingExpressionsInSchema(schema *apiextensions.JSONSchemaProps, expressions preexistingExpressions) { … }
func findVersionsWithUnchangedSchemas(obj, oldObject *apiextensions.CustomResourceDefinition) sets.Set[string] { … }
func suppressExpressionCostForUnchangedSchema(opts validationOptions, version string) validationOptions { … }
func ValidateCustomResourceDefinitionUpdate(ctx context.Context, obj, oldObj *apiextensions.CustomResourceDefinition) field.ErrorList { … }
func validateCustomResourceDefinitionUpdate(ctx context.Context, obj, oldObj *apiextensions.CustomResourceDefinition, opts validationOptions) field.ErrorList { … }
func ValidateCustomResourceDefinitionStoredVersions(storedVersions []string, versions []apiextensions.CustomResourceDefinitionVersion, fldPath *field.Path) field.ErrorList { … }
func ValidateUpdateCustomResourceDefinitionStatus(obj, oldObj *apiextensions.CustomResourceDefinition) field.ErrorList { … }
func validateCustomResourceDefinitionVersion(ctx context.Context, version *apiextensions.CustomResourceDefinitionVersion, fldPath *field.Path, statusEnabled bool, opts validationOptions) field.ErrorList { … }
func validateDeprecationWarning(deprecated bool, deprecationWarning *string) []string { … }
func validateCustomResourceDefinitionSpec(ctx context.Context, spec *apiextensions.CustomResourceDefinitionSpec, opts validationOptions, fldPath *field.Path) field.ErrorList { … }
func validateEnumStrings(fldPath *field.Path, value string, accepted []string, required bool) field.ErrorList { … }
var acceptedConversionReviewVersions …
func isAcceptedConversionReviewVersion(v string) bool { … }
func validateConversionReviewVersions(versions []string, requireRecognizedVersion bool, fldPath *field.Path) field.ErrorList { … }
func allowInvalidCABundle(oldCRD *apiextensions.CustomResourceDefinition) bool { … }
func hasValidConversionReviewVersionOrEmpty(versions []string) bool { … }
func validateCustomResourceConversion(conversion *apiextensions.CustomResourceConversion, requireRecognizedVersion bool, fldPath *field.Path, opts validationOptions) field.ErrorList { … }
func validateCustomResourceDefinitionSpecUpdate(ctx context.Context, spec, oldSpec *apiextensions.CustomResourceDefinitionSpec, opts validationOptions, fldPath *field.Path) field.ErrorList { … }
func getSubresourcesForVersion(crd *apiextensions.CustomResourceDefinitionSpec, version string) *apiextensions.CustomResourceSubresources { … }
func hasAnyStatusEnabled(crd *apiextensions.CustomResourceDefinitionSpec) bool { … }
func hasStatusEnabled(subresources *apiextensions.CustomResourceSubresources) bool { … }
func hasPerVersionSchema(versions []apiextensions.CustomResourceDefinitionVersion) bool { … }
func hasPerVersionSubresources(versions []apiextensions.CustomResourceDefinitionVersion) bool { … }
func hasPerVersionColumns(versions []apiextensions.CustomResourceDefinitionVersion) bool { … }
func hasIdenticalPerVersionSchema(versions []apiextensions.CustomResourceDefinitionVersion) bool { … }
func hasIdenticalPerVersionSubresources(versions []apiextensions.CustomResourceDefinitionVersion) bool { … }
func hasIdenticalPerVersionColumns(versions []apiextensions.CustomResourceDefinitionVersion) bool { … }
func ValidateCustomResourceDefinitionStatus(status *apiextensions.CustomResourceDefinitionStatus, fldPath *field.Path) field.ErrorList { … }
func ValidateCustomResourceDefinitionNames(names *apiextensions.CustomResourceDefinitionNames, fldPath *field.Path) field.ErrorList { … }
func ValidateCustomResourceColumnDefinition(col *apiextensions.CustomResourceColumnDefinition, fldPath *field.Path) field.ErrorList { … }
func ValidateCustomResourceSelectableFields(selectableFields []apiextensions.SelectableField, schema *structuralschema.Structural, fldPath *field.Path) (allErrs field.ErrorList) { … }
func allowedSelectableFieldSchema(schema *structuralschema.Structural) bool { … }
type specStandardValidator …
func validateCustomResourceDefinitionValidation(ctx context.Context, customResourceValidation *apiextensions.CustomResourceValidation, statusSubresourceEnabled bool, opts validationOptions, fldPath *field.Path) field.ErrorList { … }
var metaFields …
type OpenAPISchemaErrorList …
func (o *OpenAPISchemaErrorList) AppendErrors(list *OpenAPISchemaErrorList) { … }
func (o *OpenAPISchemaErrorList) AllErrors() field.ErrorList { … }
func ValidateCustomResourceDefinitionOpenAPISchema(schema *apiextensions.JSONSchemaProps, fldPath *field.Path, ssv specStandardValidator, isRoot bool, opts *validationOptions, celContext *CELSchemaContext) *OpenAPISchemaErrorList { … }
func pathValid(schema *apiextensions.JSONSchemaProps, path string) bool { … }
func multiplyWithOverflowGuard(baseCost, cardinality uint64) uint64 { … }
func getExpressionCost(cr cel.CompilationResult, cardinalityCost *CELSchemaContext) uint64 { … }
func getCostErrorMessage(costName string, expressionCost, costLimit uint64) string { … }
var newlineMatcher …
func hasNewlines(s string) bool { … }
func validateMapListKeysMapSet(schema *apiextensions.JSONSchemaProps, fldPath *field.Path) field.ErrorList { … }
type specStandardValidatorV3 …
func (v *specStandardValidatorV3) withForbiddenDefaults(reason string) specStandardValidator { … }
func (v *specStandardValidatorV3) withInsideResourceMeta() specStandardValidator { … }
func (v *specStandardValidatorV3) insideResourceMeta() bool { … }
func (v *specStandardValidatorV3) withForbidOldSelfValidations(path *field.Path) specStandardValidator { … }
func (v *specStandardValidatorV3) forbidOldSelfValidations() *field.Path { … }
func (v *specStandardValidatorV3) validate(schema *apiextensions.JSONSchemaProps, fldPath *field.Path) field.ErrorList { … }
func ValidateCustomResourceDefinitionSubresources(subresources *apiextensions.CustomResourceSubresources, fldPath *field.Path) field.ErrorList { … }
func validateSimpleJSONPath(s string, fldPath *field.Path) field.ErrorList { … }
var allowedFieldsAtRootSchema …
func allowedAtRootSchema(field string) bool { … }
func requireOpenAPISchema(oldCRDSpec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func allVersionsSpecifyOpenAPISchema(spec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func specHasDefaults(spec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func schemaHasDefaults(s *apiextensions.JSONSchemaProps) bool { … }
func HasSchemaWith(spec *apiextensions.CustomResourceDefinitionSpec, pred func(s *apiextensions.JSONSchemaProps) bool) bool { … }
var schemaPool …
func schemaHasRecurse(s *apiextensions.JSONSchemaProps, pred func(s *apiextensions.JSONSchemaProps) bool) bool { … }
func SchemaHas(s *apiextensions.JSONSchemaProps, pred func(s *apiextensions.JSONSchemaProps) bool) bool { … }
func specHasKubernetesExtensions(spec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func schemaHasKubernetesExtensions(s *apiextensions.JSONSchemaProps) bool { … }
func requireStructuralSchema(oldCRDSpec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func specHasNonStructuralSchema(spec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func schemaIsNonStructural(schema *apiextensions.JSONSchemaProps) bool { … }
func requirePrunedDefaults(oldCRDSpec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func schemaHasUnprunedDefaults(schema *apiextensions.JSONSchemaProps) (bool, error) { … }
func requireAtomicSetType(oldCRDSpec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func hasNonAtomicSetType(schema *apiextensions.JSONSchemaProps) bool { … }
func requireMapListKeysMapSetValidation(oldCRDSpec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func hasInvalidMapListKeysMapSet(schema *apiextensions.JSONSchemaProps) bool { … }
func requireValidPropertyType(oldCRDSpec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func validateAPIApproval(newCRD, oldCRD *apiextensions.CustomResourceDefinition) field.ErrorList { … }
func validatePreserveUnknownFields(crd, oldCRD *apiextensions.CustomResourceDefinition) field.ErrorList { … }
func specHasInvalidTypes(spec *apiextensions.CustomResourceDefinitionSpec) bool { … }
func SchemaHasInvalidTypes(s *apiextensions.JSONSchemaProps) bool { … }