v1alpha1

package
v1.0.0-alpha.5 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2023 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	StatusFailed         = "Failure"
	StatusReconciliation = "Reconciliation"
	// Slice claim
	StatusPending   = "Pending"
	StatusRequested = "Requested"
	StatusEmployed  = "Employed"
	// Slice
	StatusBound       = "Bound" // Also used for slice claim
	StatusReserved    = "Reserved"
	StatusProvisioned = "Provisioned"
	// Subnamespace
	StatusPartitioned         = "Partitioned"
	StatusSubnamespaceCreated = "Created"
	StatusQuotaSet            = "Set"
	// Tenant
	StatusCoreNamespaceCreated = "Created"
	StatusEstablished          = "Established" // Also used for subnamespace
	// Tenant resource quota
	StatusQuotaCreated = "Created"
	StatusApplied      = "Applied"
	// Node contribution
	StatusAccessed = "Node Accessed"
	StatusReady    = "Ready"
)

Values of Status.State

View Source
const (
	DynamicStr                        = "Dynamic"
	TenantOwnerClusterRoleName        = "edgenet:tenant-owner"
	TenantAdminClusterRoleName        = "edgenet:tenant-admin"
	TenantCollaboratorClusterRoleName = "edgenet:tenant-collaborator"
)

Values of string constants subject to repetitive use

Variables

View Source
var (
	// SchemeBuilder initializes a scheme builder
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: core.GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Address

type Address struct {
	// Street name.
	Street string `json:"street"`
	// ZIP code.
	ZIP string `json:"zip"`
	// City name.
	City string `json:"city"`
	// Region name.
	Region string `json:"region"`
	// County name.
	Country string `json:"country"`
}

Address describes postal address of tenant

func (*Address) DeepCopy

func (in *Address) DeepCopy() *Address

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

func (*Address) DeepCopyInto

func (in *Address) DeepCopyInto(out *Address)

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

type Contact

type Contact struct {
	// First name.
	FirstName string `json:"firstname"`
	// Last name.
	LastName string `json:"lastname"`
	// Email address of the contact.
	Email string `json:"email"`
	// Phone number of the contact.
	Phone string `json:"phone"`
}

Contact contains handle, personal information, and role

func (*Contact) DeepCopy

func (in *Contact) DeepCopy() *Contact

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

func (*Contact) DeepCopyInto

func (in *Contact) DeepCopyInto(out *Contact)

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

type Limitations

type Limitations struct {
	// Kind of the limitation.
	Kind string `json:"kind"`
	// Identifier of the limitator.
	Indentifier string `json:"identifier"`
}

Limitations describes which tenants and namespaces can make use of node

func (*Limitations) DeepCopy

func (in *Limitations) DeepCopy() *Limitations

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

func (*Limitations) DeepCopyInto

func (in *Limitations) DeepCopyInto(out *Limitations)

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

type NodeContribution

type NodeContribution struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the nodecontribution resource spec
	Spec NodeContributionSpec `json:"spec"`
	// Status is the nodecontribution resource status
	Status NodeContributionStatus `json:"status,omitempty"`
}

NodeContribution describes a NodeContribution resource

func (*NodeContribution) DeepCopy

func (in *NodeContribution) DeepCopy() *NodeContribution

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

func (*NodeContribution) DeepCopyInto

func (in *NodeContribution) DeepCopyInto(out *NodeContribution)

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

func (*NodeContribution) DeepCopyObject

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

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

func (NodeContribution) MakeOwnerReference

func (nc NodeContribution) MakeOwnerReference() metav1.OwnerReference

MakeOwnerReference creates an owner reference for the given object.

type NodeContributionList

type NodeContributionList struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ListMeta `json:"metadata"`
	// NodeContributionList is a list of NodeContribution resources. This element contains
	// NodeContribution resources.
	Items []NodeContribution `json:"items"`
}

NodeContributionList is a list of NodeContribution resources

func (*NodeContributionList) DeepCopy

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

func (*NodeContributionList) DeepCopyInto

func (in *NodeContributionList) DeepCopyInto(out *NodeContributionList)

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

