validation

package
v0.6.1-0...-1c02137 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2014 License: Apache-2.0 Imports: 11 Imported by: 0

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

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.Port) 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

func NewInvalidTypeError(expected reflect.Kind, observed reflect.Kind, fieldName string) error

func ValidateBoundPod

func ValidateBoundPod(pod *api.BoundPod) (errors []error)

ValidateBoundPod tests if required fields on a bound pod are set.

func ValidateEvent

func ValidateEvent(event *api.Event) errs.ValidationErrorList

ValidateEvent makes sure that the event makes sense.

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

func ValidateMinion(minion *api.Minion) errs.ValidationErrorList

ValidateMinion tests if required fields in the minion are set.

func ValidateMinionUpdate

func ValidateMinionUpdate(oldMinion *api.Minion, minion *api.Minion) errs.ValidationErrorList

ValidateMinionUpdate tests to make sure a minion update can be applied. Modifies oldMinion.

func ValidatePod

func ValidatePod(pod *api.Pod) errs.ValidationErrorList

ValidatePod tests if required fields in the pod are set.

func ValidatePodSpec

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 ValidatePodState

func ValidatePodState(podState *api.PodState) errs.ValidationErrorList

func ValidatePodTemplateSpec

func ValidatePodTemplateSpec(spec *api.PodTemplateSpec) 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

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 ValidateReplicationControllerSpec

func ValidateReplicationControllerSpec(spec *api.ReplicationControllerSpec) errs.ValidationErrorList

ValidateReplicationControllerSpec tests if required fields in the replication controller spec are set.

func ValidateService

func ValidateService(service *api.Service, lister ServiceLister, ctx api.Context) errs.ValidationErrorList

ValidateService tests if required fields in the service are set.

Types

type InvalidTypeError

type InvalidTypeError struct {
	ExpectedKind reflect.Kind
	ObservedKind reflect.Kind
	FieldName    string
}

func (*InvalidTypeError) Error

func (i *InvalidTypeError) Error() string

type Schema

type Schema struct {
	// contains filtered or unexported fields
}

func NewSchemaFromBytes

func NewSchemaFromBytes(data []byte) (*Schema, error)

func (*Schema) ValidateBytes

func (s *Schema) ValidateBytes(data []byte) error

func (*Schema) ValidateObject

func (s *Schema) ValidateObject(obj interface{}, apiVersion, fieldName, typeName string) error

type ServiceLister

type ServiceLister interface {
	ListServices(api.Context) (*api.ServiceList, error)
}

ServiceLister is an abstract interface for testing.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL