install

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

Package install ...

Package install ...

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackupConfig

type BackupConfig struct {
	// Enable is true if backup shall be enabled.
	Enable bool
	// Name stores name of the backup.
	Name string
	// Endpoint stores URL to backup.
	Endpoint string
	// Bucket stores name of the bucket for backup.
	Bucket string
	// AccessKey stores username for backup.
	AccessKey string `mapstructure:"access-key"`
	// SecretKey stores password for backup.
	SecretKey string `mapstructure:"secret-key"`
	// Region stores region for backup.
	Region string
}

BackupConfig stores configuration for backup.

type ChannelConfig

type ChannelConfig struct {
	// Everest stores channel for Everest.
	Everest string
	// PG stores channel for PostgreSQL.
	PG string `mapstructure:"postgresql"`
	// PSMDB stores channel for MongoDB.
	PSMDB string `mapstructure:"mongodb"`
	// PXC stores channel for xtradb cluster.
	PXC string `mapstructure:"xtradb-cluster"`
	// VictoriaMetrics stores channel for VictoriaMetrics.
	VictoriaMetrics string `mapstructure:"victoria-metrics"`
}

ChannelConfig stores configuration for operator channels.

type EverestConfig

type EverestConfig struct {
	// Endpoint stores URL to Everest.
	Endpoint string
}

EverestConfig stores config for Everest.

type MonitoringConfig

type MonitoringConfig struct {
	// Enable is true if monitoring shall be enabled.
	Enable bool
	// InstanceName stores monitoring instance name from Everest.
	// If provided, the other monitoring configuration is ignored.
	InstanceName string `mapstructure:"instance-name"`
	// NewInstanceName defines name for a new monitoring instance
	// if it's created.
	NewInstanceName string `mapstructure:"new-instance-name"`
	// Type stores the type of monitoring to be used.
	Type MonitoringType
	// PMM stores configuration for PMM monitoring type.
	PMM *PMMConfig
}

MonitoringConfig stores configuration for monitoring.

type MonitoringType

type MonitoringType string

MonitoringType identifies type of monitoring to be used.

type OperatorConfig

type OperatorConfig struct {
	// PG stores if PostgresSQL shall be installed.
	PG bool `mapstructure:"postgresql"`
	// PSMDB stores if MongoDB shall be installed.
	PSMDB bool `mapstructure:"mongodb"`
	// PXC stores if XtraDB Cluster shall be installed.
	PXC bool `mapstructure:"xtradb-cluster"`
}

OperatorConfig identifies which operators shall be installed.

type Operators

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

Operators implements the main logic for commands.

func NewOperators

func NewOperators(c OperatorsConfig, l *zap.SugaredLogger) (*Operators, error)

NewOperators returns a new Operators struct.

func (*Operators) Run

func (o *Operators) Run(ctx context.Context) error

Run runs the operators installation process.

type OperatorsConfig

type OperatorsConfig struct {
	// Name of the Kubernetes Cluster
	Name string
	// Namespace defines the namespace operators shall be installed to.
	Namespace string
	// SkipWizard skips wizard during installation.
	SkipWizard bool `mapstructure:"skip-wizard"`
	// KubeconfigPath is a path to a kubeconfig
	KubeconfigPath string `mapstructure:"kubeconfig"`

	Backup     BackupConfig
	Channel    ChannelConfig
	Everest    EverestConfig
	Monitoring MonitoringConfig
	Operator   OperatorConfig
}

OperatorsConfig stores configuration for the operators.

type PMMConfig

type PMMConfig struct {
	// Endpoint stores URL to PMM.
	Endpoint string
	// Username stores username for authentication against PMM.
	Username string
	// Password stores password for authentication against PMM.
	Password string
}

PMMConfig stores configuration for PMM monitoring type.

Jump to

Keyboard shortcuts

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