func (*NodeContributionList) DeepCopyObject

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

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

type NodeContributionSpec

type NodeContributionSpec struct {
	// Tenant resource of the contributor. This is to award the tenant
	// who contributes to the cluster with the node.
	Tenant *string `json:"tenant"`
	// Name of the host.
	Host string `json:"host"`
	// SSH port.
	Port int `json:"port"`
	// SSH username.
	User string `json:"user"`
	// To enable/disable scheduling on the contributed node.
	Enabled bool `json:"enabled"`
	// Each contribution can have none or many limitations. This field denotese these
	// limitations.
	Limitations []Limitations `json:"limitations"`
}

NodeContributionSpec is the spec for a NodeContribution resource.

func (*NodeContributionSpec) DeepCopy

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

func (*NodeContributionSpec) DeepCopyInto

func (in *NodeContributionSpec) DeepCopyInto(out *NodeContributionSpec)

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

type NodeContributionStatus

type NodeContributionStatus struct {
	// This can be 'InQueue', 'Failure', 'Success', 'Incomplete', or 'InProgress'.
	State string `json:"state"`
	// Message contains additional information.
	Message string `json:"message"`
	// Failed sets the backoff limit.
	Failed int `json:"failed"`
	// UpdateTimestamp is the last time the status was updated.
	UpdateTimestamp *metav1.Time `json:"updateTimestamp"`
}

NodeContributionStatus is the status for a node contribution

func (*NodeContributionStatus) DeepCopy

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

func (*NodeContributionStatus) DeepCopyInto

func (in *NodeContributionStatus) DeepCopyInto(out *NodeContributionStatus)

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

type NodeSelector

type NodeSelector struct {
	// A label query over nodes to consider for choosing.
	Selector corev1.NodeSelector `json:"selector"`
	// Number of nodes to pick up for each match case
	Count int `json:"nodecount"`
	// Resources represents the minimum resources each selected node should have.
	Resources corev1.ResourceRequirements `json:"resources"`
}

NodeSelector is a selector for nodes to reserve.

func (*NodeSelector) DeepCopy

func (in *NodeSelector) DeepCopy() *NodeSelector

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

func (*NodeSelector) DeepCopyInto

func (in *NodeSelector) DeepCopyInto(out *NodeSelector)

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

type ResourceTuning

type ResourceTuning struct {
	// This denotes which resources to be included.
	ResourceList map[corev1.ResourceName]resource.Quantity `json:"resourcelist"`
	// Expiration date of the ResourceTuning. This can be nil if no expiration date is specified.
	Expiry *metav1.Time `json:"expiry"`
}

ResourceTuning indicates resources to add or remove, and how long they will remain. The supported resources are: CPU, Memory, Local Storage, Ephemeral Storage, and Bandwidth.

func (*ResourceTuning) DeepCopy

func (in *ResourceTuning) DeepCopy() *ResourceTuning

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

func (*ResourceTuning) DeepCopyInto

func (in *ResourceTuning) DeepCopyInto(out *ResourceTuning)

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

type Slice

type Slice struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the slice resource spec
	Spec SliceSpec `json:"spec"`
	// Status is the slice resource status
	Status SliceStatus `json:"status,omitempty"`
}

Slice describes a slice resource

func (*Slice) DeepCopy

func (in *Slice) DeepCopy() *Slice

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

func (*Slice) DeepCopyInto

func (in *Slice) DeepCopyInto(out *Slice)

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

func (*Slice) DeepCopyObject

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

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

func (Slice) MakeOwnerReference

func (s Slice) MakeOwnerReference() metav1.OwnerReference

MakeOwnerReference creates an owner reference for the given object.

type SliceClaim

type SliceClaim struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the slice claim resource spec
	Spec SliceClaimSpec `json:"spec"`
	// Status is the slice claim resource status
	Status SliceClaimStatus `json:"status,omitempty"`
}

SliceClaim describes a slice claim resource

func (*SliceClaim) DeepCopy

func (in *SliceClaim) DeepCopy() *SliceClaim

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

func (*SliceClaim) DeepCopyInto

func (in *SliceClaim) DeepCopyInto(out *SliceClaim)

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

