validator

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Feb 10, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// MaxNamespaceLength is the maximum allowed length for a namespace
	MaxNamespaceLength = 63

	// NamespacePattern defines the valid pattern for namespace names
	// Must start and end with alphanumeric, can contain hyphens in the middle
	NamespacePattern = `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`
)

Variables

View Source
var (

	// ReservedNamespaces contains namespace names that cannot be used
	// Currently empty but structured to allow future additions
	ReservedNamespaces = map[string]bool{}
)

Functions

This section is empty.

Types

type NamespaceRequirement added in v0.1.6

type NamespaceRequirement struct {
	Mode              NamespaceRequirementMode
	AllowedNamespaces []string // Empty means "any namespace", populated means "only these namespaces"
}

NamespaceRequirement captures the parsed namespace enforcement settings

type NamespaceRequirementMode added in v0.1.6

type NamespaceRequirementMode int

NamespaceRequirementMode represents how namespace enforcement should behave

const (
	// NamespaceRequirementNone means no namespace requirement is active
	NamespaceRequirementNone NamespaceRequirementMode = iota
	// NamespaceRequirementAny requires every resource to declare a namespace (explicitly or via _defaults)
	NamespaceRequirementAny
	// NamespaceRequirementSpecific requires every resource to use a specific namespace
	NamespaceRequirementSpecific
)

type NamespaceValidator

type NamespaceValidator struct{}

NamespaceValidator validates namespace values

func NewNamespaceValidator

func NewNamespaceValidator() *NamespaceValidator

NewNamespaceValidator creates a new namespace validator

func (*NamespaceValidator) ParseNamespaceRequirement added in v0.1.6

func (v *NamespaceValidator) ParseNamespaceRequirement(raw string) (NamespaceRequirement, error)

ParseNamespaceRequirement interprets a raw flag/config value into a requirement structure Deprecated: Use ParseNamespaceRequirementSlice for new code

func (*NamespaceValidator) ParseNamespaceRequirementSlice added in v0.1.6

func (v *NamespaceValidator) ParseNamespaceRequirementSlice(namespaces []string) (NamespaceRequirement, error)

ParseNamespaceRequirementSlice interprets a slice of namespace values into a requirement structure

func (*NamespaceValidator) ValidateNamespace

func (v *NamespaceValidator) ValidateNamespace(namespace string) error

ValidateNamespace validates a single namespace value

func (*NamespaceValidator) ValidateNamespaceRequirement added in v0.1.6

func (v *NamespaceValidator) ValidateNamespaceRequirement(
	rs *resources.ResourceSet,
	req NamespaceRequirement,
) error

ValidateNamespaceRequirement enforces namespace requirements against a resource set

func (*NamespaceValidator) ValidateNamespaces

func (v *NamespaceValidator) ValidateNamespaces(namespaces []string) error

ValidateNamespaces validates a collection of namespaces

Jump to

Keyboard shortcuts

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