cluster

package
v0.0.0-...-7c77b90 Latest Latest
Warning

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

Go to latest
Published: May 27, 2022 License: Apache-2.0 Imports: 12 Imported by: 3

Documentation

Index

Constants

View Source
const CONTEXT_CLUSTER_APP = "network-intents"
View Source
const CONTEXT_CLUSTER_RESOURCE = "network-intents"
View Source
const SEPARATOR = "+"

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	Metadata mtypes.Metadata `json:"metadata"`
}

type ClusterClient

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

ClusterClient implements the Manager It will also be used to maintain some localized state

func NewClusterClient

func NewClusterClient() *ClusterClient

NewClusterClient returns an instance of the ClusterClient which implements the Manager

func (*ClusterClient) CreateCluster

func (v *ClusterClient) CreateCluster(provider string, p Cluster, q ClusterContent) (Cluster, error)

CreateCluster - create a new Cluster for a cluster-provider

func (*ClusterClient) CreateClusterKvPairs

func (v *ClusterClient) CreateClusterKvPairs(provider string, cluster string, p ClusterKvPairs, exists bool) (ClusterKvPairs, error)

CreateClusterKvPairs - Create a New Cluster KV pairs document

func (*ClusterClient) CreateClusterLabel

func (v *ClusterClient) CreateClusterLabel(provider string, cluster string, p ClusterLabel, exists bool) (ClusterLabel, error)

CreateClusterLabel - create a new Cluster Label mongo document for a cluster-provider/cluster

func (*ClusterClient) CreateClusterProvider

func (v *ClusterClient) CreateClusterProvider(p ClusterProvider, exists bool) (ClusterProvider, error)

CreateClusterProvider - create a new Cluster Provider

func (*ClusterClient) DeleteCluster

func (v *ClusterClient) DeleteCluster(provider, name string) error

DeleteCluster the Cluster from database

func (*ClusterClient) DeleteClusterKvPairs

func (v *ClusterClient) DeleteClusterKvPairs(provider, cluster, kvpair string) error

DeleteClusterKvPairs the ClusterKvPairs from database

func (*ClusterClient) DeleteClusterLabel

func (v *ClusterClient) DeleteClusterLabel(provider, cluster, label string) error

DeleteClusterLabel ... Delete the Cluster Label from database

func (*ClusterClient) DeleteClusterProvider

func (v *ClusterClient) DeleteClusterProvider(name string) error

DeleteClusterProvider the ClusterProvider from database

func (*ClusterClient) GetAllClusterKvPairs

func (v *ClusterClient) GetAllClusterKvPairs(provider, cluster string) ([]ClusterKvPairs, error)

GetAllClusterKvPairs returns the Cluster Kv Pairs for corresponding provider and cluster

func (*ClusterClient) GetAllClustersAndLabels

func (v *ClusterClient) GetAllClustersAndLabels(provider string) ([]ClusterWithLabels, error)

GetAllClustersAndLabels returns all the the clusters and their labels

func (*ClusterClient) GetCluster

func (v *ClusterClient) GetCluster(provider, name string) (Cluster, error)

GetCluster returns the Cluster for corresponding provider and name

func (*ClusterClient) GetClusterContent

func (v *ClusterClient) GetClusterContent(provider, name string) (ClusterContent, error)

GetClusterContent returns the ClusterContent for corresponding provider and name

func (*ClusterClient) GetClusterKvPairs

func (v *ClusterClient) GetClusterKvPairs(provider, cluster, kvpair string) (ClusterKvPairs, error)

GetClusterKvPairs returns the Cluster KeyValue pair for corresponding provider, cluster and KV pair name

func (*ClusterClient) GetClusterKvPairsValue

func (v *ClusterClient) GetClusterKvPairsValue(provider, cluster, kvpair, kvkey string) (interface{}, error)

GetClusterKvPairsValue returns the value of the key from the corresponding provider, cluster and KV pair name

func (*ClusterClient) GetClusterLabel

func (v *ClusterClient) GetClusterLabel(provider, cluster, label string) (ClusterLabel, error)

GetClusterLabel returns the Cluster for corresponding provider, cluster and label

func (*ClusterClient) GetClusterLabels

func (v *ClusterClient) GetClusterLabels(provider, cluster string) ([]ClusterLabel, error)

GetClusterLabels returns the Cluster Labels for corresponding provider and cluster

func (*ClusterClient) GetClusterProvider

func (v *ClusterClient) GetClusterProvider(name string) (ClusterProvider, error)

GetClusterProvider returns the ClusterProvider for corresponding name

func (*ClusterClient) GetClusterProviders