func (*SliceClaim) DeepCopyObject

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

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

func (SliceClaim) MakeObjectReference

func (sc SliceClaim) MakeObjectReference() *corev1.ObjectReference

MakeObjectReference creates an object reference for the given object.

func (SliceClaim) MakeOwnerReference

func (sc SliceClaim) MakeOwnerReference() metav1.OwnerReference

MakeOwnerReference creates an owner reference for the given object.

type SliceClaimList

type SliceClaimList struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ListMeta `json:"metadata"`
	// SliceClaimList is a list of SliceClaim resources. This element contains
	// SliceClaim resources.
	Items []SliceClaim `json:"items"`
}

SliceClaimList is a list of slice claim resources

func (*SliceClaimList) DeepCopy

func (in *SliceClaimList) DeepCopy() *SliceClaimList

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

func (*SliceClaimList) DeepCopyInto

func (in *SliceClaimList) DeepCopyInto(out *SliceClaimList)

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

func (*SliceClaimList) DeepCopyObject

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

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

type SliceClaimSpec

type SliceClaimSpec struct {
	// Name of the SliceClass required by the claim. This can be 'Node', or 'Resource'.
	SliceClassName string `json:"sliceclassname"`
	// SliceName is the binding reference to the Slice backing this claim.
	SliceName string `json:"slicename"`
	// A selector for nodes to reserve.
	NodeSelector NodeSelector `json:"nodeselector"`
	// Expiration date of the slice.
	SliceExpiry *metav1.Time `json:"expiry"`
}

SliceClaimSpec is the spec for a slice claim resource

func (*SliceClaimSpec) DeepCopy

func (in *SliceClaimSpec) DeepCopy() *SliceClaimSpec

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

func (*SliceClaimSpec) DeepCopyInto

func (in *SliceClaimSpec) DeepCopyInto(out *SliceClaimSpec)

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

type SliceClaimStatus

type SliceClaimStatus struct {
	// Denotes the state of the SliceClaim. This can be 'Failure', or 'Success'.
	State string `json:"state"`
	// Message contains additional information.
	Message string `json:"message"`
	// Failed sets the backoff limit.
	Failed int `json:"failed"`
}

SliceClaimStatus is the status for a slice claim resource

func (*SliceClaimStatus) DeepCopy

func (in *SliceClaimStatus) DeepCopy() *SliceClaimStatus

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

func (*SliceClaimStatus) DeepCopyInto

func (in *SliceClaimStatus) DeepCopyInto(out *SliceClaimStatus)

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

type SliceList

type SliceList struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ListMeta `json:"metadata"`
	// SliceList is a list of Slice resources. This element contains
	// Slice resources.
	Items []Slice `json:"items"`
}

SliceList is a list of slice resources

func (*SliceList) DeepCopy

func (in *SliceList) DeepCopy() *SliceList

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

func (*SliceList) DeepCopyInto

func (in *SliceList) DeepCopyInto(out *SliceList)

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

func (*SliceList) DeepCopyObject

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

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

type SliceSpec

type SliceSpec struct {
	// Name of the SliceClass required by the claim. This can be 'Node', or 'Resource'.
	SliceClassName string `json:"sliceclassname"`
	// ClaimRef is part of a bi-directional binding between Slice and SliceClaim.
	// Expected to be non-nil when bound.
	ClaimRef *corev1.ObjectReference `json:"claimref"`
	// A selector for nodes to reserve.
	NodeSelector NodeSelector `json:"nodeselector"`
}

SliceSpec is the spec for a slice resource

func (*SliceSpec) DeepCopy

func (in *SliceSpec) DeepCopy() *SliceSpec

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

func (*SliceSpec) DeepCopyInto

func (in *SliceSpec) DeepCopyInto(out *SliceSpec)

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

type SliceStatus

type SliceStatus struct {
	// Denotes the state of the Slice. This can be 'Failure', or 'Success'.
	State string `json:"state"`
	// Message contains additional information.
	Message string `json:"message"`
	// Failed sets the backoff limit.
	Failed int `json:"failed"`
	// Expiration date of the slice.
	Expiry *metav1.Time `json:"expiry"`
}

