discovery

package
v0.0.0-...-8e80975 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2024 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ALLOWED_COMMANDS map[string]string

	USAGE_ANNOTATION            string
	COMPOSITION_ANNOTATION      string
	ANNOTATION_REL_ANNOTATION   string
	LABEL_REL_ANNOTATION        string
	SPECPROPERTY_REL_ANNOTATION string

	TotalClusterCompositions ClusterCompositions
	TotalClusterConnections  []Connection

	KindPluralMap map[string]string

	REPLICA_SET     string
	DEPLOYMENT      string
	POD             string
	SERVICE_ACCOUNT string
	CONFIG_MAP      string
	SERVICE         string
	SECRET          string
	PVCLAIM         string
	PV              string
	ETCD_CLUSTER    string
	INGRESS         string
	STATEFULSET     string
	DAEMONSET       string
	RC              string
	PDB             string
	NAMESPACE       string

	// Set to inputs given to connections
	OrigKind, OrigName, OrigNamespace string
	OrigLevel                         int
	OutputFormat                      string
	RelsToIgnore                      string

	NamespaceToSearch      string
	OriginalInputNamespace string
	OriginalInputKind      string
	OriginalInputInstance  string
)

Functions

func BuildCompositionTree

func BuildCompositionTree(namespace string)

func BuildConfig

func BuildConfig(kubeconfigpath string) (*rest.Config, error)

func BuildConfig1

func BuildConfig1() (*rest.Config, error)

func CheckExistence

func CheckExistence(kind, instance, namespace string) bool

Connection utility functions

func FetchGVKs

func FetchGVKs(namespace string)

func GetCAdvisorMetrics

func GetCAdvisorMetrics(nodeName string) string

func GetImplementationDetails

func GetImplementationDetails(customResourceKind string) (string, error)

func GetKubeletMetrics

func GetKubeletMetrics(nodeName string) string

func GetOpenAPISpec

func GetOpenAPISpec(customResourceKind string) (string, error)

func GetOpenAPISpec_prev

func GetOpenAPISpec_prev(customResourceKind string) string

func GetUsageDetails

func GetUsageDetails(customResourceKind string, namespace string) string

func GetUsageDetails1

func GetUsageDetails1(customResourceKind string) (string, error)

func PrintRelatives

func PrintRelatives(format string, connections []Connection)

func ReadKinds

func ReadKinds(inputKind string) error

Types

type ClusterCompositions

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

Used to hold entire composition of all the Kinds

func (*ClusterCompositions) GetCompositions

func (cp *ClusterCompositions) GetCompositions(resourceKind, resourceName, namespace string) []Composition

func (*ClusterCompositions) GetCompositionsString

func (cp *ClusterCompositions) GetCompositionsString(resourceKind, resourceName, namespace string) string

func (*ClusterCompositions) PrintCompositions

func (cp *ClusterCompositions) PrintCompositions()

func (*ClusterCompositions) QueryResource

func (cp *ClusterCompositions) QueryResource(resourceKind, resourceName, namespace string) []byte

type Composition

type Composition struct {
	Level     int
	Kind      string
	Name      string
	Namespace string
	Status    string
	Children  []Composition
}

Used for Final output

type CompositionTreeNode

type CompositionTreeNode struct {
	Level     int
	ChildKind string
	Children  []MetaDataAndOwnerReferences
}

Used for intermediate storage -- probably can be combined/merged with type Composition

type Compositions

type Compositions struct {
	Kind            string
	Name            string
	Namespace       string
	Status          string
	CompositionTree *[]CompositionTreeNode
}

Used for intermediate storage -- probably can be merged with Composition

type Connection

type Connection struct {
	Level           int
	Kind            string
	Name            string
	Namespace       string
	Owner           string
	RelationType    string
	RelationDetails string
	OwnerKind       string
	OwnerName       string
	Peer            *Connection
}

func AppendConnections

func AppendConnections(allConnections []Connection, connection Connection) []Connection

func GetRelatives

func GetRelatives(visited []Connection, level int, kind, instance, origkind, originstance, namespace, relType string) []Connection

type ConnectionOutput

type ConnectionOutput struct {
	Level           int
	Kind            string
	Name            string
	Namespace       string
	PeerKind        string
	PeerName        string
	PeerNamespace   string
	RelationType    string
	RelationDetails string
}

type KubeObjectCacheEntry

type KubeObjectCacheEntry struct {
	Namespace string
	Kind      string
	Name      string
	GVK       schema.GroupVersionResource
}

type MetaDataAndOwnerReferences

type MetaDataAndOwnerReferences struct {
	MetaDataName             string
	Status                   string
	Namespace                string
	OwnerReferenceName       string
	OwnerReferenceKind       string
	OwnerReferenceAPIVersion string
}

Used to store information queried from the main API server

Jump to

Keyboard shortcuts

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