config

package
v1.25.3 Latest Latest
Warning

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

Go to latest
Published: Jun 26, 2023 License: BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewValidator

func NewValidator() *validator.Validate

func ValidateAPIVersion

func ValidateAPIVersion(fl validator.FieldLevel) bool

func ValidateAwsRegion

func ValidateAwsRegion(fl validator.FieldLevel) bool

func ValidateClusterKind

func ValidateClusterKind(fl validator.FieldLevel) bool

func ValidateEksVersion

func ValidateEksVersion(fl validator.FieldLevel) bool

func ValidatePermissiveConstraint

func ValidatePermissiveConstraint(fl validator.FieldLevel) bool

func ValidatePermissiveSemVer

func ValidatePermissiveSemVer(fl validator.FieldLevel) bool

Types

type Common

type Common struct {
	Furyagent Tool `yaml:"furyagent" validate:"required"`
	Kubectl   Tool `yaml:"kubectl" validate:"required"`
	Kustomize Tool `yaml:"kustomize" validate:"required"`
	Terraform Tool `yaml:"terraform" validate:"required"`
}

type Eks

type Eks struct {
	Awscli Tool `yaml:"awscli" validate:"required"`
}

type Furyctl

type Furyctl struct {
	APIVersion string      `yaml:"apiVersion" validate:"required,api-version"`
	Kind       string      `yaml:"kind" validate:"required,cluster-kind"`
	Metadata   FuryctlMeta `yaml:"metadata" validate:"required"`
	Spec       FuryctlSpec `yaml:"spec" validate:"required"`
}

type FuryctlMeta

type FuryctlMeta struct {
	Name string `yaml:"name" validate:"required"`
}

type FuryctlSpec

type FuryctlSpec struct {
	DistributionVersion string             `yaml:"distributionVersion" validate:"required"`
	ToolsConfiguration  ToolsConfiguration `yaml:"toolsConfiguration" validate:"required"`
}

type KFD

type KFD struct {
	Version        string        `yaml:"version" validate:"required,permissive-semver"`
	Modules        KFDModules    `yaml:"modules" validate:"required"`
	Kubernetes     KFDKubernetes `yaml:"kubernetes" validate:"required"`
	FuryctlSchemas KFDSchemas    `yaml:"furyctlSchemas" validate:"required"`
	Tools          KFDTools      `yaml:"tools" validate:"required"`
}

type KFDKubernetes

type KFDKubernetes struct {
	Eks KFDProvider `yaml:"eks" validate:"required"`
}

type KFDModules

type KFDModules struct {
	Auth       string `yaml:"auth" validate:"required"`
	Aws        string `yaml:"aws"`
	Dr         string `yaml:"dr" validate:"required"`
	Ingress    string `yaml:"ingress" validate:"required"`
	Logging    string `yaml:"logging" validate:"required"`
	Monitoring string `yaml:"monitoring" validate:"required"`
	Networking string `yaml:"networking" validate:"required"`
	Opa        string `yaml:"opa" validate:"required"`
}

type KFDProvider

type KFDProvider struct {
	Version   string `yaml:"version" validate:"required"`
	Installer string `yaml:"installer" validate:"required"`
}

type KFDSchema

type KFDSchema struct {
	APIVersion string `yaml:"apiVersion" validate:"required,api-version"`
	Kind       string `yaml:"kind" validate:"required,cluster-kind"`
}

type KFDSchemas

type KFDSchemas struct {
	Eks []KFDSchema `yaml:"eks"`
}

type KFDTools

type KFDTools struct {
	Common Common `yaml:"common" validate:"required"`
	Eks    Eks    `yaml:"eks" validate:"required"`
}

type S3

type S3 struct {
	BucketName string `yaml:"bucketName" validate:"required"`
	KeyPrefix  string `yaml:"keyPrefix" validate:"required,max=37"`
	Region     string `yaml:"region" validate:"required,aws-region"`
}

type State

type State struct {
	S3 S3 `yaml:"s3" validate:"required"`
}

type Terraform

type Terraform struct {
	State State `yaml:"state" validate:"required"`
}

type Tool

type Tool struct {
	Version   string            `yaml:"version" validate:"required,permissive-constraint"`
	Checksums map[string]string `yaml:"checksums"`
}

func (Tool) String

func (t Tool) String() string

type ToolsConfiguration

type ToolsConfiguration struct {
	Terraform Terraform `yaml:"terraform" validate:"required"`
}

Jump to

Keyboard shortcuts

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