v1beta1

package
v2.3.2 Latest Latest
Warning

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

Go to latest
Published: Apr 20, 2021 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the action v1beta1 API group +kubebuilder:object:generate=true +groupName=internal.open-cluster-management.io

Index

Constants

View Source
const (
	ReasonManagedClusterInfoSynced       string = "ManagedClusterInfoSynced"
	ReasonManagedClusterInfoSyncedFailed string = "ReasonManagedClusterInfoSyncedFailed"
)
View Source
const (
	// ManagedClusterInfoSynced means the info on managed cluster is synced.
	ManagedClusterInfoSynced string = "ManagedClusterInfoSynced"
)

Variables

View Source
var (
	GroupName = "internal.open-cluster-management.io"

	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1beta1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type CloudVendorType

type CloudVendorType string

CloudVendorType describe the cloud provider for the cluster

const (
	// CloudVendorIBM IBM
	CloudVendorIBM CloudVendorType = "IBM"
	// CloudVendorIBMZ IBM s360x
	CloudVendorIBMZ CloudVendorType = "IBMZPlatform"
	// CloudVendorIBMP IBM Power
	CloudVendorIBMP CloudVendorType = "IBMPowerPlatform"
	// CloudVendorAWS Amazon
	CloudVendorAWS CloudVendorType = "Amazon"
	// CloudVendorAzure Azure
	CloudVendorAzure CloudVendorType = "Azure"
	// CloudVendorGoogle Google
	CloudVendorGoogle CloudVendorType = "Google"
	// CloudVendorVSphere vSphere
	CloudVendorVSphere CloudVendorType = "VSphere"
	// CloudVendorOpenStack OpenStack
	CloudVendorOpenStack CloudVendorType = "OpenStack"
	// CloudVendorOther other (unable to auto detect)
	CloudVendorOther CloudVendorType = "Other"
)

type ClusterInfoSpec

type ClusterInfoSpec struct {
	// LoggingCA is the ca data for logging server to authorize apiserver
	// +optional
	LoggingCA []byte `json:"loggingCA,omitempty"`

	// MasterEndpoint shows the apiserver endpoint of managed cluster
	// +optional
	MasterEndpoint string `json:"masterEndpoint,omitempty"`
}

ClusterInfoSpec is information about the current status of a managed cluster updated by ManagedClusterInfo controller periodically.

func (*ClusterInfoSpec) DeepCopy

func (in *ClusterInfoSpec) DeepCopy() *ClusterInfoSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfoSpec.

func (*ClusterInfoSpec) DeepCopyInto

func (in *ClusterInfoSpec) DeepCopyInto(out *ClusterInfoSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterInfoStatus

type ClusterInfoStatus struct {
	// Conditions contains condition information for a managed cluster
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Version is the kube version of managed cluster.
	// +optional
	Version string `json:"version,omitempty"`

	// KubeVendor describes the kubernetes provider of the managed cluster.
	// +optional
	KubeVendor KubeVendorType `json:"kubeVendor,omitempty"`

	// CloudVendor describes the cloud provider for the managed cluster.
	// +optional
	CloudVendor CloudVendorType `json:"cloudVendor,omitempty"`

	// ClusterID is the identifier of managed cluster
	// +optional
	ClusterID string `json:"clusterID,omitempty"`

	// DistributionInfo is the information about distribution of managed cluster
	// +optional
	DistributionInfo DistributionInfo `json:"distributionInfo,omitempty"`

	// ConsoleURL shows the url of console in managed cluster
	// +optional
	ConsoleURL string `json:"consoleURL,omitempty"`

	// NodeList shows a list of the status of nodes
	// +optional
	NodeList []NodeStatus `json:"nodeList,omitempty"`

	// LoggingEndpoint shows the endpoint to connect to logging server of managed cluster
	// +optional
	LoggingEndpoint corev1.EndpointAddress `json:"loggingEndpoint,omitempty"`

	// LoggingPort shows the port to connect to logging server of managed cluster
	// +optional
	LoggingPort corev1.EndpointPort `json:"loggingPort,omitempty"`
}

ClusterInfoStatus is the information about managed cluster

func (*ClusterInfoStatus) DeepCopy

func (in *ClusterInfoStatus) DeepCopy() *ClusterInfoStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfoStatus.

func (*ClusterInfoStatus) DeepCopyInto

func (in *ClusterInfoStatus) DeepCopyInto(out *ClusterInfoStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DistributionInfo

type DistributionInfo struct {
	// Type is the distribution type of managed cluster, is OCP currently
	// +unionDiscriminator
	Type DistributionType `json:"type,omitempty"`

	// OCP is the distribution information of OCP managed cluster, is matched when the Type is OCP.
	OCP OCPDistributionInfo `json:"ocp,omitempty"`
}

DistributionInfo defines the information about distribution of managed cluster +union

func (*DistributionInfo) DeepCopy

func (in *DistributionInfo) DeepCopy() *DistributionInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DistributionInfo.

func (*DistributionInfo) DeepCopyInto

func (in *DistributionInfo) DeepCopyInto(out *DistributionInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DistributionType

type DistributionType string

DistributionType is type of distribution

const (
	DistributionTypeOCP     DistributionType = "OCP"
	DistributionTypeUnknown DistributionType = "Unknown"
)

Supported distribution type

type KubeVendorType

type KubeVendorType string

KubeVendorType describe the kubernetes provider of the cluster

const (
	// KubeVendorOpenShift OpenShift
	KubeVendorOpenShift KubeVendorType = "OpenShift"
	// KubeVendorAKS Azure Kuberentes Service
	KubeVendorAKS KubeVendorType = "AKS"
	// KubeVendorEKS Elastic Kubernetes Service
	KubeVendorEKS KubeVendorType = "EKS"
	// KubeVendorGKE Google Kubernetes Engine
	KubeVendorGKE KubeVendorType = "GKE"
	// KubeVendorICP IBM Cloud Private
	KubeVendorICP KubeVendorType = "ICP"
	// KubeVendorIKS IBM Kubernetes Service
	KubeVendorIKS KubeVendorType = "IKS"
	// KubeVendorOSD OpenShiftDedicated
	KubeVendorOSD KubeVendorType = "OpenShiftDedicated"
	// KubeVendorOther other (unable to auto detect)
	KubeVendorOther KubeVendorType = "Other"
)

type ManagedClusterInfo

type ManagedClusterInfo struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec defines the information of the Cluster.
	// +optional
	Spec ClusterInfoSpec `json:"spec,omitempty"`

	// Status represents the desired status of the Cluster
	// +optional
	Status ClusterInfoStatus `json:"status,omitempty"`
}

ManagedClusterInfo represents the information of managed cluster that acm hub needs to know

func (*ManagedClusterInfo) DeepCopy

func (in *ManagedClusterInfo) DeepCopy() *ManagedClusterInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterInfo.

func (*ManagedClusterInfo) DeepCopyInto

func (in *ManagedClusterInfo) DeepCopyInto(out *ManagedClusterInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedClusterInfo) DeepCopyObject

func (in *ManagedClusterInfo) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ManagedClusterInfoList

type ManagedClusterInfoList struct {
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// List of ManagedClusterInfo objects.
	Items []ManagedClusterInfo `json:"items"`
}

ManagedClusterInfoList is a list of ManagedClusterInfo objects

func (*ManagedClusterInfoList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterInfoList.

func (*ManagedClusterInfoList) DeepCopyInto

func (in *ManagedClusterInfoList) DeepCopyInto(out *ManagedClusterInfoList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedClusterInfoList) DeepCopyObject

func (in *ManagedClusterInfoList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodeCondition

type NodeCondition struct {
	// Type of node condition.
	Type corev1.NodeConditionType `json:"type,omitempty"`
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status,omitempty"`
}

func (*NodeCondition) DeepCopy

func (in *NodeCondition) DeepCopy() *NodeCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeCondition.

func (*NodeCondition) DeepCopyInto

func (in *NodeCondition) DeepCopyInto(out *NodeCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeStatus

type NodeStatus struct {
	// Name of node
	// +optional
	Name string `json:"name,omitempty"`

	// Labels of node.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Capacity represents the total resources of a node. only includes CPU and memory.
	// +optional
	Capacity ResourceList `json:"capacity,omitempty"`

	// Conditions is an array of current node conditions. only includes NodeReady.
	// +optional
	Conditions []NodeCondition `json:"conditions,omitempty"`
}

NodeStatus presents the name, labels and conditions of node

func (*NodeStatus) DeepCopy

func (in *NodeStatus) DeepCopy() *NodeStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeStatus.

func (*NodeStatus) DeepCopyInto

func (in *NodeStatus) DeepCopyInto(out *NodeStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OCPDistributionInfo

type OCPDistributionInfo struct {
	// Version is the distribution version of OCP
	Version string `json:"version,omitempty"`
	// availableUpdates contains the list of update versions that are appropriate for the manage cluster.
	AvailableUpdates []string `json:"availableUpdates,omitempty"`
	// Desiredversion represents the desired version of the ocp cluster
	DesiredVersion string `json:"desiredVersion,omitempty"`
	// UpgradeFailed indicate whether upgrade of the manage cluster is failed
	UpgradeFailed bool `json:"upgradeFailed,omitempty"`
}

OCPDistributionInfo defines the distribution information of OCP managed cluster

func (*OCPDistributionInfo) DeepCopy

func (in *OCPDistributionInfo) DeepCopy() *OCPDistributionInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCPDistributionInfo.

func (*OCPDistributionInfo) DeepCopyInto

func (in *OCPDistributionInfo) DeepCopyInto(out *OCPDistributionInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceList

type ResourceList map[ResourceName]resource.Quantity

ResourceList defines a map for the quantity of different resources, the definition matches the ResourceList defined in k8s.io/api/core/v1

func (ResourceList) DeepCopy

func (in ResourceList) DeepCopy() ResourceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceList.

func (ResourceList) DeepCopyInto

func (in ResourceList) DeepCopyInto(out *ResourceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceName

type ResourceName string

ResourceName is the name identifying various resources in a ResourceList.

const (
	// CPU, in cores. (500m = .5 cores)
	ResourceCPU ResourceName = "cpu"
	// Memory, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024)
	ResourceMemory ResourceName = "memory"
)

Jump to

Keyboard shortcuts

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