Documentation ¶
Overview ¶
+kubebuilder:object:generate=true +k8s:deepcopy-gen=package,register
Index ¶
Constants ¶
View Source
const ( // system defined common KuidOwnerGroupKey = "be.kuid.dev/owner-group" KuidOwnerVersionKey = "be.kuid.dev/owner-version" KuidOwnerKindKey = "be.kuid.dev/owner-kind" KuidOwnerNameKey = "be.kuid.dev/owner-name" KuidOwnerNamespaceKey = "be.kuid.dev/owner-namespace" KuidClaimNameKey = "be.kuid.dev/claim-name" KuidClaimTypeKey = "be.kuid.dev/claim-type" // system defined ipam KuidIPAMIPPrefixTypeKey = "ipam.be.kuid.dev/ipprefix-type" KuidIPAMClaimSummaryTypeKey = "ipam.be.kuid.dev/claim-summary-type" KuidIPAMddressFamilyKey = "ipam.be.kuid.dev/address-family" KuidIPAMSubnetKey = "ipam.be.kuid.dev/subnet" // this is the subnet in prefix annotation used for GW selection KuidIPAMDefaultGatewayKey = "ipam.be.kuid.dev/default-gateway" KuidIPAMIndexKey = "ipam.be.kuid.dev/index" // DNS used keys KuidINVNetworkKey = "inv.kuid.dev/network" KuidINVEndpointKey = "inv.kuid.dev/endpoint-name" KuidINVHeadlessKey = "inv.kuid.dev/headless-name" KuidINVAliasKey = "inv.kuid.dev/alias-name" KuidINVPortNS = "port.kuid.dev" // Inventory KuidINVRegionKey = "infra.be.kuid.dev/region" KuidINVAvailabilityZoneKey = "infra.be.kuid.dev/availability-zone" KuidINVSiteKey = "infra.be.kuid.dev/site" KuidINVLocationKey = "infra.be.kuid.dev/location" KuidINVRackKey = "infra.be.kuid.dev/rack" KuidINVNodeKey = "infra.be.kuid.dev/node" KuidINVLinkKey = "infra.be.kuid.dev/link" )
View Source
const ( IndexReservedMinName = "rangeReservedMin" IndexReservedMaxName = "rangeReservedMax" )
Variables ¶
View Source
var BackendIPAMSystemKeys = sets.New[string](KuidOwnerGroupKey, KuidIPAMIPPrefixTypeKey, KuidIPAMClaimSummaryTypeKey, KuidIPAMddressFamilyKey, KuidIPAMSubnetKey, KuidIPAMDefaultGatewayKey, KuidIPAMIndexKey, )
View Source
var BackendSystemClaimKeys = sets.New[string](KuidOwnerGroupKey, KuidClaimTypeKey, )
View Source
var BackendSystemKeys = sets.New[string](KuidOwnerGroupKey, KuidOwnerVersionKey, KuidOwnerKindKey, KuidOwnerNameKey, KuidOwnerNamespaceKey, KuidClaimNameKey, )
Functions ¶
This section is empty.
Types ¶
type ClaimObject ¶
type ClaimObject interface { Object GetIndex() string // implement GetSelector() *metav1.LabelSelector // implement GetOwnerSelector() (labels.Selector, error) GetClaimType() ClaimType GetLabelSelector() (labels.Selector, error) GetClaimLabels() labels.Set ValidateOwner(labels labels.Set) error GetStaticID() *uint64 GetStaticTreeID(t string) tree.ID GetClaimID(t string, id uint64) tree.ID GetRange() *string GetRangeID(t string) (tree.Range, error) GetTable(t string, to, from uint64) table.Table SetStatusRange(*string) SetStatusID(*uint64) GetStatusID() *uint64 ValidateSyntax(s string) field.ErrorList GetClaimRequest() string GetClaimResponse() string }
type ClaimType ¶
type ClaimType string
+k8s:openapi-gen=true ClaimType define the type of the claim
func GetClaimTypeFromString ¶
type EntryObject ¶
type EntryObject interface { Object GetIndex() string GetClaimType() ClaimType GetOwnerGVK() schema.GroupVersionKind GetOwnerNSN() types.NamespacedName SetSpec(x any) GetSpec() any GetSpecID() string }
type IndexObject ¶
type IndexObject interface { Object GetTree() gtree.GTree GetType() string GetMinID() *uint64 GetMaxID() *uint64 GetMinClaim() ClaimObject GetMaxClaim() ClaimObject ValidateSyntax() field.ErrorList }
type Object ¶
type Object interface { client.Object GetNamespacedName() types.NamespacedName GetKey() store.Key GetOwnerReference() *commonv1alpha1.OwnerReference GetObjectMeta() *metav1.ObjectMeta GetCondition(t conditionv1alpha1.ConditionType) conditionv1alpha1.Condition SetConditions(c ...conditionv1alpha1.Condition) CalculateHash() ([sha1.Size]byte, error) }
type ObjectList ¶
type ObjectList interface { GetItems() []Object client.ObjectList }
Directories ¶
Path | Synopsis |
---|---|
as defines the as api
|
as defines the as api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
esi defines the esi api
|
esi defines the esi api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
extcomm defines the extcomm api
|
extcomm defines the extcomm api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
genid defines the genid api
|
genid defines the genid api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
infra defines the infra api
|
infra defines the infra api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
ipam defines the ipam api
|
ipam defines the ipam api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
vlan defines the vlan api
|
vlan defines the vlan api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
vxlan defines the vxlan api
|
vxlan defines the vxlan api |
v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
|
Package v1alpha1 is the v1alpha1 version of the API. |
Click to show internal directories.
Click to hide internal directories.