kubernetesk8s.io/kubernetes/pkg/apis/networking/validation Index | Files

package validation

import "k8s.io/kubernetes/pkg/apis/networking/validation"

Index

Variables

var ValidateIngressClassName = apimachineryvalidation.NameIsDNSSubdomain

ValidateIngressClassName validates that the given name can be used as an IngressClass name.

var ValidateIngressName = apimachineryvalidation.NameIsDNSSubdomain

ValidateIngressName validates that the given name can be used as an Ingress name.

var ValidateServiceCIDRName = apimachineryvalidation.NameIsDNSSubdomain

Functions

func ValidateIPAddress

func ValidateIPAddress(ipAddress *networking.IPAddress) field.ErrorList

func ValidateIPAddressName

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

ValidateIPAddressName validates that the name is the decimal representation of an IP address. IPAddress does not support generating names, prefix is not considered.

func ValidateIPAddressUpdate

func ValidateIPAddressUpdate(update, old *networking.IPAddress) field.ErrorList

ValidateIPAddressUpdate tests if an update to an IPAddress is valid.

func ValidateIPBlock

func ValidateIPBlock(ipb *networking.IPBlock, fldPath *field.Path, opts NetworkPolicyValidationOptions) field.ErrorList

ValidateIPBlock validates a cidr and the except fields of an IPBlock NetworkPolicyPeer.

If a pre-existing CIDR is invalid/insecure, but it is not being changed by this update, then we have to continue allowing it. But since the user may have changed the policy in arbitrary ways (adding/removing rules, adding/removing peers, adding/removing ipBlock.except values, etc), we can't reliably determine whether a CIDR value we see here is a new value or a pre-existing one. So we just allow any CIDR value that appeared in the old NetworkPolicy to be used here without revalidation.

func ValidateIngressClass

func ValidateIngressClass(ingressClass *networking.IngressClass) field.ErrorList

ValidateIngressClass ensures that IngressClass resources are valid.

func ValidateIngressClassUpdate

func ValidateIngressClassUpdate(newIngressClass, oldIngressClass *networking.IngressClass) field.ErrorList

ValidateIngressClassUpdate ensures that IngressClass updates are valid.

func ValidateIngressCreate

func ValidateIngressCreate(ingress *networking.Ingress) field.ErrorList

ValidateIngressCreate validates Ingresses on create.

func ValidateIngressLoadBalancerStatus

func ValidateIngressLoadBalancerStatus(status, oldStatus *networking.IngressLoadBalancerStatus, fldPath *field.Path) field.ErrorList

ValidateIngressLoadBalancerStatus validates required fields on an IngressLoadBalancerStatus

func ValidateIngressSpec

func ValidateIngressSpec(spec *networking.IngressSpec, fldPath *field.Path, opts IngressValidationOptions) field.ErrorList

ValidateIngressSpec tests if required fields in the IngressSpec are set.

func ValidateIngressStatusUpdate

func ValidateIngressStatusUpdate(ingress, oldIngress *networking.Ingress) field.ErrorList

ValidateIngressStatusUpdate tests if required fields in the Ingress are set when updating status.

func ValidateIngressUpdate

func ValidateIngressUpdate(ingress, oldIngress *networking.Ingress) field.ErrorList

ValidateIngressUpdate validates ingresses on update.

func ValidateNetworkPolicy

ValidateNetworkPolicy validates a networkpolicy.

func ValidateNetworkPolicyName

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

ValidateNetworkPolicyName can be used to check whether the given networkpolicy name is valid.

func ValidateNetworkPolicyPeer

func ValidateNetworkPolicyPeer(peer *networking.NetworkPolicyPeer, opts NetworkPolicyValidationOptions, peerPath *field.Path) field.ErrorList

ValidateNetworkPolicyPeer validates a NetworkPolicyPeer

func ValidateNetworkPolicyPort

func ValidateNetworkPolicyPort(port *networking.NetworkPolicyPort, portPath *field.Path) field.ErrorList

ValidateNetworkPolicyPort validates a NetworkPolicyPort

func ValidateNetworkPolicySpec

func ValidateNetworkPolicySpec(spec *networking.NetworkPolicySpec, opts NetworkPolicyValidationOptions, fldPath *field.Path) field.ErrorList

ValidateNetworkPolicySpec tests if required fields in the networkpolicy spec are set.

func ValidateNetworkPolicyUpdate

func ValidateNetworkPolicyUpdate(update, old *networking.NetworkPolicy, opts NetworkPolicyValidationOptions) field.ErrorList

ValidateNetworkPolicyUpdate tests if an update to a NetworkPolicy is valid.

func ValidateServiceCIDR

func ValidateServiceCIDR(cidrConfig *networking.ServiceCIDR) field.ErrorList

func ValidateServiceCIDRStatusUpdate

func ValidateServiceCIDRStatusUpdate(update, old *networking.ServiceCIDR) field.ErrorList

ValidateServiceCIDRStatusUpdate tests if if an update to a ServiceCIDR Status is valid.

func ValidateServiceCIDRUpdate

func ValidateServiceCIDRUpdate(update, old *networking.ServiceCIDR) field.ErrorList

ValidateServiceCIDRUpdate tests if an update to a ServiceCIDR is valid.

Types

type IngressValidationOptions

type IngressValidationOptions struct {
	// AllowInvalidSecretName indicates whether spec.tls[*].secretName values that are not valid Secret names should be allowed
	AllowInvalidSecretName bool

	// AllowInvalidWildcardHostRule indicates whether invalid rule values are allowed in rules with wildcard hostnames
	AllowInvalidWildcardHostRule bool
}

IngressValidationOptions cover beta to GA transitions for HTTP PathType

type NetworkPolicyValidationOptions

type NetworkPolicyValidationOptions struct {
	AllowInvalidLabelValueInSelector bool
	AllowCIDRsEvenIfInvalid          []string
}

func ValidationOptionsForNetworking

func ValidationOptionsForNetworking(new, old *networking.NetworkPolicy) NetworkPolicyValidationOptions

ValidationOptionsForNetworking generates NetworkPolicyValidationOptions for Networking

Source Files

validation.go

Version
v1.33.0 (latest)
Published
Apr 23, 2025
Platform
linux/amd64
Imports
14 packages
Last checked
3 hours ago

Tools for package owners.