v1alpha1

package
v0.10.2 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: 5 Imported by: 2

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the sharing v1alpha1 API group +kubebuilder:object:generate=true +groupName=sharing.liqo.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "sharing.liqo.io", Version: "v1alpha1"}

	// ResourceOfferGroupResource is group resource used by resourceOffer objects.
	ResourceOfferGroupResource = schema.GroupResource{Group: GroupVersion.Group, Resource: "resourceoffers"}

	// ResourceOfferGroupVersionResource is group resource version used by resourceOffer objects.
	ResourceOfferGroupVersionResource = schema.GroupVersionResource{Group: GroupVersion.Group,
		Version:  GroupVersion.Version,
		Resource: ResourceResourceOffer}

	// 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
)
View Source
var ResourceResourceOffer = "resourceoffers"

ResourceResourceOffer the name of the resourceoffers resources.

Functions

This section is empty.

Types

type IngressType added in v0.10.2

type IngressType struct {
	// IngressClassName indicates the name of the ingress class.
	IngressClassName string `json:"ingressClassName"`
	// Default indicates whether this ingress class is the default ingress class for Liqo.
	Default bool `json:"default,omitempty"`
}

IngressType defines the type of ingress offered by a resource offer.

func (*IngressType) DeepCopy added in v0.10.2

func (in *IngressType) DeepCopy() *IngressType

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

func (*IngressType) DeepCopyInto added in v0.10.2

func (in *IngressType) DeepCopyInto(out *IngressType)

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

type LoadBalancerType added in v0.10.2

type LoadBalancerType struct {
	// LoadBalancerClassName indicates the name of the load balancer class.
	LoadBalancerClassName string `json:"loadBalancerClassName"`
	// Default indicates whether this load balancer class is the default load balancer class for Liqo.
	Default bool `json:"default,omitempty"`
}

LoadBalancerType defines the type of load balancer offered by a resource offer.

func (*LoadBalancerType) DeepCopy added in v0.10.2

func (in *LoadBalancerType) DeepCopy() *LoadBalancerType

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

func (*LoadBalancerType) DeepCopyInto added in v0.10.2

func (in *LoadBalancerType) DeepCopyInto(out *LoadBalancerType)

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

type OfferPhase

type OfferPhase string

OfferPhase describes the phase of the ResourceOffer.

const (
	// ResourceOfferPending indicates a pending phase, an action is required.
	ResourceOfferPending OfferPhase = "Pending"
	// ResourceOfferManualActionRequired indicates that a manual action is required.
	ResourceOfferManualActionRequired OfferPhase = "ManualActionRequired"
	// ResourceOfferAccepted indicates an accepted offer.
	ResourceOfferAccepted OfferPhase = "Accepted"
	// ResourceOfferRefused indicates a refused offer.
	ResourceOfferRefused OfferPhase = "Refused"
)

type ResourceOffer

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

	Spec   ResourceOfferSpec   `json:"spec,omitempty"`
	Status ResourceOfferStatus `json:"status,omitempty"`
}

ResourceOffer is the Schema for the resourceOffers API. +kubebuilder:printcolumn:name="Status",type=string,JSONPath=`.status.phase` +kubebuilder:printcolumn:name="VirtualKubeletStatus",type=string,JSONPath=`.status.virtualKubeletStatus` +kubebuilder:printcolumn:name="Local",type=string,JSONPath=`.metadata.labels.liqo\.io/replication` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*ResourceOffer) DeepCopy

func (in *ResourceOffer) DeepCopy() *ResourceOffer

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

func (*ResourceOffer) DeepCopyInto

func (in *ResourceOffer) DeepCopyInto(out *ResourceOffer)

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

func (*ResourceOffer) DeepCopyObject

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

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

type ResourceOfferList

type ResourceOfferList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ResourceOffer `json:"items"`
}

ResourceOfferList contains a list of ResourceOffer.

func (*ResourceOfferList) DeepCopy

func (in *ResourceOfferList) DeepCopy() *ResourceOfferList

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

func (*ResourceOfferList) DeepCopyInto

func (in *ResourceOfferList) DeepCopyInto(out *ResourceOfferList)

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

func (*ResourceOfferList) DeepCopyObject

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

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

type ResourceOfferSpec

