Documentation

Overview

    Package validation contains generic api type validation functions.

    Index

    Constants

    View Source
    const FieldImmutableErrorMsg string = `field is immutable`

      FieldImmutableErrorMsg is a error message for field is immutable.

      View Source
      const IsNegativeErrorMsg string = `must be greater than or equal to 0`

        IsNegativeErrorMsg is a error message for value must be greater than or equal to 0.

        Variables

        View Source
        var BannedOwners = map[schema.GroupVersionKind]struct{}{
        	{Group: "", Version: "v1", Kind: "Event"}: {},
        }

          BannedOwners is a black list of object that are not allowed to be owners.

          View Source
          var ValidateClusterName = NameIsDNS1035Label

            ValidateClusterName can be used to check whether the given cluster name is valid.

            View Source
            var ValidateNamespaceName = NameIsDNSLabel

              ValidateNamespaceName can be used to check whether the given namespace name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.

              View Source
              var ValidateServiceAccountName = NameIsDNSSubdomain

                ValidateServiceAccountName can be used to check whether the given service account name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.

                Functions

                func NameIsDNS1035Label

                func NameIsDNS1035Label(name string, prefix bool) []string

                  NameIsDNS1035Label is a ValidateNameFunc for names that must be a DNS 952 label.

                  func NameIsDNSLabel

                  func NameIsDNSLabel(name string, prefix bool) []string

                    NameIsDNSLabel is a ValidateNameFunc for names that must be a DNS 1123 label.

                    func NameIsDNSSubdomain

                    func NameIsDNSSubdomain(name string, prefix bool) []string

                      NameIsDNSSubdomain is a ValidateNameFunc for names that must be a DNS subdomain.

                      func ValidateAnnotations

                      func ValidateAnnotations(annotations map[string]string, fldPath *field.Path) field.ErrorList

                        ValidateAnnotations validates that a set of annotations are correctly defined.

                        func ValidateFinalizerName

                        func ValidateFinalizerName(stringValue string, fldPath *field.Path) field.ErrorList

                          ValidateFinalizerName validates finalizer names.

                          func ValidateFinalizers

                          func ValidateFinalizers(finalizers []string, fldPath *field.Path) field.ErrorList

                            ValidateFinalizers tests if the finalizers name are valid, and if there are conflicting finalizers.

                            func ValidateImmutableField

                            func ValidateImmutableField(newVal, oldVal interface{}, fldPath *field.Path) field.ErrorList

                              ValidateImmutableField validates the new value and the old value are deeply equal.

                              func ValidateNoNewFinalizers

                              func ValidateNoNewFinalizers(newFinalizers []string, oldFinalizers []string, fldPath *field.Path) field.ErrorList

                                ValidateNoNewFinalizers validates the new finalizers has no new finalizers compare to old finalizers.

                                func ValidateNonnegativeField

                                func ValidateNonnegativeField(value int64, fldPath *field.Path) field.ErrorList

                                  ValidateNonnegativeField validates that given value is not negative.

                                  func ValidateObjectMeta

                                  func ValidateObjectMeta(objMeta *metav1.ObjectMeta, requiresNamespace bool, nameFn ValidateNameFunc, fldPath *field.Path) field.ErrorList

                                    ValidateObjectMeta validates an object's metadata on creation. It expects that name generation has already been performed. It doesn't return an error for rootscoped resources with namespace, because namespace should already be cleared before.

                                    func ValidateObjectMetaAccessor

                                    func ValidateObjectMetaAccessor(meta metav1.Object, requiresNamespace bool, nameFn ValidateNameFunc, fldPath *field.Path) field.ErrorList

                                      ValidateObjectMetaAccessor validates an object's metadata on creation. It expects that name generation has already been performed. It doesn't return an error for rootscoped resources with namespace, because namespace should already be cleared before.

                                      func ValidateObjectMetaAccessorUpdate

                                      func ValidateObjectMetaAccessorUpdate(newMeta, oldMeta metav1.Object, fldPath *field.Path) field.ErrorList

                                        ValidateObjectMetaAccessorUpdate validates an object's metadata when updated.

                                        func ValidateObjectMetaUpdate

                                        func ValidateObjectMetaUpdate(newMeta, oldMeta *metav1.ObjectMeta, fldPath *field.Path) field.ErrorList

                                          ValidateObjectMetaUpdate validates an object's metadata when updated.

                                          func ValidateOwnerReferences

                                          func ValidateOwnerReferences(ownerReferences []metav1.OwnerReference, fldPath *field.Path) field.ErrorList

                                            ValidateOwnerReferences validates that a set of owner references are correctly defined.

                                            Types

                                            type ValidateNameFunc

                                            type ValidateNameFunc func(name string, prefix bool) []string

                                              ValidateNameFunc validates that the provided name is valid for a given resource type. Not all resources have the same validation rules for names. Prefix is true if the name will have a value appended to it. If the name is not valid, this returns a list of descriptions of individual characteristics of the value that were not valid. Otherwise this returns an empty list or nil.

                                              Directories

                                              Path Synopsis