validations

package
v0.16.1 Latest Latest
Warning

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

Go to latest
Published: Jun 16, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckDockerAllocatedMemory

func CheckDockerAllocatedMemory(ctx context.Context, dockerExecutable DockerExecutable)

func CheckMinimumDockerVersion

func CheckMinimumDockerVersion(ctx context.Context, dockerExecutable DockerExecutable) error

func FileExists

func FileExists(filename string) bool

func FileExistsAndIsNotEmpty added in v0.8.0

func FileExistsAndIsNotEmpty(filename string) bool

func NewKubectl added in v0.6.0

func ProcessValidationResults added in v0.12.0

func ProcessValidationResults(validations []Validation) error

ProcessValidationResults is currently used for unit test processing.

func ValidateAuthenticationForGitProvider added in v0.11.0

func ValidateAuthenticationForGitProvider(clusterSpec *cluster.Spec, cliConfig *config.CliConfig) error

func ValidateAuthenticationForRegistryMirror added in v0.12.2

func ValidateAuthenticationForRegistryMirror(clusterSpec *cluster.Spec) error

ValidateAuthenticationForRegistryMirror checks if REGISTRY_USERNAME and REGISTRY_PASSWORD is set if authenticated registry mirrors are used.

func ValidateCertForRegistryMirror added in v0.8.0

func ValidateCertForRegistryMirror(clusterSpec *cluster.Spec, tlsValidator TlsValidator) error

func ValidateClusterNameArg

func ValidateClusterNameArg(args []string) (string, error)

func ValidateDockerExecutable added in v0.12.0

func ValidateDockerExecutable(ctx context.Context, docker DockerExecutable, os string) error

func ValidateManagementClusterBundlesVersion added in v0.15.0

func ValidateManagementClusterBundlesVersion(ctx context.Context, k KubectlClient, mgmtCluster *types.Cluster, workload *cluster.Spec) error

ValidateManagementClusterBundlesVersion checks if management cluster's bundle version is greater than or equal to the bundle version used to upgrade a workload cluster.

func ValidateManagementClusterName added in v0.14.0

func ValidateManagementClusterName(ctx context.Context, k KubectlClient, mgmtCluster *types.Cluster, mgmtClusterName string) error

ValidateManagementClusterName checks if the management cluster specified in the workload cluster spec is valid.

func ValidateOSForRegistryMirror added in v0.15.0

func ValidateOSForRegistryMirror(clusterSpec *cluster.Spec, provider providers.Provider) error

ValidateOSForRegistryMirror checks if the OS is valid for the provided registry mirror configuration.

Types

type DockerExecutable

type DockerExecutable interface {
	Version(ctx context.Context) (int, error)
	AllocatedMemory(ctx context.Context) (uint64, error)
}

type KubectlClient added in v0.6.0

type KubectlClient interface {
	List(ctx context.Context, kubeconfig string, list kubernetes.ObjectList) error
	ValidateControlPlaneNodes(ctx context.Context, cluster *types.Cluster, clusterName string) error
	ValidateWorkerNodes(ctx context.Context, clusterName string, kubeconfig string) error
	ValidateNodes(ctx context.Context, kubeconfig string) error
	ValidateClustersCRD(ctx context.Context, cluster *types.Cluster) error
	ValidateEKSAClustersCRD(ctx context.Context, cluster *types.Cluster) error
	Version(ctx context.Context, cluster *types.Cluster) (*executables.VersionResponse, error)
	GetClusters(ctx context.Context, cluster *types.Cluster) ([]types.CAPICluster, error)
	GetEksaCluster(ctx context.Context, cluster *types.Cluster, clusterName string) (*v1alpha1.Cluster, error)
	GetBundles(ctx context.Context, kubeconfigFile, name, namespace string) (*releasev1alpha1.Bundles, error)
	GetEksaGitOpsConfig(ctx context.Context, gitOpsConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.GitOpsConfig, error)
	GetEksaFluxConfig(ctx context.Context, fluxConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.FluxConfig, error)
	GetEksaOIDCConfig(ctx context.Context, oidcConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.OIDCConfig, error)
	GetEksaVSphereDatacenterConfig(ctx context.Context, vsphereDatacenterConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.VSphereDatacenterConfig, error)
	GetEksaTinkerbellDatacenterConfig(ctx context.Context, tinkerbellDatacenterConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.TinkerbellDatacenterConfig, error)
	GetEksaTinkerbellMachineConfig(ctx context.Context, tinkerbellMachineConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.TinkerbellMachineConfig, error)
	GetEksaAWSIamConfig(ctx context.Context, awsIamConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.AWSIamConfig, error)
	SearchIdentityProviderConfig(ctx context.Context, ipName string, kind string, kubeconfigFile string, namespace string) ([]*v1alpha1.VSphereDatacenterConfig, error)
	GetObject(ctx context.Context, resourceType, name, namespace, kubeconfig string, obj runtime.Object) error
}

type Opts added in v0.6.0

type Opts struct {
	Kubectl            KubectlClient
	Spec               *cluster.Spec
	WorkloadCluster    *types.Cluster
	ManagementCluster  *types.Cluster
	Provider           providers.Provider
	TLSValidator       TlsValidator
	CliConfig          *config.CliConfig
	SkippedValidations map[string]bool
}

func (*Opts) SetDefaults added in v0.8.0

func (o *Opts) SetDefaults()

type Runner

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

func NewRunner

func NewRunner() *Runner

func (*Runner) Register

func (r *Runner) Register(validations ...Validation)

func (*Runner) Run

func (r *Runner) Run() error

type TlsValidator added in v0.8.0

type TlsValidator interface {
	ValidateCert(host, port, caCertContent string) error
	IsSignedByUnknownAuthority(host, port string) (bool, error)
}

type Validation

type Validation func() *ValidationResult

type ValidationError added in v0.6.0

type ValidationError struct {
	Errs []string
}

func (*ValidationError) Error added in v0.6.0

func (v *ValidationError) Error() string

func (*ValidationError) String added in v0.12.0

func (v *ValidationError) String() string

type ValidationResult

type ValidationResult struct {
	Name        string
	Err         error
	Remediation string
	Silent      bool
}

func (*ValidationResult) LogPass

func (v *ValidationResult) LogPass()

func (*ValidationResult) Report

func (v *ValidationResult) Report()

Directories

Path Synopsis
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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