SliceStatus is the status for a slice resource

func (*SliceStatus) DeepCopy

func (in *SliceStatus) DeepCopy() *SliceStatus

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

func (*SliceStatus) DeepCopyInto

func (in *SliceStatus) DeepCopyInto(out *SliceStatus)

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

type SubNamespace

type SubNamespace struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the subsidiary namespace resource spec
	Spec SubNamespaceSpec `json:"spec"`
	// Status is the subsidiary namespace resource status
	Status SubNamespaceStatus `json:"status,omitempty"`
}

SubNamespace describes a SubNamespace resource

func (*SubNamespace) DeepCopy

func (in *SubNamespace) DeepCopy() *SubNamespace

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

func (*SubNamespace) DeepCopyInto

func (in *SubNamespace) DeepCopyInto(out *SubNamespace)

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

func (*SubNamespace) DeepCopyObject

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

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

func (SubNamespace) GenerateChildName

func (sn SubNamespace) GenerateChildName(clusterUID string) string

GenerateChildName forms a name for child according to the mode, Workspace or Subtenant.

func (SubNamespace) GetMode

func (sn SubNamespace) GetMode() string

GetMode return the mode as workspace or subtenant.

func (SubNamespace) GetResourceAllocation

func (sn SubNamespace) GetResourceAllocation() map[corev1.ResourceName]resource.Quantity

GetResourceAllocation return the allocated resources at workspace or subtenant.

func (SubNamespace) GetSliceClaim

func (sn SubNamespace) GetSliceClaim() *string

GetSliceClaim return the assigned slice claim at workspace or subtenant.

func (SubNamespace) MakeOwnerReference

func (sn SubNamespace) MakeOwnerReference() metav1.OwnerReference

MakeOwnerReference creates an owner reference for the given object.

func (SubNamespace) RetrieveQuantity

func (sn SubNamespace) RetrieveQuantity(key corev1.ResourceName) resource.Quantity

RetrieveQuantity gets quantity value from given resource name.

func (SubNamespace) SetResourceAllocation

func (sn SubNamespace) SetResourceAllocation(resource map[corev1.ResourceName]resource.Quantity)

SetResourceAllocation set the allocated resources at workspace or subtenant.

type SubNamespaceList

type SubNamespaceList struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ListMeta `json:"metadata"`
	// SubNamespaceList is a list of SubNamespace resources. This element contains
	// SubNamespace resources.
	Items []SubNamespace `json:"items"`
}

SubNamespaceList is a list of SubNamespace resources

func (*SubNamespaceList) DeepCopy

func (in *SubNamespaceList) DeepCopy() *SubNamespaceList

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

func (*SubNamespaceList) DeepCopyInto

func (in *SubNamespaceList) DeepCopyInto(out *SubNamespaceList)

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

func (*SubNamespaceList) DeepCopyObject

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

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

type SubNamespaceSpec

type SubNamespaceSpec struct {
	// The mode of subnamespace, Workspace or Subtenant, cannot be changed after creation.
	// Workspace creates a child namespace within the namespace hierarchy, which fulfills
	// the organizational needs.
	Workspace *Workspace `json:"workspace"`
	// Subnamespace creates the subnamespace in form of subtenant, where all
	// information is hidden from it's parent.
	Subtenant *Subtenant `json:"subtenant"`
	// Expiration date of the subnamespace.
	Expiry *metav1.Time `json:"expiry"`
}

SubNamespaceSpec is the spec for a SubNamespace resource

func (*SubNamespaceSpec) DeepCopy

func (in *SubNamespaceSpec) DeepCopy() *SubNamespaceSpec

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

func (*SubNamespaceSpec) DeepCopyInto

func (in *SubNamespaceSpec) DeepCopyInto(out *SubNamespaceSpec)

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

type SubNamespaceStatus

type SubNamespaceStatus struct {
	// Denotes the state of the SubNamespace. This can be 'Failure', or 'Established'.
	State string `json:"state"`
	// Message contains additional information.
	Message string `json:"message"`
	// Failed sets the backoff limit.
	Failed int `json:"failed"`
	// Child is the name of the child namespace.
	Child *string `json:"child"`
}