type ResourceOfferSpec struct {
	// ClusterID is the identifier of the cluster that is sending this ResourceOffer.
	// It is the uid of the first master node in you cluster.
	ClusterID string `json:"clusterId"`
	// NodeName is the exact name that the virtual node will have.
	// One and only one of NodeName and NodeNamePrefix must be set.
	NodeName string `json:"nodeName,omitempty"`
	// NodeNamePrefix is the prefix that the virtual node will have.
	// One and only one of NodeName and NodeNamePrefix must be set.
	NodeNamePrefix string `json:"nodeNamePrefix,omitempty"`
	// Images is the list of the images already stored in the cluster.
	Images []corev1.ContainerImage `json:"images,omitempty"`
	// ResourceQuota contains the quantity of resources made available by the cluster.
	ResourceQuota corev1.ResourceQuotaSpec `json:"resourceQuota,omitempty"`
	// Labels contains the label to be added to the virtual node.
	Labels map[string]string `json:"labels,omitempty"`
	// Prices contains the possible prices for every kind of resource (cpu, memory, image).
	Prices corev1.ResourceList `json:"prices,omitempty"`
	// WithdrawalTimestamp is set when a graceful deletion is requested by the user.
	WithdrawalTimestamp *metav1.Time `json:"withdrawalTimestamp,omitempty"`
	// StorageClasses contains the list of the storage classes offered by the cluster.
	StorageClasses []StorageType `json:"storageClasses,omitempty"`
	// IngressClasses contains the list of the ingress classes offered by the cluster.
	IngressClasses []IngressType `json:"ingressClasses,omitempty"`
	// LoadBalancerClasses contains the list of the load balancer classes offered by the cluster.
	LoadBalancerClasses []LoadBalancerType `json:"loadBalancerClasses,omitempty"`
}

ResourceOfferSpec defines the desired state of ResourceOffer.

func (*ResourceOfferSpec) DeepCopy

func (in *ResourceOfferSpec) DeepCopy() *ResourceOfferSpec

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

func (*ResourceOfferSpec) DeepCopyInto

func (in *ResourceOfferSpec) DeepCopyInto(out *ResourceOfferSpec)

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

type ResourceOfferStatus

type ResourceOfferStatus struct {
	// Phase is the status of this ResourceOffer.
	// When the offer is created it is checked by the operator, which sets this field to "Accepted" or "Refused" on tha base of cluster configuration.
	// If the ResourceOffer is accepted a virtual-kubelet for the foreign cluster will be created.
	// +kubebuilder:validation:Enum="Pending";"ManualActionRequired";"Accepted";"Refused"
	// +kubebuilder:default="Pending"
	Phase OfferPhase `json:"phase"`
	// VirtualKubeletStatus indicates if the virtual-kubelet for this ResourceOffer has been created or not.
	// +kubebuilder:validation:Enum="None";"Created";"Deleting"
	// +kubebuilder:default="None"
	VirtualKubeletStatus VirtualKubeletStatus `json:"virtualKubeletStatus,omitempty"`
}

ResourceOfferStatus defines the observed state of ResourceOffer.

func (*ResourceOfferStatus) DeepCopy

func (in *ResourceOfferStatus) DeepCopy() *ResourceOfferStatus

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

func (*ResourceOfferStatus) DeepCopyInto

func (in *ResourceOfferStatus) DeepCopyInto(out *ResourceOfferStatus)

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

type StorageType added in v0.3.2

type StorageType struct {
	// StorageClassName indicates the name of the storage class.
	StorageClassName string `json:"storageClassName"`
	// Default indicates whether this storage class is the default storage class for Liqo.
	Default bool `json:"default,omitempty"`
}

StorageType defines the type of storage offered by a resource offer.

func (*StorageType) DeepCopy added in v0.3.2

func (in *StorageType) DeepCopy() *StorageType

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

func (*StorageType) DeepCopyInto added in v0.3.2

func (in *StorageType) DeepCopyInto(out *StorageType)

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

type VirtualKubeletStatus added in v0.3.0

type VirtualKubeletStatus string

VirtualKubeletStatus indicates the observed status of the VirtualKubelet Deployment.

const (
	// VirtualKubeletStatusUnknown indicates that the VirtualKubelet Deployment status is unknown.
	VirtualKubeletStatusUnknown VirtualKubeletStatus = ""
	// VirtualKubeletStatusNone indicates that there is no VirtualKubelet Deployment.
	VirtualKubeletStatusNone VirtualKubeletStatus = "None"
	// VirtualKubeletStatusCreated indicates that the VirtualKubelet Deployment has been created.
	VirtualKubeletStatusCreated VirtualKubeletStatus = "Created"
	// VirtualKubeletStatusDeleting indicates that the VirtualKubelet Deployment is deleting.
	VirtualKubeletStatusDeleting VirtualKubeletStatus = "Deleting"
)

Jump to

Keyboard shortcuts

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