k3d

package
v1.11.4 Latest Latest
Warning

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

Go to latest
Published: Oct 9, 2025 License: Apache-2.0 Imports: 8 Imported by: 0

README

pkg/validator/k3d

This package provides validation functionality for K3d cluster configurations.

Purpose

Contains validation logic specifically for K3d cluster configurations. This validator ensures K3d configurations are valid according to K3d APIs and requirements before cluster provisioning.

Features

  • K3d Configuration Validation: Validates K3d cluster configurations using upstream K3d APIs
  • Runtime Validation: Validates container runtime compatibility and requirements
  • Metadata Validation: Integrates with metadata validator for consistent validation
  • Port Mapping Validation: Validates port mappings and network configurations
  • Pre-provisioning Validation: Catches configuration errors before attempting cluster creation

Usage

import "github.com/devantler-tech/ksail-go/pkg/validator/k3d"

// Create K3d validator
validator := &k3d.Validator{}

// Validate K3d cluster configuration
result := validator.Validate(k3dConfig)
if !result.Valid {
    for _, err := range result.Errors {
        fmt.Printf("Validation error: %v\n", err)
    }
}

Key Components

  • validator.go: Core K3d validation logic and implementation
  • K3d API integration: Uses upstream K3d APIs for validation
  • runtime validation: Validates container runtime compatibility
  • metadata validation: Leverages shared metadata validation utilities

Integration

This validator is used by:

  • pkg/config-manager/k3d: K3d configuration loading and validation
  • K3d cluster provisioning workflows
  • CLI commands that work with K3d configurations

Validation Rules

The K3d validator enforces:

  • Valid K3d cluster naming conventions
  • Proper container runtime configurations (Docker/Podman)
  • Valid port mapping and network configurations
  • Kubernetes version compatibility with K3s
  • Volume mount path validation
  • Registry and image configuration validation
  • Resource limits and node configurations

This ensures K3d configurations are valid before attempting local cluster provisioning.


⬅️ Go Back

Documentation

Overview

Package k3d provides K3d configuration validation functionality.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Validator

type Validator struct{}

Validator validates K3d cluster configurations using upstream K3d APIs.

func NewValidator

func NewValidator() *Validator

NewValidator creates a new K3d configuration validator.

func (*Validator) Validate

func (v *Validator) Validate(config *k3dapi.SimpleConfig) *validator.ValidationResult

Validate performs validation on a loaded K3d cluster configuration using upstream K3d APIs. This validator performs both essential field validation and comprehensive upstream K3d validation.

Jump to

Keyboard shortcuts

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