Documentation ¶
Overview ¶
Package validation has functions for validating the correctness of api objects and explaining what is wrong with them when they aren't valid.
Index ¶
- func AccumulateUniquePorts(containers []api.Container, accumulator map[int]bool, ...) errs.ValidationErrorList
- func NewInvalidTypeError(expected reflect.Kind, observed reflect.Kind, fieldName string) error
- func ValidateAnnotations(annotations map[string]string, field string) errs.ValidationErrorList
- func ValidateBoundPod(pod *api.BoundPod) errs.ValidationErrorList
- func ValidateEvent(event *api.Event) errs.ValidationErrorList
- func ValidateLabels(labels map[string]string, field string) errs.ValidationErrorList
- func ValidateLimitRange(limitRange *api.LimitRange) errs.ValidationErrorList
- func ValidateLimitRangeName(name string, prefix bool) (bool, string)
- func ValidateManifest(manifest *api.ContainerManifest) errs.ValidationErrorList
- func ValidateMinion(node *api.Node) errs.ValidationErrorList
- func ValidateMinionUpdate(oldMinion *api.Node, minion *api.Node) errs.ValidationErrorList
- func ValidateNamespace(namespace *api.Namespace) errs.ValidationErrorList
- func ValidateNamespaceName(name string, prefix bool) (bool, string)
- func ValidateNamespaceUpdate(oldNamespace *api.Namespace, namespace *api.Namespace) errs.ValidationErrorList
- func ValidateNodeName(name string, prefix bool) (bool, string)
- func ValidateObjectMeta(meta *api.ObjectMeta, requiresNamespace bool, nameFn ValidateNameFunc) errs.ValidationErrorList
- func ValidateObjectMetaUpdate(old, meta *api.ObjectMeta) errs.ValidationErrorList
- func ValidatePod(pod *api.Pod) errs.ValidationErrorList
- func ValidatePodName(name string, prefix bool) (bool, string)
- func ValidatePodSpec(spec *api.PodSpec) errs.ValidationErrorList
- func ValidatePodTemplateSpec(spec *api.PodTemplateSpec, replicas int) errs.ValidationErrorList
- func ValidatePodUpdate(newPod, oldPod *api.Pod) errs.ValidationErrorList
- func ValidateReadOnlyPersistentDisks(volumes []api.Volume) errs.ValidationErrorList
- func ValidateReplicationController(controller *api.ReplicationController) errs.ValidationErrorList
- func ValidateReplicationControllerName(name string, prefix bool) (bool, string)
- func ValidateReplicationControllerSpec(spec *api.ReplicationControllerSpec) errs.ValidationErrorList
- func ValidateReplicationControllerUpdate(oldController, controller *api.ReplicationController) errs.ValidationErrorList
- func ValidateResourceQuota(resourceQuota *api.ResourceQuota) errs.ValidationErrorList
- func ValidateResourceQuotaName(name string, prefix bool) (bool, string)
- func ValidateSecret(secret *api.Secret) errs.ValidationErrorList
- func ValidateSecretName(name string, prefix bool) (bool, string)
- func ValidateService(service *api.Service) errs.ValidationErrorList
- func ValidateServiceName(name string, prefix bool) (bool, string)
- func ValidateServiceUpdate(oldService, service *api.Service) errs.ValidationErrorList
- type InvalidTypeError
- type NullSchema
- type Schema
- type SwaggerSchema
- type ValidateNameFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AccumulateUniquePorts ¶
func AccumulateUniquePorts(containers []api.Container, accumulator map[int]bool, extract func(*api.ContainerPort) int) errs.ValidationErrorList
AccumulateUniquePorts runs an extraction function on each Port of each Container, accumulating the results and returning an error if any ports conflict.
func NewInvalidTypeError ¶ added in v0.6.0
func ValidateAnnotations ¶ added in v0.10.0
func ValidateAnnotations(annotations map[string]string, field string) errs.ValidationErrorList
ValidateAnnotations validates that a set of annotations are correctly defined.
func ValidateBoundPod ¶ added in v0.5.1
func ValidateBoundPod(pod *api.BoundPod) errs.ValidationErrorList
ValidateBoundPod tests if required fields on a bound pod are set. TODO: to be removed.
func ValidateEvent ¶ added in v0.5.1
func ValidateEvent(event *api.Event) errs.ValidationErrorList
ValidateEvent makes sure that the event makes sense.
func ValidateLabels ¶ added in v0.9.0
func ValidateLabels(labels map[string]string, field string) errs.ValidationErrorList
ValidateLabels validates that a set of labels are correctly defined.
func ValidateLimitRange ¶ added in v0.10.0
func ValidateLimitRange(limitRange *api.LimitRange) errs.ValidationErrorList
ValidateLimitRange tests if required fields in the LimitRange are set.
func ValidateLimitRangeName ¶ added in v0.12.0
ValidateLimitRangeName can be used to check whether the given limit range name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidateManifest ¶
func ValidateManifest(manifest *api.ContainerManifest) errs.ValidationErrorList
ValidateManifest tests that the specified ContainerManifest has valid data. This includes checking formatting and uniqueness. It also canonicalizes the structure by setting default values and implementing any backwards-compatibility tricks. TODO: replaced by ValidatePodSpec
func ValidateMinion ¶ added in v0.5.1
func ValidateMinion(node *api.Node) errs.ValidationErrorList
ValidateMinion tests if required fields in the node are set.
func ValidateMinionUpdate ¶ added in v0.5.1
ValidateMinionUpdate tests to make sure a minion update can be applied. Modifies oldMinion.
func ValidateNamespace ¶ added in v0.12.0
func ValidateNamespace(namespace *api.Namespace) errs.ValidationErrorList
ValidateNamespace tests if required fields are set.
func ValidateNamespaceName ¶ added in v0.12.0
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.
func ValidateNamespaceUpdate ¶ added in v0.12.0
func ValidateNamespaceUpdate(oldNamespace *api.Namespace, namespace *api.Namespace) errs.ValidationErrorList
ValidateNamespaceUpdate tests to make sure a mamespace update can be applied. Modifies oldNamespace.
func ValidateNodeName ¶ added in v0.10.0
ValidateNodeName can be used to check whether the given node name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidateObjectMeta ¶ added in v0.10.0
func ValidateObjectMeta(meta *api.ObjectMeta, requiresNamespace bool, nameFn ValidateNameFunc) errs.ValidationErrorList
ValidateObjectMeta validates an object's metadata on creation. It expects that name generation has already been performed.
func ValidateObjectMetaUpdate ¶ added in v0.10.0
func ValidateObjectMetaUpdate(old, meta *api.ObjectMeta) errs.ValidationErrorList
ValidateObjectMetaUpdate validates an object's metadata when updated
func ValidatePod ¶
func ValidatePod(pod *api.Pod) errs.ValidationErrorList
ValidatePod tests if required fields in the pod are set.
func ValidatePodName ¶ added in v0.10.0
ValidatePodName can be used to check whether the given pod name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidatePodSpec ¶ added in v0.5.1
func ValidatePodSpec(spec *api.PodSpec) errs.ValidationErrorList
ValidatePodSpec tests that the specified PodSpec has valid data. This includes checking formatting and uniqueness. It also canonicalizes the structure by setting default values and implementing any backwards-compatibility tricks.
func ValidatePodTemplateSpec ¶ added in v0.5.1
func ValidatePodTemplateSpec(spec *api.PodTemplateSpec, replicas int) errs.ValidationErrorList
ValidatePodTemplateSpec validates the spec of a pod template
func ValidatePodUpdate ¶
func ValidatePodUpdate(newPod, oldPod *api.Pod) errs.ValidationErrorList
ValidatePodUpdate tests to see if the update is legal for an end user to make. newPod is updated with fields that cannot be changed.
func ValidateReadOnlyPersistentDisks ¶
func ValidateReadOnlyPersistentDisks(volumes []api.Volume) errs.ValidationErrorList
func ValidateReplicationController ¶
func ValidateReplicationController(controller *api.ReplicationController) errs.ValidationErrorList
ValidateReplicationController tests if required fields in the replication controller are set.
func ValidateReplicationControllerName ¶ added in v0.10.0
ValidateReplicationControllerName can be used to check whether the given replication controller name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidateReplicationControllerSpec ¶ added in v0.5.1
func ValidateReplicationControllerSpec(spec *api.ReplicationControllerSpec) errs.ValidationErrorList
ValidateReplicationControllerSpec tests if required fields in the replication controller spec are set.
func ValidateReplicationControllerUpdate ¶ added in v0.10.0
func ValidateReplicationControllerUpdate(oldController, controller *api.ReplicationController) errs.ValidationErrorList
ValidateReplicationControllerUpdate tests if required fields in the replication controller are set.
func ValidateResourceQuota ¶ added in v0.10.0
func ValidateResourceQuota(resourceQuota *api.ResourceQuota) errs.ValidationErrorList
ValidateResourceQuota tests if required fields in the ResourceQuota are set.
func ValidateResourceQuotaName ¶ added in v0.12.0
ValidateResourceQuotaName can be used to check whether the given resource quota name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidateSecret ¶ added in v0.12.0
func ValidateSecret(secret *api.Secret) errs.ValidationErrorList
ValidateSecret tests if required fields in the Secret are set.
func ValidateSecretName ¶ added in v0.12.0
ValidateSecretName can be used to check whether the given secret name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidateService ¶
func ValidateService(service *api.Service) errs.ValidationErrorList
ValidateService tests if required fields in the service are set.
func ValidateServiceName ¶ added in v0.10.0
ValidateServiceName can be used to check whether the given service name is valid. Prefix indicates this name will be used as part of generation, in which case trailing dashes are allowed.
func ValidateServiceUpdate ¶ added in v0.10.0
func ValidateServiceUpdate(oldService, service *api.Service) errs.ValidationErrorList
ValidateServiceUpdate tests if required fields in the service are set during an update
Types ¶
type InvalidTypeError ¶ added in v0.6.0
type InvalidTypeError struct { ExpectedKind reflect.Kind ObservedKind reflect.Kind FieldName string }
func (*InvalidTypeError) Error ¶ added in v0.6.0
func (i *InvalidTypeError) Error() string
type NullSchema ¶ added in v0.7.0
type NullSchema struct{}
func (NullSchema) ValidateBytes ¶ added in v0.7.0
func (NullSchema) ValidateBytes(data []byte) error
type Schema ¶ added in v0.6.0
Schema is an interface that knows how to validate an API object serialized to a byte array.
func NewSwaggerSchemaFromBytes ¶ added in v0.7.0
type SwaggerSchema ¶ added in v0.7.0
type SwaggerSchema struct {
// contains filtered or unexported fields
}
func (*SwaggerSchema) ValidateBytes ¶ added in v0.7.0
func (s *SwaggerSchema) ValidateBytes(data []byte) error
func (*SwaggerSchema) ValidateObject ¶ added in v0.7.0
func (s *SwaggerSchema) ValidateObject(obj interface{}, apiVersion, fieldName, typeName string) error
type ValidateNameFunc ¶ added in v0.10.0
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.