v1

package
v0.0.0-...-1d80bfb Latest Latest
Warning

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

Go to latest
Published: Aug 25, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1 contains API Schema definitions for the quota v1 API group +kubebuilder:object:generate=true +groupName=quota.kubeworkz.io

Index

Constants

View Source
const GlobalNodesPool = "global"

GlobalNodesPool means

Variables

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

	// 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 KubeResourceQuota

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

	Spec   KubeResourceQuotaSpec   `json:"spec,omitempty"`
	Status KubeResourceQuotaStatus `json:"status,omitempty"`
}

KubeResourceQuota is the Schema for the kuberesourcequota API

func (*KubeResourceQuota) DeepCopy

func (in *KubeResourceQuota) DeepCopy() *KubeResourceQuota

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

func (*KubeResourceQuota) DeepCopyInto

func (in *KubeResourceQuota) DeepCopyInto(out *KubeResourceQuota)

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

func (*KubeResourceQuota) DeepCopyObject

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

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

type KubeResourceQuotaList

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

KubeResourceQuotaList contains a list of KubeResourceQuota

func (*KubeResourceQuotaList) DeepCopy

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

func (*KubeResourceQuotaList) DeepCopyInto

func (in *KubeResourceQuotaList) DeepCopyInto(out *KubeResourceQuotaList)

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

func (*KubeResourceQuotaList) DeepCopyObject

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

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

type KubeResourceQuotaSpec

type KubeResourceQuotaSpec struct {
	// Hard is the set of desired hard limits for each named resource.
	// Its empty when TargetObj is NodesPoolObj
	Hard v1.ResourceList `json:"hard,omitempty"`

	// ParentQuota point to upper quota, its empty if current is top level
	// meanwhile PhysicalLimit will be used as limit condition
	// +optional
	ParentQuota string `json:"parentQuota,omitempty"`

	// Target point to the subject object quota to effect
	Target TargetObj `json:"target,omitempty"`
}

KubeResourceQuotaSpec defines the desired state of KubeResourceQuota

func (*KubeResourceQuotaSpec) DeepCopy

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

func (*KubeResourceQuotaSpec) DeepCopyInto

func (in *KubeResourceQuotaSpec) DeepCopyInto(out *KubeResourceQuotaSpec)

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

type KubeResourceQuotaStatus

type KubeResourceQuotaStatus struct {
	// Hard is the set of enforced hard limits for each named resource.
	// Limit always equals to request when TargetObj is NodesPoolObj
	// +optional
	Hard v1.ResourceList `json:"hard,omitempty"`
	// Used is the current observed total usage of the resource in the namespace
	// +optional
	Used v1.ResourceList `json:"used,omitempty"`

	// SubResourceQuotas contains child resource quotas of kube resource quota.
	// {name}.{namespace}.quota means resource quota
	// {name}.quota means kube resource quota
	// +optional
	SubResourceQuotas []string `json:"subResourceQuotas,omitempty"`
}

KubeResourceQuotaStatus defines the observed state of KubeResourceQuota

func (*KubeResourceQuotaStatus) DeepCopy

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

func (*KubeResourceQuotaStatus) DeepCopyInto

func (in *KubeResourceQuotaStatus) DeepCopyInto(out *KubeResourceQuotaStatus)

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

type TargetKind

type TargetKind string
const (
	NodesPoolObj TargetKind = "NodesPool"
	TenantObj    TargetKind = "Tenant"
	ProjectObj   TargetKind = "Project"
)

type TargetObj

type TargetObj struct {
	Name string     `json:"name,omitempty"`
	Kind TargetKind `json:"kind,omitempty"`
}

func (*TargetObj) DeepCopy

func (in *TargetObj) DeepCopy() *TargetObj

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

func (*TargetObj) DeepCopyInto

func (in *TargetObj) DeepCopyInto(out *TargetObj)

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

Jump to

Keyboard shortcuts

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