cluster

package
v0.27.0-rc.3 Latest Latest
Warning

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

Go to latest
Published: Jan 9, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CreatorPropertyConfigPath           = "configpath"
	CreatorPropertyWorkDir              = "workdir"
	CreatorPropertyFuryctlConf          = "furyctlconf"
	CreatorPropertyKfdManifest          = "kfdmanifest"
	CreatorPropertyDistroPath           = "distropath"
	CreatorPropertyBinPath              = "binpath"
	CreatorPropertyPhase                = "phase"
	CreatorPropertySkipVpn              = "skipvpn"
	CreatorPropertyVpnAutoConnect       = "vpnautoconnect"
	CreatorPropertyDryRun               = "dryrun"
	CreatorPropertyForce                = "force"
	CreatorPropertyUpgrade              = "upgrade"
	CreatorPropertyExternalUpgradesPath = "externalupgradespath"
)
View Source
const (
	DeleterPropertyFuryctlConf    = "furyctlconf"
	DeleterPropertyPhase          = "phase"
	DeleterPropertyWorkDir        = "workdir"
	DeleterPropertyKfdManifest    = "kfdmanifest"
	DeleterPropertyBinPath        = "binpath"
	DeleterPropertySkipVpn        = "skipvpn"
	DeleterPropertyVpnAutoConnect = "vpnautoconnect"
	DeleterPropertyDryRun         = "dryrun"
)
View Source
const (
	OperationPhasePreFlight             = "preflight"
	OperationPhaseInfrastructure        = "infrastructure"
	OperationSubPhasePreInfrastructure  = "pre-infrastructure"
	OperationSubPhasePostInfrastructure = "post-infrastructure"
	OperationPhaseKubernetes            = "kubernetes"
	OperationSubPhasePreKubernetes      = "pre-kubernetes"
	OperationSubPhasePostKubernetes     = "post-kubernetes"
	OperationPhaseDistribution          = "distribution"
	OperationSubPhasePreDistribution    = "pre-distribution"
	OperationSubPhasePostDistribution   = "post-distribution"
	OperationPhasePlugins               = "plugins"
	OperationPhasePreUpgrade            = "pre-upgrade"
	OperationPhaseAll                   = ""

	OperationPhaseOptionVPNAutoConnect = "vpnautoconnect"
)

Variables

View Source
var (
	ErrUnsupportedPhase = errors.New(
		"unsupported phase, options are: infrastructure, kubernetes, distribution, plugins",
	)
	ErrUnsupportedOperationPhase = errors.New(
		"unsupported operation phase, options are: pre-infrastructure, infrastructure, post-infrastructure, " +
			"pre-kubernetes, kubernetes, post-kubernetes, pre-distribution, distribution, post-distribution, plugins",
	)
)
View Source
var ErrCannotSetEnvVar = errors.New("cannot set env var")

Functions

func CheckPhase added in v0.25.0

func CheckPhase(phase string) error

func GetPhase added in v0.27.0

func GetPhase(phase string) string

func GetPhasesOrder added in v0.27.0

func GetPhasesOrder() []string

func RegisterCreatorFactory added in v0.25.0

func RegisterCreatorFactory(apiVersion, kind string, factory CreatorFactory)

func RegisterDeleterFactory added in v0.25.0

func RegisterDeleterFactory(apiVersion, kind string, factory DeleterFactory)

func ValidateOperationPhase added in v0.27.0

func ValidateOperationPhase(phase string) error

Types

type Creator added in v0.25.0

type Creator interface {
	SetProperties(props []CreatorProperty)
	SetProperty(name string, value any)
	Create(startFrom string, timeout int) error
	GetPhasePath(phase string) (string, error)
}

func NewCreator added in v0.25.0

func NewCreator(
	minimalConf config.Furyctl,
	kfdManifest config.KFD,
	paths CreatorPaths,
	phase string,
	skipVpn,
	vpnAutoConnect,
	dryRun,
	force bool,
	upgrade bool,
	externalUpgradesPath string,
) (Creator, error)

type CreatorFactory added in v0.25.0

type CreatorFactory func(configPath string, props []CreatorProperty) (Creator, error)

func NewCreatorFactory added in v0.25.0

func NewCreatorFactory[T Creator, S any](cc T) CreatorFactory

type CreatorPaths added in v0.25.0

type CreatorPaths struct {
	ConfigPath string
	WorkDir    string
	DistroPath string
	BinPath    string
}

type CreatorProperty added in v0.25.0

type CreatorProperty struct {
	Name  string
	Value any
}

type Deleter added in v0.25.0

type Deleter interface {
	SetProperties(props []DeleterProperty)
	SetProperty(name string, value any)
	Delete() error
}

func NewDeleter added in v0.25.0

func NewDeleter(
	minimalConf config.Furyctl,
	kfdManifest config.KFD,
	paths DeleterPaths,
	phase string,
	skipVpn,
	vpnAutoConnect,
	dryRun bool,
) (Deleter, error)

type DeleterFactory added in v0.25.0

type DeleterFactory func(configPath string, props []DeleterProperty) (Deleter, error)

func NewDeleterFactory added in v0.25.0

func NewDeleterFactory[T Deleter, S any](dd T) DeleterFactory

type DeleterPaths added in v0.25.0

type DeleterPaths struct {
	ConfigPath string
	WorkDir    string
	BinPath    string
}

type DeleterProperty added in v0.25.0

type DeleterProperty struct {
	Name  string
	Value any
}

type OperationPhase added in v0.25.0

type OperationPhase struct {
	Path                 string
	TerraformPath        string
	KustomizePath        string
	KubectlPath          string
	YqPath               string
	HelmPath             string
	HelmfilePath         string
	TerraformPlanPath    string
	TerraformLogsPath    string
	TerraformOutputsPath string
	TerraformSecretsPath string
	// contains filtered or unexported fields
}

func NewOperationPhase added in v0.25.0

func NewOperationPhase(folder string, kfdTools config.KFDTools, binPath string) *OperationPhase

func (*OperationPhase) CopyFromTemplate added in v0.25.0

func (*OperationPhase) CopyFromTemplate(
	cfg template.Config,
	prefix,
	sourcePath,
	targetPath,
	furyctlConfPath string,
) error

func (*OperationPhase) CopyPathsToConfig added in v0.27.0

func (op *OperationPhase) CopyPathsToConfig(cfg *template.Config)

func (*OperationPhase) CreateFolderStructure added in v0.25.0

func (op *OperationPhase) CreateFolderStructure() error

func (*OperationPhase) CreateRootFolder added in v0.27.0

func (op *OperationPhase) CreateRootFolder() error

func (*OperationPhase) Self added in v0.27.0

func (op *OperationPhase) Self() *OperationPhase

type OperationPhaseOption added in v0.25.0

type OperationPhaseOption struct {
	Name  string
	Value any
}

Jump to

Keyboard shortcuts

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