SubNamespaceStatus is the status for a SubNamespace resource

func (*SubNamespaceStatus) DeepCopy

func (in *SubNamespaceStatus) DeepCopy() *SubNamespaceStatus

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

func (*SubNamespaceStatus) DeepCopyInto

func (in *SubNamespaceStatus) DeepCopyInto(out *SubNamespaceStatus)

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

type Subtenant

type Subtenant struct {
	// Current allocation of certain resource types. Resource types are
	// kubernetes default resource types.
	ResourceAllocation map[corev1.ResourceName]resource.Quantity `json:"resourceallocation"`
	// Owner of the Subtenant.
	Owner Contact `json:"owner"`
	// SliceClaim is the name of a SliceClaim in the same namespace as the subtenant using this slice.
	SliceClaim *string `json:"sliceclaim"`
}

Subtenant resource represents a tenant under another tenant.

func (*Subtenant) DeepCopy

func (in *Subtenant) DeepCopy() *Subtenant

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

func (*Subtenant) DeepCopyInto

func (in *Subtenant) DeepCopyInto(out *Subtenant)

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

type Tenant

type Tenant struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the tenant resource spec
	Spec TenantSpec `json:"spec"`
	// Status is the tenant resource status
	Status TenantStatus `json:"status,omitempty"`
}

Tenant describes a tenant that consumes the cluster resources in an isolated environment

func (*Tenant) DeepCopy

func (in *Tenant) DeepCopy() *Tenant

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

func (*Tenant) DeepCopyInto

func (in *Tenant) DeepCopyInto(out *Tenant)

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

func (*Tenant) DeepCopyObject

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

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

func (Tenant) MakeOwnerReference

func (t Tenant) MakeOwnerReference() metav1.OwnerReference

MakeOwnerReference creates an owner reference for the given object.

type TenantList

type TenantList struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ListMeta `json:"metadata"`
	// TenantList is a list of Tenant resources. This field contains Tenants.
	Items []Tenant `json:"items"`
}

TenantList is a list of Tenant resources

func (*TenantList) DeepCopy

func (in *TenantList) DeepCopy() *TenantList

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

func (*TenantList) DeepCopyInto

func (in *TenantList) DeepCopyInto(out *TenantList)

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

func (*TenantList) DeepCopyObject

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

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

type TenantResourceQuota

type TenantResourceQuota struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the tenantresourcequota resource spec
	Spec TenantResourceQuotaSpec `json:"spec"`
	// Status is the tenantresourcequota resource status
	Status TenantResourceQuotaStatus `json:"status,omitempty"`
}

TenantResourceQuota describes a tenant resouce quota resource

func (*TenantResourceQuota) DeepCopy

func (in *TenantResourceQuota) DeepCopy() *TenantResourceQuota

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

func (*TenantResourceQuota) DeepCopyInto

func (in *TenantResourceQuota) DeepCopyInto(out *TenantResourceQuota)

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

func (*TenantResourceQuota) DeepCopyObject

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

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

func (TenantResourceQuota) DropExpiredItems

func (t TenantResourceQuota) DropExpiredItems() bool

DropExpiredItems removes the resource tunings if they are expired.

func (TenantResourceQuota) Fetch

Fetch as its name indicates, it fetches the net value of the resources. For example, 1Gb memory is claimed and 100 milliCPU are dropped. Then the function returns the net resources as '+1Gb', '-100m'.

type TenantResourceQuotaList

type TenantResourceQuotaList struct {
	// TypeMeta is the metadata for the resource, like kind and apiversion
	metav1.TypeMeta `json:",inline"`
	// ObjectMeta contains the metadata for the particular object, including
	metav1.ListMeta `json:"metadata"`
	// TenantResourceQuotaList is a list of TenantResourceQuota resources. This element contains
	// TenantResourceQuota resources.
	Items []TenantResourceQuota `json:"items"`
}

TenantResourceQuotaList is a list of tenant resouce quota resources

func (*TenantResourceQuotaList) DeepCopy

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

