clusters

package
v0.0.0-...-c362759 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	ClusterInfoIdKey               = "id"
	ClusterInfoNameKey             = "name"
	ClusterInfoProviderKey         = "provider"
	ClusterInfoProjectKey          = "project"
	ClusterInfoAccountKey          = "account"
	ClusterInfoRegionKey           = "region"
	ClusterInfoProvisionerKey      = "provisioner"
	ClusterInfoProfileKey          = "clusterProfile"
	ClusterInfoLogCollectionKey    = "logCollection"
	ClusterInfoProductAnalyticsKey = "productAnalytics"
	ClusterInfoErrorReportingKey   = "errorReporting"
	ClusterInfoValuesReportingKey  = "valuesReporting"
	ClusterInfoThanosEnabledKey    = "thanosEnabled"
	ClusterInfoThanosOffsetKey     = "thanosOffset"
	ClusterInfoVersionKey          = "version"
)

The following constants are used as keys into the cluster info map data structure

Variables

This section is empty.

Functions

This section is empty.

Types

type ClusterInfo

type ClusterInfo struct {
	ID          string `json:"id"`
	Name        string `json:"name"`
	Profile     string `json:"profile"`
	Provider    string `json:"provider"`
	Account     string `json:"account"`
	Project     string `json:"project"`
	Region      string `json:"region"`
	Provisioner string `json:"provisioner"`
}

ClusterInfo holds attributes of Cluster from metrics pulled from Prometheus

func (*ClusterInfo) Clone

func (ci *ClusterInfo) Clone() *ClusterInfo

Clone creates a copy of ClusterInfo and returns it

type ClusterInfoProvider

type ClusterInfoProvider interface {
	// GetClusterInfo returns a string map containing the local/remote connected cluster info
	GetClusterInfo() map[string]string
}

ClusterInfoProvider is a contract which is capable of performing cluster info lookups.

type ClusterMap

type ClusterMap interface {
	// GetClusterIDs returns a slice containing all of the cluster identifiers.
	GetClusterIDs() []string

	// AsMap returns the cluster map as a standard go map
	AsMap() map[string]*ClusterInfo

	// InfoFor returns the ClusterInfo entry for the provided clusterID or nil if it
	// doesn't exist
	InfoFor(clusterID string) *ClusterInfo

	// NameFor returns the name of the cluster provided the clusterID.
	NameFor(clusterID string) string

	// NameIDFor returns an identifier in the format "<clusterName>/<clusterID>" if the cluster has an
	// assigned name. Otherwise, just the clusterID is returned.
	NameIDFor(clusterID string) string
}

Jump to

Keyboard shortcuts

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