func (v *ClusterClient) GetClusterProviders() ([]ClusterProvider, error)

GetClusterProviderList returns all of the ClusterProvider for corresponding name

func (*ClusterClient) GetClusterState

func (v *ClusterClient) GetClusterState(provider, name string) (state.StateInfo, error)

GetClusterState returns the StateInfo structure for corresponding cluster provider and cluster

func (*ClusterClient) GetClusters

func (v *ClusterClient) GetClusters(provider string) ([]Cluster, error)

GetClusters returns all the Clusters for corresponding provider

func (*ClusterClient) GetClustersWithLabel

func (v *ClusterClient) GetClustersWithLabel(provider, label string) ([]string, error)

GetClustersWithLabel returns all the Clusters with Labels for provider Support Query like /cluster-providers/{Provider}/clusters?label={label}

type ClusterContent

type ClusterContent struct {
	Kubeconfig string `json:"kubeconfig"`
}

type ClusterKey

type ClusterKey struct {
	ClusterProviderName string `json:"provider"`
	ClusterName         string `json:"cluster"`
}

ClusterKey is the key structure that is used in the database

type ClusterKvPairs

type ClusterKvPairs struct {
	Metadata mtypes.Metadata `json:"metadata"`
	Spec     ClusterKvSpec   `json:"spec"`
}

type ClusterKvPairsKey

type ClusterKvPairsKey struct {
	ClusterProviderName string `json:"provider"`
	ClusterName         string `json:"cluster"`
	ClusterKvPairsName  string `json:"kvname"`
}

ClusterKvPairsKey is the key structure that is used in the database

type ClusterKvSpec

type ClusterKvSpec struct {
	Kv []map[string]interface{} `json:"kv"`
}

type ClusterLabel

type ClusterLabel struct {
	LabelName string `json:"label-name"`
}

type ClusterLabelKey

type ClusterLabelKey struct {
	ClusterProviderName string `json:"provider"`
	ClusterName         string `json:"cluster"`
	ClusterLabelName    string `json:"label"`
}

ClusterLabelKey is the key structure that is used in the database

type ClusterManager

type ClusterManager interface {
	CreateClusterProvider(pr ClusterProvider, exists bool) (ClusterProvider, error)
	GetClusterProvider(name string) (ClusterProvider, error)
	GetClusterProviders() ([]ClusterProvider, error)
	DeleteClusterProvider(name string) error
	CreateCluster(provider string, pr Cluster, qr ClusterContent) (Cluster, error)
	GetCluster(provider, name string) (Cluster, error)
	GetClusterContent(provider, name string) (ClusterContent, error)
	GetClusterState(provider, name string) (state.StateInfo, error)
	GetClusters(provider string) ([]Cluster, error)
	GetClustersWithLabel(provider, label string) ([]string, error)
	GetAllClustersAndLabels(provider string) ([]ClusterWithLabels, error)
	DeleteCluster(provider, name string) error
	CreateClusterLabel(provider, cluster string, pr ClusterLabel, exists bool) (ClusterLabel, error)
	GetClusterLabel(provider, cluster, label string) (ClusterLabel, error)
	GetClusterLabels(provider, cluster string) ([]ClusterLabel, error)
	DeleteClusterLabel(provider, cluster, label string) error
	CreateClusterKvPairs(provider, cluster string, pr ClusterKvPairs, exists bool) (ClusterKvPairs, error)
	GetClusterKvPairs(provider, cluster, kvpair string) (ClusterKvPairs, error)
	GetClusterKvPairsValue(provider, cluster, kvpair, kvkey string) (interface{}, error)
	GetAllClusterKvPairs(provider, cluster string) ([]ClusterKvPairs, error)
	DeleteClusterKvPairs(provider, cluster, kvpair string) error
}

ClusterManager is an interface exposes the Cluster functionality

type ClusterProvider

type ClusterProvider struct {
	Metadata mtypes.Metadata `json:"metadata"`
}

ClusterProvider contains the parameters needed for ClusterProviders

type ClusterProviderKey

type ClusterProviderKey struct {
	ClusterProviderName string `json:"provider"`
}

ClusterProviderKey is the key structure that is used in the database

type ClusterWithLabels

type ClusterWithLabels struct {
	Metadata mtypes.Metadata `json:"metadata"`
	Labels   []ClusterLabel  `json:"labels"`
}

type LabelKey

type LabelKey struct {
	ClusterProviderName string `json:"provider"`
	ClusterLabelName    string `json:"label"`
}

LabelKey is the key structure that is used in the database

Jump to

Keyboard shortcuts

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