func (*TenantResourceQuotaList) DeepCopyInto

func (in *TenantResourceQuotaList) DeepCopyInto(out *TenantResourceQuotaList)

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

func (*TenantResourceQuotaList) DeepCopyObject

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

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

type TenantResourceQuotaSpec

type TenantResourceQuotaSpec struct {
	// To increase the overall quota.
	Claim map[string]ResourceTuning `json:"claim"`
	// To decrease the overall quota.
	Drop map[string]ResourceTuning `json:"drop"`
}

TenantResourceQuotaSpec is the spec for a tenant resouce quota resource

func (*TenantResourceQuotaSpec) DeepCopy

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

func (*TenantResourceQuotaSpec) DeepCopyInto

func (in *TenantResourceQuotaSpec) DeepCopyInto(out *TenantResourceQuotaSpec)

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

type TenantResourceQuotaStatus

type TenantResourceQuotaStatus struct {
	// Denotes the state of the TenantResourceQuota. This can be 'Failure', or 'Success'.
	State string `json:"state"`
	// Message contains additional information.
	Message string `json:"message"`
	// Failed sets the backoff limit.
	Failed int `json:"failed"`
}

TenantResourceQuotaStatus is the status for a tenant resouce quota resource

func (*TenantResourceQuotaStatus) DeepCopy

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

func (*TenantResourceQuotaStatus) DeepCopyInto

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

type TenantSpec

type TenantSpec struct {
	// Full name of the tenant.
	FullName string `json:"fullname"`
	// Shortened name of the tenant.
	ShortName string `json:"shortname"`
	// Website of the tenant.
	URL string `json:"url"`
	// Open address of the tenant, this includes country, city, and street information.
	Address Address `json:"address"`
	// Contact information of the tenant.
	Contact Contact `json:"contact"`
	// Whether cluster-level network policies will be applied to tenant namespaces
	// for security purposes.
	ClusterNetworkPolicy bool `json:"clusternetworkpolicy"`
	// If the tenant is active then this field is true.
	Enabled bool `json:"enabled"`
	// Description provides additional information about the tenant.
	Description string `json:"description"`
}

TenantSpec is the spec for a Tenant resource

func (*TenantSpec) DeepCopy

func (in *TenantSpec) DeepCopy() *TenantSpec

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

func (*TenantSpec) DeepCopyInto

func (in *TenantSpec) DeepCopyInto(out *TenantSpec)

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

type TenantStatus

type TenantStatus struct {
	// The state can be 'Established' or 'Failure'.
	State string `json:"state"`
	// Additional description can be located here.
	Message string `json:"message"`
	// Failed sets the backoff limit.
	Failed int `json:"failed"`
}

TenantStatus is the status for a Tenant resource

func (*TenantStatus) DeepCopy

func (in *TenantStatus) DeepCopy() *TenantStatus

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

func (*TenantStatus) DeepCopyInto

func (in *TenantStatus) DeepCopyInto(out *TenantStatus)

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

type Workspace

type Workspace struct {
	// Represents maximum resources to be used.
	ResourceAllocation map[corev1.ResourceName]resource.Quantity `json:"resourceallocation"`
	// Which services are going to be inherited from the parent namespace to the this workspace thus
	// subnamespace.
	// The supported resources are: RBAC, NetworkPolicies, Limit Ranges, Secrets, Config Maps, and
	// Service Accounts.
	Inheritance map[string]bool `json:"inheritance"`
	// Scope can be 'federated', or 'local'. It cannot be changed after creation.
	Scope string `json:"scope"`
	// Denote the workspace in sync with its parent.
	Sync bool `json:"sync"`
	// Owner of the workspace.
	Owner *Contact `json:"owner"`
	// SliceClaim is the name of a SliceClaim in the same namespace as the workspace using this slice.
	SliceClaim *string `json:"sliceclaim"`
}

Workspace contains possible resources such as cpu units or memory, which attributes to inherit, scope, and owner.

func (*Workspace) DeepCopy

func (in *Workspace) DeepCopy() *Workspace

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

func (*Workspace) DeepCopyInto

func (in *Workspace) DeepCopyInto(out *Workspace)

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