Documentation
¶
Overview ¶
Package install ...
Index ¶
Constants ¶
View Source
const ( // DefaultEverestNamespace is the default namespace managed by everest Everest. DefaultEverestNamespace = "everest" // FlagOperatorPostgresql represents the pg operator flag. FlagOperatorPostgresql = "operator.postgresql" // FlagOperatorXtraDBCluster represents the pxc operator flag. FlagOperatorXtraDBCluster = "operator.xtradb-cluster" // FlagOperatorMongoDB represents the psmdb operator flag. FlagOperatorMongoDB = "operator.mongodb" // FlagNamespaces represents the namespaces flag. FlagNamespaces = "namespaces" // FlagVersionMetadataURL represents the version service url flag. FlagVersionMetadataURL = "version-metadata-url" // FlagVersion represents the version flag. FlagVersion = "version" // FlagSkipWizard represents the flag to skip the installation wizard. FlagSkipWizard = "skip-wizard" // FlagDisableTelemetry disables telemetry. FlagDisableTelemetry = "disable-telemetry" )
View Source
const ( // MonitoringNamespace is the namespace where the monitoring stack is installed. MonitoringNamespace = "everest-monitoring" // EverestMonitoringNamespaceEnvVar is the name of the environment variable that holds the monitoring namespace. EverestMonitoringNamespaceEnvVar = "MONITORING_NAMESPACE" )
Variables ¶
View Source
var ( // ErrNSEmpty appears when the provided list of the namespaces is considered empty. ErrNSEmpty = errors.New("namespace list is empty. Specify at least one namespace") // ErrNSReserved appears when some of the provided names are forbidden to use. ErrNSReserved = func(ns string) error { return fmt.Errorf("'%s' namespace is reserved for Everest internals. Please specify another namespace", ns) } // ErrNameNotRFC1035Compatible appears when some of the provided names are not RFC1035 compatible. ErrNameNotRFC1035Compatible = func(fieldName string) error { return fmt.Errorf(`'%s' is not RFC 1035 compatible. The name should contain only lowercase alphanumeric characters or '-', start with an alphabetic character, end with an alphanumeric character`, fieldName, ) } // ErrNoOperatorsSelected appears when no operators are selected for installation. ErrNoOperatorsSelected = errors.New("no operators selected for installation. Minimum one operator must be selected") )
Functions ¶
func ValidateNamespaces ¶
ValidateNamespaces validates a comma-separated namespaces string.
Types ¶
type Config ¶
type Config struct {
// Namespaces is a user-defined string represents raw non-validated comma-separated list of namespaces for everest to operate in.
Namespaces string `mapstructure:"namespaces"`
// NamespacesList validated list of namespaces that everest can operate in.
NamespacesList []string `mapstructure:"namespaces-map"`
// SkipWizard skips wizard during installation.
SkipWizard bool `mapstructure:"skip-wizard"`
// KubeconfigPath is a path to a kubeconfig
KubeconfigPath string `mapstructure:"kubeconfig"`
// VersionMetadataURL stores hostname to retrieve version metadata information from.
VersionMetadataURL string `mapstructure:"version-metadata-url"`
// Version defines the version to be installed. If empty, the latest version is installed.
Version string `mapstructure:"version"`
// DisableTelemetry disables telemetry.
DisableTelemetry bool `mapstructure:"disable-telemetry"`
Operator OperatorConfig
// If set, we will print the pretty output.
Pretty bool
}
Config stores configuration for the operators.
type Install ¶
type Install struct {
// contains filtered or unexported fields
}
Install implements the main logic for commands.
func NewInstall ¶
NewInstall returns a new Install struct.
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.
Click to show internal directories.
Click to hide internal directories.