Documentation ¶
Overview ¶
+k8s:deepcopy-gen=package,register +groupName=region.unikorn-cloud.org
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type CPUSpec
- type ExternalNetworks
- type FlavorMetadata
- type FlavorQuota
- type FlavorSelector
- type GPUSpec
- type GPUVendor
- type Identity
- func (in *Identity) DeepCopy() *Identity
- func (in *Identity) DeepCopyInto(out *Identity)
- func (in *Identity) DeepCopyObject() runtime.Object
- func (c *Identity) Paused() bool
- func (c *Identity) ResourceLabels() (labels.Set, error)
- func (c *Identity) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
- func (c *Identity) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, ...)
- type IdentityList
- type IdentitySpec
- type IdentityStatus
- type ImageSelector
- type NamespacedObject
- type Network
- func (in *Network) DeepCopy() *Network
- func (in *Network) DeepCopyInto(out *Network)
- func (in *Network) DeepCopyObject() runtime.Object
- func (c *Network) Paused() bool
- func (c *Network) ResourceLabels() (labels.Set, error)
- func (c *Network) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
- func (c *Network) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, ...)
- type NetworkList
- type NetworkSelector
- type NetworkSpec
- type NetworkStatus
- type OpenstackFlavorSelectionPolicy
- type OpenstackFlavorsSpec
- type OpenstackIdentity
- type OpenstackIdentityList
- type OpenstackIdentitySpec
- type OpenstackIdentityStatus
- type OpenstackNetwork
- type OpenstackNetworkList
- type OpenstackNetworkSpec
- type OpenstackNetworkStatus
- type OpenstackSecurityGroup
- type OpenstackSecurityGroupList
- type OpenstackSecurityGroupRule
- type OpenstackSecurityGroupRuleList
- type OpenstackSecurityGroupRuleSpec
- type OpenstackSecurityGroupRuleStatus
- type OpenstackSecurityGroupSpec
- type OpenstackSecurityGroupStatus
- type OpenstackServer
- type OpenstackServerList
- type OpenstackServerSpec
- type OpenstackServerStatus
- type Provider
- type ProviderNetworks
- type Quota
- type QuotaList
- type QuotaSpec
- type QuotaStatus
- type Region
- type RegionList
- type RegionOpenstackComputeSpec
- type RegionOpenstackIdentitySpec
- type RegionOpenstackImageSpec
- type RegionOpenstackNetworkSpec
- type RegionOpenstackSpec
- type RegionSpec
- type RegionStatus
- type SecurityGroup
- func (in *SecurityGroup) DeepCopy() *SecurityGroup
- func (in *SecurityGroup) DeepCopyInto(out *SecurityGroup)
- func (in *SecurityGroup) DeepCopyObject() runtime.Object
- func (c *SecurityGroup) Paused() bool
- func (c *SecurityGroup) ResourceLabels() (labels.Set, error)
- func (c *SecurityGroup) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
- func (c *SecurityGroup) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, ...)
- type SecurityGroupList
- type SecurityGroupRule
- func (in *SecurityGroupRule) DeepCopy() *SecurityGroupRule
- func (in *SecurityGroupRule) DeepCopyInto(out *SecurityGroupRule)
- func (in *SecurityGroupRule) DeepCopyObject() runtime.Object
- func (c *SecurityGroupRule) Paused() bool
- func (c *SecurityGroupRule) ResourceLabels() (labels.Set, error)
- func (c *SecurityGroupRule) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
- func (c *SecurityGroupRule) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, ...)
- type SecurityGroupRuleDirection
- type SecurityGroupRuleList
- type SecurityGroupRulePort
- type SecurityGroupRulePortRange
- type SecurityGroupRuleProtocol
- type SecurityGroupRuleSpec
- type SecurityGroupRuleStatus
- type SecurityGroupSpec
- type SecurityGroupStatus
- type Server
- func (in *Server) DeepCopy() *Server
- func (in *Server) DeepCopyInto(out *Server)
- func (in *Server) DeepCopyObject() runtime.Object
- func (c *Server) Paused() bool
- func (c *Server) ResourceLabels() (labels.Set, error)
- func (c *Server) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
- func (c *Server) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, ...)
- type ServerImage
- type ServerImageSelector
- type ServerList
- type ServerNetworkSpec
- type ServerPublicIPAllocationSpec
- type ServerSecurityGroupSpec
- type ServerSpec
- type ServerStatus
- type VLANAllocation
- type VLANAllocationEntry
- type VLANAllocationList
- type VLANAllocationSpec
- type VLANAllocationStatus
- type VLANSegment
- type VLANSpec
Constants ¶
const ( // GroupName is the Kubernetes API group our resources belong to. GroupName = "region.unikorn-cloud.org" // GroupVersion is the version of our custom resources. GroupVersion = "v1alpha1" // Group is group/version of our resources. Group = GroupName + "/" + GroupVersion )
const ( TCP SecurityGroupRuleProtocol = "tcp" UDP SecurityGroupRuleProtocol = "udp" Ingress SecurityGroupRuleDirection = "ingress" Egress SecurityGroupRuleDirection = "egress" )
Variables ¶
var ( // SchemeGroupVersion defines the GV of our resources. //nolint:gochecknoglobals SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion} // SchemeBuilder creates a mapping between GVK and type. //nolint:gochecknoglobals SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds our GVK to resource mappings to an existing scheme. //nolint:gochecknoglobals AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource maps a resource type to a group resource.
Types ¶
type CPUSpec ¶ added in v0.1.17
type CPUSpec struct { // Count allows you to override the number of CPUs. Usually this wouldn't // be necessary, but alas some operators may not set this correctly for baremetal // flavors to make horizon display overcommit correctly... Count *int `json:"count,omitempty"` // Family is a free-form string that can communicate the CPU family to clients // e.g. "Xeon Platinum 8160T (Skylake)", and allows users to make scheduling // decisions based on CPU architecture and performance etc. Family *string `json:"family,omitempty"` }
func (*CPUSpec) DeepCopy ¶ added in v0.1.17
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPUSpec.
func (*CPUSpec) DeepCopyInto ¶ added in v0.1.17
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalNetworks ¶ added in v0.1.26
type ExternalNetworks struct { // Selector defines a set of rules to lookup external networks. // In none is specified, all external networks are selected. Selector *NetworkSelector `json:"selector,omitempty"` }
func (*ExternalNetworks) DeepCopy ¶ added in v0.1.26
func (in *ExternalNetworks) DeepCopy() *ExternalNetworks
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalNetworks.
func (*ExternalNetworks) DeepCopyInto ¶ added in v0.1.26
func (in *ExternalNetworks) DeepCopyInto(out *ExternalNetworks)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FlavorMetadata ¶ added in v0.1.27
type FlavorMetadata struct { // ID is the immutable Openstack identifier for the flavor. ID string `json:"id"` // Baremetal indicates that this is a baremetal flavor, as opposed to a // virtualized one in case this affects image selection or even how instances // are provisioned. Baremetal bool `json:"baremetal,omitempty"` // CPU defines additional CPU metadata. CPU *CPUSpec `json:"cpu,omitempty"` // Memory allows the memory amount to be overridden. Memory *resource.Quantity `json:"memory,omitempty"` // GPU defines additional GPU metadata. When provided it will enable selection // of images based on GPU vendor and model. GPU *GPUSpec `json:"gpu,omitempty"` }
func (*FlavorMetadata) DeepCopy ¶ added in v0.1.27
func (in *FlavorMetadata) DeepCopy() *FlavorMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlavorMetadata.
func (*FlavorMetadata) DeepCopyInto ¶ added in v0.1.27
func (in *FlavorMetadata) DeepCopyInto(out *FlavorMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FlavorQuota ¶ added in v0.1.38
type FlavorQuota struct { // ID is the flavor ID. ID string `json:"id"` // Count is the number of instances that are required. // For certain services that can do rolling upgrades, be aware that this // may need a little overhead to cater for that. For example the Kubernetes // service will do a one-in-one-out upgrade of the control plane. Count int `json:"count"` }
func (*FlavorQuota) DeepCopy ¶ added in v0.1.38
func (in *FlavorQuota) DeepCopy() *FlavorQuota
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlavorQuota.
func (*FlavorQuota) DeepCopyInto ¶ added in v0.1.38
func (in *FlavorQuota) DeepCopyInto(out *FlavorQuota)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FlavorSelector ¶ added in v0.1.27
type FlavorSelector struct { // IDs is an explicit list of allowed flavors IDs. If not specified, // then all flavors are considered. IDs []string `json:"ids,omitempty"` }
func (*FlavorSelector) DeepCopy ¶ added in v0.1.27
func (in *FlavorSelector) DeepCopy() *FlavorSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlavorSelector.
func (*FlavorSelector) DeepCopyInto ¶ added in v0.1.27
func (in *FlavorSelector) DeepCopyInto(out *FlavorSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GPUSpec ¶ added in v0.1.17
type GPUSpec struct { // Vendor is the GPU vendor, used for coarse grained flavor and image // selection. Vendor GPUVendor `json:"vendor"` // Model is a free-form model name that corresponds to the supported models // property included on images, and must be an exact match e.g. H100. Model string `json:"model"` // PhysicalCount is the number of physical cards in the flavor. // This is primarily for end users, so it's not confusing. PhysicalCount int `json:"physicalCount"` // LogicalCount is the number of logical GPUs e.g. an AMD MI250 is 2 MI200s. // This is primarily for scheduling e.g. autoscaling. LogicalCount int `json:"logicalCount"` // Memory is the amount of memory each logical GPU has access to. Memory *resource.Quantity `json:"memory"` }
func (*GPUSpec) DeepCopy ¶ added in v0.1.17
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GPUSpec.
func (*GPUSpec) DeepCopyInto ¶ added in v0.1.17
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Identity ¶
type Identity struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IdentitySpec `json:"spec"` Status IdentityStatus `json:"status,omitempty"` }
Identity defines an on-demand cloud identity. The region controller must create any resources necessary to provide dynamic provisioning of clusters e.g. compute, storage and networking. This resource is used for persistence of information by the controller and not for manual lifecycle management. Any credentials should not be stored unless absolutely necessary, and should be passed to a client on initial identity creation only. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:subresource:status +kubebuilder:printcolumn:name="provider",type="string",JSONPath=".spec.provider" +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*Identity) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Identity.
func (*Identity) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Identity) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Identity) ResourceLabels ¶ added in v0.1.33
ResourceLabels generates a set of labels to uniquely identify the resource if it were to be placed in a single global namespace.
func (*Identity) StatusConditionRead ¶ added in v0.1.33
func (c *Identity) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
StatusConditionRead scans the status conditions for an existing condition whose type matches.
func (*Identity) StatusConditionWrite ¶ added in v0.1.33
func (c *Identity) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, reason unikornv1core.ConditionReason, message string)
StatusConditionWrite either adds or updates a condition in the cluster manager status. If the condition, status and message match an existing condition the update is ignored.
type IdentityList ¶
type IdentityList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Identity `json:"items"` }
IdentityList is a typed list of identities. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*IdentityList) DeepCopy ¶
func (in *IdentityList) DeepCopy() *IdentityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityList.
func (*IdentityList) DeepCopyInto ¶
func (in *IdentityList) DeepCopyInto(out *IdentityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IdentityList) DeepCopyObject ¶
func (in *IdentityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IdentitySpec ¶
type IdentitySpec struct { // Pause, if true, will inhibit reconciliation. Pause bool `json:"pause,omitempty"` // Tags are an abitrary list of key/value pairs that a client // may populate to store metadata for the resource. Tags unikornv1core.TagList `json:"tags,omitempty"` // Provider defines the provider type. Provider Provider `json:"provider"` }
IdentitySpec stores any state necessary to manage identity.
func (*IdentitySpec) DeepCopy ¶
func (in *IdentitySpec) DeepCopy() *IdentitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentitySpec.
func (*IdentitySpec) DeepCopyInto ¶
func (in *IdentitySpec) DeepCopyInto(out *IdentitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityStatus ¶
type IdentityStatus struct { // Current service state of a cluster manager. Conditions []unikornv1core.Condition `json:"conditions,omitempty"` }
func (*IdentityStatus) DeepCopy ¶
func (in *IdentityStatus) DeepCopy() *IdentityStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityStatus.
func (*IdentityStatus) DeepCopyInto ¶
func (in *IdentityStatus) DeepCopyInto(out *IdentityStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageSelector ¶ added in v0.1.26
type ImageSelector struct { // Properties defines the set of properties an image needs to have to // be selected. Properties []string `json:"properties,omitempty"` // SigningKey defines a PEM encoded public ECDSA signing key used to verify // the image is trusted. If specified, an image must contain the "digest" // property, the value of which must be a base64 encoded ECDSA signature of // the SHA256 hash of the image ID. SigningKey []byte `json:"signingKey,omitempty"` }
func (*ImageSelector) DeepCopy ¶ added in v0.1.26
func (in *ImageSelector) DeepCopy() *ImageSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSelector.
func (*ImageSelector) DeepCopyInto ¶ added in v0.1.26
func (in *ImageSelector) DeepCopyInto(out *ImageSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespacedObject ¶
type NamespacedObject struct { // Namespace is the namespace in which the object resides. Namespace string `json:"namespace"` // Name is the name of the object. Name string `json:"name"` }
func (*NamespacedObject) DeepCopy ¶
func (in *NamespacedObject) DeepCopy() *NamespacedObject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedObject.
func (*NamespacedObject) DeepCopyInto ¶
func (in *NamespacedObject) DeepCopyInto(out *NamespacedObject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Network ¶ added in v0.1.46
type Network struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NetworkSpec `json:"spec"` Status NetworkStatus `json:"status,omitempty"` }
Network defines a physical network beloning to an identity. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:subresource:status +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*Network) DeepCopy ¶ added in v0.1.46
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network.
func (*Network) DeepCopyInto ¶ added in v0.1.46
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Network) DeepCopyObject ¶ added in v0.1.46
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Network) ResourceLabels ¶ added in v0.1.46
ResourceLabels generates a set of labels to uniquely identify the resource if it were to be placed in a single global namespace.
func (*Network) StatusConditionRead ¶ added in v0.1.46
func (c *Network) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
StatusConditionRead scans the status conditions for an existing condition whose type matches.
func (*Network) StatusConditionWrite ¶ added in v0.1.46
func (c *Network) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, reason unikornv1core.ConditionReason, message string)
StatusConditionWrite either adds or updates a condition in the cluster manager status. If the condition, status and message match an existing condition the update is ignored.
type NetworkList ¶ added in v0.1.46
type NetworkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Network `json:"items"` }
NetworkList s a typed list of physical networks. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*NetworkList) DeepCopy ¶ added in v0.1.46
func (in *NetworkList) DeepCopy() *NetworkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkList.
func (*NetworkList) DeepCopyInto ¶ added in v0.1.46
func (in *NetworkList) DeepCopyInto(out *NetworkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NetworkList) DeepCopyObject ¶ added in v0.1.46
func (in *NetworkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NetworkSelector ¶ added in v0.1.26
type NetworkSelector struct { // IDs is an explicit list of network IDs. IDs []string `json:"ids,omitempty"` // Tags is an implicit selector of networks with a set of all specified tags. Tags []string `json:"tags,omitempty"` }
func (*NetworkSelector) DeepCopy ¶ added in v0.1.26
func (in *NetworkSelector) DeepCopy() *NetworkSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSelector.
func (*NetworkSelector) DeepCopyInto ¶ added in v0.1.26
func (in *NetworkSelector) DeepCopyInto(out *NetworkSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkSpec ¶ added in v0.1.46
type NetworkSpec struct { // Pause, if true, will inhibit reconciliation. Pause bool `json:"pause,omitempty"` // Tags are an abitrary list of key/value pairs that a client // may populate to store metadata for the resource. Tags unikornv1core.TagList `json:"tags,omitempty"` // Provider defines the provider type. Provider Provider `json:"provider"` // Prefix is the IPv4 address prefix. Prefix *unikornv1core.IPv4Prefix `json:"prefix"` // DNSNameservers are a set of DNS nameservrs for the network. DNSNameservers []unikornv1core.IPv4Address `json:"dnsNameservers"` }
func (*NetworkSpec) DeepCopy ¶ added in v0.1.46
func (in *NetworkSpec) DeepCopy() *NetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSpec.
func (*NetworkSpec) DeepCopyInto ¶ added in v0.1.46
func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkStatus ¶ added in v0.1.46
type NetworkStatus struct { // Current service state of a cluster manager. Conditions []unikornv1core.Condition `json:"conditions,omitempty"` }
func (*NetworkStatus) DeepCopy ¶ added in v0.1.46
func (in *NetworkStatus) DeepCopy() *NetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkStatus.
func (*NetworkStatus) DeepCopyInto ¶ added in v0.1.46
func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackFlavorSelectionPolicy ¶ added in v0.1.17
type OpenstackFlavorSelectionPolicy string
+kubebuilder:validation:Enum=All;None
const ( OpenstackFlavorSelectionPolicySelectAll OpenstackFlavorSelectionPolicy = "All" OpenstackFlavorSelectionPolicySelectNone OpenstackFlavorSelectionPolicy = "None" )
type OpenstackFlavorsSpec ¶ added in v0.1.17
type OpenstackFlavorsSpec struct { // Selector allows flavors to be manually selected for inclusion. The selected // set is a boolean intersection of all defined filters in the selector. // Note that there are some internal rules that will fiter out flavors such as // if the flavor does not have enough resource to function correctly. Selector *FlavorSelector `json:"selector,omitempty"` // Metadata allows flavors to be explicitly augmented with additional metadata. // This acknowledges the fact that OpenStack is inadequate acting as a source // of truth for machine topology, and needs external input to describe things // like add on peripherals. Metadata []FlavorMetadata `json:"metadata,omitempty"` }
func (*OpenstackFlavorsSpec) DeepCopy ¶ added in v0.1.17
func (in *OpenstackFlavorsSpec) DeepCopy() *OpenstackFlavorsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackFlavorsSpec.
func (*OpenstackFlavorsSpec) DeepCopyInto ¶ added in v0.1.17
func (in *OpenstackFlavorsSpec) DeepCopyInto(out *OpenstackFlavorsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackIdentity ¶ added in v0.1.33
type OpenstackIdentity struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenstackIdentitySpec `json:"spec"` Status OpenstackIdentityStatus `json:"status,omitempty"` }
OpenstackIdentity has no controller, its a database record of state. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="provider",type="string",JSONPath=".spec.provider" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*OpenstackIdentity) DeepCopy ¶ added in v0.1.33
func (in *OpenstackIdentity) DeepCopy() *OpenstackIdentity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackIdentity.
func (*OpenstackIdentity) DeepCopyInto ¶ added in v0.1.33
func (in *OpenstackIdentity) DeepCopyInto(out *OpenstackIdentity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackIdentity) DeepCopyObject ¶ added in v0.1.33
func (in *OpenstackIdentity) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackIdentityList ¶ added in v0.1.33
type OpenstackIdentityList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenstackIdentity `json:"items"` }
OpenstackIdentityList is a typed list of identities. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OpenstackIdentityList) DeepCopy ¶ added in v0.1.33
func (in *OpenstackIdentityList) DeepCopy() *OpenstackIdentityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackIdentityList.
func (*OpenstackIdentityList) DeepCopyInto ¶ added in v0.1.33
func (in *OpenstackIdentityList) DeepCopyInto(out *OpenstackIdentityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackIdentityList) DeepCopyObject ¶ added in v0.1.33
func (in *OpenstackIdentityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackIdentitySpec ¶ added in v0.1.33
type OpenstackIdentitySpec struct { // CloudConfig is a client compatible cloud configuration. CloudConfig []byte `json:"cloudConfig,omitempty"` // Cloud is the cloud name in the cloud config to use. Cloud *string `json:"cloud,omitempty"` // UserID is the ID of the user created for the identity. UserID *string `json:"userID,omitempty"` // Password is the login for the user. Password *string `json:"password,omitempty"` // ProjectID is the ID of the project created for the identity. ProjectID *string `json:"projectID,omitempty"` // ApplicationCredentialID is the ID of the user's application credential. ApplicationCredentialID *string `json:"applicationCredentialID,omitempty"` // ApplicationCredentialSecret is the one-time secret for the application credential. ApplicationCredentialSecret *string `json:"applicationCredentialSecret,omitempty"` // ServerGroupID is the ID of the server group created for the identity. ServerGroupID *string `json:"serverGroupID,omitempty"` // SSHKeyName is the ssh key that may be injected into clusters by consuming services. SSHKeyName *string `json:"sshKeyName,omitempty"` // SSHPrivateKey is a PEM encoded private key. SSHPrivateKey []byte `json:"sshPrivateKey,omitempty"` }
func (*OpenstackIdentitySpec) DeepCopy ¶ added in v0.1.33
func (in *OpenstackIdentitySpec) DeepCopy() *OpenstackIdentitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackIdentitySpec.
func (*OpenstackIdentitySpec) DeepCopyInto ¶ added in v0.1.33
func (in *OpenstackIdentitySpec) DeepCopyInto(out *OpenstackIdentitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackIdentityStatus ¶ added in v0.1.33
type OpenstackIdentityStatus struct{}
func (*OpenstackIdentityStatus) DeepCopy ¶ added in v0.1.33
func (in *OpenstackIdentityStatus) DeepCopy() *OpenstackIdentityStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackIdentityStatus.
func (*OpenstackIdentityStatus) DeepCopyInto ¶ added in v0.1.33
func (in *OpenstackIdentityStatus) DeepCopyInto(out *OpenstackIdentityStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackNetwork ¶ added in v0.1.46
type OpenstackNetwork struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenstackNetworkSpec `json:"spec"` Status OpenstackNetworkStatus `json:"status,omitempty"` }
OpenstackNetwork defines a physical network beloning to an identity. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*OpenstackNetwork) DeepCopy ¶ added in v0.1.46
func (in *OpenstackNetwork) DeepCopy() *OpenstackNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackNetwork.
func (*OpenstackNetwork) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackNetwork) DeepCopyInto(out *OpenstackNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackNetwork) DeepCopyObject ¶ added in v0.1.46
func (in *OpenstackNetwork) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackNetworkList ¶ added in v0.1.46
type OpenstackNetworkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenstackNetwork `json:"items"` }
OpenstackNetworkList s a typed list of physical networks. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OpenstackNetworkList) DeepCopy ¶ added in v0.1.46
func (in *OpenstackNetworkList) DeepCopy() *OpenstackNetworkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackNetworkList.
func (*OpenstackNetworkList) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackNetworkList) DeepCopyInto(out *OpenstackNetworkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackNetworkList) DeepCopyObject ¶ added in v0.1.46
func (in *OpenstackNetworkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackNetworkSpec ¶ added in v0.1.46
type OpenstackNetworkSpec struct { // NetworkID is the network ID. NetworkID *string `json:"networkID,omitempty"` // VlanID is the ID if the VLAN for IPAM. VlanID *int `json:"vlanID,omitempty"` // SubnetID is the subnet ID. SubnetID *string `json:"subnetID,omitempty"` // RouterID is the router ID. RouterID *string `json:"routerID,omitempty"` // RouterSubnetInterfaceAdded tells us if this step has been accomplished. RouterSubnetInterfaceAdded bool `json:"routerSubnetInterfaceAdded,omitempty"` }
func (*OpenstackNetworkSpec) DeepCopy ¶ added in v0.1.46
func (in *OpenstackNetworkSpec) DeepCopy() *OpenstackNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackNetworkSpec.
func (*OpenstackNetworkSpec) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackNetworkSpec) DeepCopyInto(out *OpenstackNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackNetworkStatus ¶ added in v0.1.46
type OpenstackNetworkStatus struct { }
func (*OpenstackNetworkStatus) DeepCopy ¶ added in v0.1.46
func (in *OpenstackNetworkStatus) DeepCopy() *OpenstackNetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackNetworkStatus.
func (*OpenstackNetworkStatus) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackNetworkStatus) DeepCopyInto(out *OpenstackNetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackSecurityGroup ¶ added in v0.1.45
type OpenstackSecurityGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenstackSecurityGroupSpec `json:"spec"` Status OpenstackSecurityGroupStatus `json:"status,omitempty"` }
OpenstackSecurityGroup has no controller, its a database record of state. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*OpenstackSecurityGroup) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroup) DeepCopy() *OpenstackSecurityGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroup.
func (*OpenstackSecurityGroup) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroup) DeepCopyInto(out *OpenstackSecurityGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackSecurityGroup) DeepCopyObject ¶ added in v0.1.45
func (in *OpenstackSecurityGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackSecurityGroupList ¶ added in v0.1.45
type OpenstackSecurityGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenstackSecurityGroup `json:"items"` }
OpenstackSecurityGroupList is a typed list of security groups. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OpenstackSecurityGroupList) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupList) DeepCopy() *OpenstackSecurityGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupList.
func (*OpenstackSecurityGroupList) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupList) DeepCopyInto(out *OpenstackSecurityGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackSecurityGroupList) DeepCopyObject ¶ added in v0.1.45
func (in *OpenstackSecurityGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackSecurityGroupRule ¶ added in v0.1.45
type OpenstackSecurityGroupRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenstackSecurityGroupRuleSpec `json:"spec"` Status OpenstackSecurityGroupRuleStatus `json:"status,omitempty"` }
OpenstackSecurityGroupRule has no controller, its a database record of state. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*OpenstackSecurityGroupRule) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRule) DeepCopy() *OpenstackSecurityGroupRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupRule.
func (*OpenstackSecurityGroupRule) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRule) DeepCopyInto(out *OpenstackSecurityGroupRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackSecurityGroupRule) DeepCopyObject ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackSecurityGroupRuleList ¶ added in v0.1.45
type OpenstackSecurityGroupRuleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenstackSecurityGroupRule `json:"items"` }
OpenstackSecurityGroupRuleList is a typed list of security groups. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OpenstackSecurityGroupRuleList) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleList) DeepCopy() *OpenstackSecurityGroupRuleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupRuleList.
func (*OpenstackSecurityGroupRuleList) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleList) DeepCopyInto(out *OpenstackSecurityGroupRuleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackSecurityGroupRuleList) DeepCopyObject ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackSecurityGroupRuleSpec ¶ added in v0.1.45
type OpenstackSecurityGroupRuleSpec struct { // SecurityGroupRuleID is the security group rule ID. SecurityGroupRuleID *string `json:"securityGroupRuleID,omitempty"` }
func (*OpenstackSecurityGroupRuleSpec) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleSpec) DeepCopy() *OpenstackSecurityGroupRuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupRuleSpec.
func (*OpenstackSecurityGroupRuleSpec) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleSpec) DeepCopyInto(out *OpenstackSecurityGroupRuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackSecurityGroupRuleStatus ¶ added in v0.1.45
type OpenstackSecurityGroupRuleStatus struct { }
func (*OpenstackSecurityGroupRuleStatus) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleStatus) DeepCopy() *OpenstackSecurityGroupRuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupRuleStatus.
func (*OpenstackSecurityGroupRuleStatus) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupRuleStatus) DeepCopyInto(out *OpenstackSecurityGroupRuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackSecurityGroupSpec ¶ added in v0.1.45
type OpenstackSecurityGroupSpec struct { // SecurityGroupID is the security group ID. SecurityGroupID *string `json:"securityGroupID,omitempty"` }
func (*OpenstackSecurityGroupSpec) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupSpec) DeepCopy() *OpenstackSecurityGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupSpec.
func (*OpenstackSecurityGroupSpec) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupSpec) DeepCopyInto(out *OpenstackSecurityGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackSecurityGroupStatus ¶ added in v0.1.45
type OpenstackSecurityGroupStatus struct { }
func (*OpenstackSecurityGroupStatus) DeepCopy ¶ added in v0.1.45
func (in *OpenstackSecurityGroupStatus) DeepCopy() *OpenstackSecurityGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackSecurityGroupStatus.
func (*OpenstackSecurityGroupStatus) DeepCopyInto ¶ added in v0.1.45
func (in *OpenstackSecurityGroupStatus) DeepCopyInto(out *OpenstackSecurityGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackServer ¶ added in v0.1.46
type OpenstackServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OpenstackServerSpec `json:"spec"` Status OpenstackServerStatus `json:"status,omitempty"` }
OpenstackServer has no controller, its a database record of state. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*OpenstackServer) DeepCopy ¶ added in v0.1.46
func (in *OpenstackServer) DeepCopy() *OpenstackServer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackServer.
func (*OpenstackServer) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackServer) DeepCopyInto(out *OpenstackServer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackServer) DeepCopyObject ¶ added in v0.1.46
func (in *OpenstackServer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackServerList ¶ added in v0.1.46
type OpenstackServerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OpenstackServer `json:"items"` }
OpenstackServerList is a typed list of servers. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*OpenstackServerList) DeepCopy ¶ added in v0.1.46
func (in *OpenstackServerList) DeepCopy() *OpenstackServerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackServerList.
func (*OpenstackServerList) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackServerList) DeepCopyInto(out *OpenstackServerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OpenstackServerList) DeepCopyObject ¶ added in v0.1.46
func (in *OpenstackServerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OpenstackServerSpec ¶ added in v0.1.46
type OpenstackServerSpec struct { // ServerID is the server ID. ServerID *string `json:"serverID,omitempty"` // PublicIPAllocationId is the public ip allocation id. PublicIPAllocationId *string `json:"publicIPAllocationId,omitempty"` }
func (*OpenstackServerSpec) DeepCopy ¶ added in v0.1.46
func (in *OpenstackServerSpec) DeepCopy() *OpenstackServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackServerSpec.
func (*OpenstackServerSpec) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackServerSpec) DeepCopyInto(out *OpenstackServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenstackServerStatus ¶ added in v0.1.46
type OpenstackServerStatus struct { }
func (*OpenstackServerStatus) DeepCopy ¶ added in v0.1.46
func (in *OpenstackServerStatus) DeepCopy() *OpenstackServerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackServerStatus.
func (*OpenstackServerStatus) DeepCopyInto ¶ added in v0.1.46
func (in *OpenstackServerStatus) DeepCopyInto(out *OpenstackServerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Provider ¶
type Provider string
Provider is used to communicate the cloud type. +kubebuilder:validation:Enum=openstack
const (
ProviderOpenstack Provider = "openstack"
)
type ProviderNetworks ¶ added in v0.1.26
type ProviderNetworks struct { // Network is the neutron provider specific network name used // to provision provider networks e.g. VLANs for bare metal clusters. Network *string `json:"physicalNetwork,omitempty"` // VLAN is the VLAN configuration. If not specified and a VLAN provider // network is requested then the ID will be allocated between 1-6094 // inclusive. VLAN *VLANSpec `json:"vlan,omitempty"` }
func (*ProviderNetworks) DeepCopy ¶ added in v0.1.26
func (in *ProviderNetworks) DeepCopy() *ProviderNetworks
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProviderNetworks.
func (*ProviderNetworks) DeepCopyInto ¶ added in v0.1.26
func (in *ProviderNetworks) DeepCopyInto(out *ProviderNetworks)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Quota ¶ added in v0.1.38
type Quota struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec QuotaSpec `json:"spec"` Status QuotaStatus `json:"status,omitempty"` }
Quota defines resource limits for identities. We don't want to be concerned with Hertz and bytes, instead we want to expose higher level primitives like flavors and how many they are. This removes a lot of the burden from clients. Where we have to be careful is with overheads, e.g. a machine implicitly defines CPUs, memory and storage, but this will also need networks, NICs and other supporting resources. Quotas are scoped to identities, and also to a specific client, as this avoids having to worry about IPC and split brain concerns. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*Quota) DeepCopy ¶ added in v0.1.38
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Quota.
func (*Quota) DeepCopyInto ¶ added in v0.1.38
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Quota) DeepCopyObject ¶ added in v0.1.38
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QuotaList ¶ added in v0.1.38
type QuotaList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Quota `json:"items"` }
QuotaList is a typed list of quotas. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*QuotaList) DeepCopy ¶ added in v0.1.38
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuotaList.
func (*QuotaList) DeepCopyInto ¶ added in v0.1.38
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*QuotaList) DeepCopyObject ¶ added in v0.1.38
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type QuotaSpec ¶ added in v0.1.38
type QuotaSpec struct { // Tags are aribrary user data. Tags unikornv1core.TagList `json:"tags,omitempty"` // Flavors is a list of flavors and their count. // +listType=map // +listMapKey=id Flavors []FlavorQuota `json:"flavors,omitempty"` }
func (*QuotaSpec) DeepCopy ¶ added in v0.1.38
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuotaSpec.
func (*QuotaSpec) DeepCopyInto ¶ added in v0.1.38
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QuotaStatus ¶ added in v0.1.38
type QuotaStatus struct { }
func (*QuotaStatus) DeepCopy ¶ added in v0.1.38
func (in *QuotaStatus) DeepCopy() *QuotaStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuotaStatus.
func (*QuotaStatus) DeepCopyInto ¶ added in v0.1.38
func (in *QuotaStatus) DeepCopyInto(out *QuotaStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Region ¶
type Region struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RegionSpec `json:"spec"` Status RegionStatus `json:"status,omitempty"` }
Region defines a geographical region where clusters can be provisioned. A region defines the endpoints that can be used to derive information about the provider for that region. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:subresource:status +kubebuilder:printcolumn:name="display name",type="string",JSONPath=".metadata.labels['unikorn-cloud\\.org/name']" +kubebuilder:printcolumn:name="provider",type="string",JSONPath=".spec.provider" +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*Region) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Region.
func (*Region) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Region) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RegionList ¶
type RegionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Region `json:"items"` }
RegionList is a typed list of regions. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*RegionList) DeepCopy ¶
func (in *RegionList) DeepCopy() *RegionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionList.
func (*RegionList) DeepCopyInto ¶
func (in *RegionList) DeepCopyInto(out *RegionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RegionList) DeepCopyObject ¶
func (in *RegionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RegionOpenstackComputeSpec ¶
type RegionOpenstackComputeSpec struct { // ServerGroupPolicy defines the anti-affinity policy to use for // scheduling cluster nodes. Defaults to "soft-anti-affinity". ServerGroupPolicy *string `json:"serverGroupPolicy,omitempty"` // Flavors defines how flavors are filtered and reported to // clients. If not defined, then all flavors are exported. Flavors *OpenstackFlavorsSpec `json:"flavors,omitempty"` }
func (*RegionOpenstackComputeSpec) DeepCopy ¶
func (in *RegionOpenstackComputeSpec) DeepCopy() *RegionOpenstackComputeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionOpenstackComputeSpec.
func (*RegionOpenstackComputeSpec) DeepCopyInto ¶
func (in *RegionOpenstackComputeSpec) DeepCopyInto(out *RegionOpenstackComputeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionOpenstackIdentitySpec ¶
type RegionOpenstackIdentitySpec struct { // ClusterRoles are the roles required to be assigned to an application // credential in order to provision, scale and deprovision a cluster, along // with any required for CNI/CSI functionality. ClusterRoles []string `json:"clusterRoles,omitempty"` }
func (*RegionOpenstackIdentitySpec) DeepCopy ¶
func (in *RegionOpenstackIdentitySpec) DeepCopy() *RegionOpenstackIdentitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionOpenstackIdentitySpec.
func (*RegionOpenstackIdentitySpec) DeepCopyInto ¶
func (in *RegionOpenstackIdentitySpec) DeepCopyInto(out *RegionOpenstackIdentitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionOpenstackImageSpec ¶
type RegionOpenstackImageSpec struct { // Selector defines a set of rules to lookup images. // If not specified, all images are selected. Selector *ImageSelector `json:"selector,omitempty"` }
func (*RegionOpenstackImageSpec) DeepCopy ¶
func (in *RegionOpenstackImageSpec) DeepCopy() *RegionOpenstackImageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionOpenstackImageSpec.
func (*RegionOpenstackImageSpec) DeepCopyInto ¶
func (in *RegionOpenstackImageSpec) DeepCopyInto(out *RegionOpenstackImageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionOpenstackNetworkSpec ¶ added in v0.1.17
type RegionOpenstackNetworkSpec struct { // ExternalNetworks allows external network options to be specified. ExternalNetworks *ExternalNetworks `json:"externalNetworks,omitempty"` // ProviderNetworks allows provider networks to be configured. ProviderNetworks *ProviderNetworks `json:"providerNetworks,omitempty"` }
func (*RegionOpenstackNetworkSpec) DeepCopy ¶ added in v0.1.17
func (in *RegionOpenstackNetworkSpec) DeepCopy() *RegionOpenstackNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionOpenstackNetworkSpec.
func (*RegionOpenstackNetworkSpec) DeepCopyInto ¶ added in v0.1.17
func (in *RegionOpenstackNetworkSpec) DeepCopyInto(out *RegionOpenstackNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RegionOpenstackNetworkSpec) UseProviderNetworks ¶ added in v0.1.46
func (s *RegionOpenstackNetworkSpec) UseProviderNetworks() bool
type RegionOpenstackSpec ¶
type RegionOpenstackSpec struct { // Endpoint is the Keystone URL e.g. https://foo.bar:5000. Endpoint string `json:"endpoint"` // ServiceAccountSecretName points to the secret containing credentials // required to perform the tasks the provider needs to perform. ServiceAccountSecret *NamespacedObject `json:"serviceAccountSecret"` // Identity is configuration for the identity service. Identity *RegionOpenstackIdentitySpec `json:"identity,omitempty"` // Compute is configuration for the compute service. Compute *RegionOpenstackComputeSpec `json:"compute,omitempty"` // Image is configuration for the image service. Image *RegionOpenstackImageSpec `json:"image,omitempty"` // Network is configuration for the network service. Network *RegionOpenstackNetworkSpec `json:"network,omitempty"` }
func (*RegionOpenstackSpec) DeepCopy ¶
func (in *RegionOpenstackSpec) DeepCopy() *RegionOpenstackSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionOpenstackSpec.
func (*RegionOpenstackSpec) DeepCopyInto ¶
func (in *RegionOpenstackSpec) DeepCopyInto(out *RegionOpenstackSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionSpec ¶
type RegionSpec struct { // Tags are aribrary user data. Tags unikornv1core.TagList `json:"tags,omitempty"` // Type defines the provider type. Provider Provider `json:"provider"` // Openstack is provider specific configuration for the region. Openstack *RegionOpenstackSpec `json:"openstack,omitempty"` }
RegionSpec defines metadata about the region.
func (*RegionSpec) DeepCopy ¶
func (in *RegionSpec) DeepCopy() *RegionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSpec.
func (*RegionSpec) DeepCopyInto ¶
func (in *RegionSpec) DeepCopyInto(out *RegionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionStatus ¶
type RegionStatus struct { // Current service state of a region. Conditions []unikornv1core.Condition `json:"conditions,omitempty"` }
RegionStatus defines the status of the region.
func (*RegionStatus) DeepCopy ¶
func (in *RegionStatus) DeepCopy() *RegionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionStatus.
func (*RegionStatus) DeepCopyInto ¶
func (in *RegionStatus) DeepCopyInto(out *RegionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroup ¶ added in v0.1.45
type SecurityGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SecurityGroupSpec `json:"spec"` Status SecurityGroupStatus `json:"status,omitempty"` }
SecurityGroup defines a security group beloning to an identity. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:subresource:status +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*SecurityGroup) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroup) DeepCopy() *SecurityGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroup.
func (*SecurityGroup) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroup) DeepCopyInto(out *SecurityGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityGroup) DeepCopyObject ¶ added in v0.1.45
func (in *SecurityGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SecurityGroup) Paused ¶ added in v0.1.45
func (c *SecurityGroup) Paused() bool
Paused implements the ReconcilePauser interface.
func (*SecurityGroup) ResourceLabels ¶ added in v0.1.45
func (c *SecurityGroup) ResourceLabels() (labels.Set, error)
ResourceLabels generates a set of labels to uniquely identify the resource if it were to be placed in a single global namespace.
func (*SecurityGroup) StatusConditionRead ¶ added in v0.1.45
func (c *SecurityGroup) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
StatusConditionRead scans the status conditions for an existing condition whose type matches.
func (*SecurityGroup) StatusConditionWrite ¶ added in v0.1.45
func (c *SecurityGroup) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, reason unikornv1core.ConditionReason, message string)
StatusConditionWrite either adds or updates a condition in the cluster manager status. If the condition, status and message match an existing condition the update is ignored.
type SecurityGroupList ¶ added in v0.1.45
type SecurityGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SecurityGroup `json:"items"` }
SecurityGroupList is a typed list of security groups. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*SecurityGroupList) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupList) DeepCopy() *SecurityGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupList.
func (*SecurityGroupList) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupList) DeepCopyInto(out *SecurityGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityGroupList) DeepCopyObject ¶ added in v0.1.45
func (in *SecurityGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SecurityGroupRule ¶ added in v0.1.45
type SecurityGroupRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SecurityGroupRuleSpec `json:"spec"` Status SecurityGroupRuleStatus `json:"status,omitempty"` }
SecurityGroupRule defines a security group rule beloning to a security group. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:subresource:status +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*SecurityGroupRule) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupRule) DeepCopy() *SecurityGroupRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRule.
func (*SecurityGroupRule) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupRule) DeepCopyInto(out *SecurityGroupRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityGroupRule) DeepCopyObject ¶ added in v0.1.45
func (in *SecurityGroupRule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SecurityGroupRule) Paused ¶ added in v0.1.45
func (c *SecurityGroupRule) Paused() bool
Paused implements the ReconcilePauser interface.
func (*SecurityGroupRule) ResourceLabels ¶ added in v0.1.45
func (c *SecurityGroupRule) ResourceLabels() (labels.Set, error)
ResourceLabels generates a set of labels to uniquely identify the resource if it were to be placed in a single global namespace.
func (*SecurityGroupRule) StatusConditionRead ¶ added in v0.1.45
func (c *SecurityGroupRule) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
StatusConditionRead scans the status conditions for an existing condition whose type matches.
func (*SecurityGroupRule) StatusConditionWrite ¶ added in v0.1.45
func (c *SecurityGroupRule) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, reason unikornv1core.ConditionReason, message string)
StatusConditionWrite either adds or updates a condition in the cluster manager status. If the condition, status and message match an existing condition the update is ignored.
type SecurityGroupRuleDirection ¶ added in v0.1.45
type SecurityGroupRuleDirection string
+kubebuilder:validation:Enum=ingress;egress
type SecurityGroupRuleList ¶ added in v0.1.45
type SecurityGroupRuleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SecurityGroupRule `json:"items"` }
SecurityGroupRuleList is a typed list of security group rules. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*SecurityGroupRuleList) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupRuleList) DeepCopy() *SecurityGroupRuleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRuleList.
func (*SecurityGroupRuleList) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupRuleList) DeepCopyInto(out *SecurityGroupRuleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityGroupRuleList) DeepCopyObject ¶ added in v0.1.45
func (in *SecurityGroupRuleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SecurityGroupRulePort ¶ added in v0.1.45
type SecurityGroupRulePort struct { // Number is the port number. Number *int `json:"number,omitempty"` // Range is the port range. Range *SecurityGroupRulePortRange `json:"range,omitempty"` }
+kubebuilder:validation:XValidation:message="at least one of number or range must be defined",rule=(has(self.number) || has(self.range))
func (*SecurityGroupRulePort) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupRulePort) DeepCopy() *SecurityGroupRulePort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRulePort.
func (*SecurityGroupRulePort) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupRulePort) DeepCopyInto(out *SecurityGroupRulePort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupRulePortRange ¶ added in v0.1.45
type SecurityGroupRulePortRange struct { // Start is the start of the range. // +kubebuilder:validation:Minimum=1 Start int `json:"start"` // End is the end of the range. // +kubebuilder:validation:Maximum=65535 End int `json:"end"` }
func (*SecurityGroupRulePortRange) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupRulePortRange) DeepCopy() *SecurityGroupRulePortRange
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRulePortRange.
func (*SecurityGroupRulePortRange) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupRulePortRange) DeepCopyInto(out *SecurityGroupRulePortRange)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupRuleProtocol ¶ added in v0.1.45
type SecurityGroupRuleProtocol string
+kubebuilder:validation:Enum=tcp;udp
type SecurityGroupRuleSpec ¶ added in v0.1.45
type SecurityGroupRuleSpec struct { // Pause, if true, will inhibit reconciliation. Pause bool `json:"pause,omitempty"` // Tags are aribrary user data. Tags unikornv1core.TagList `json:"tags,omitempty"` // Direction is the direction of the rule. Direction *SecurityGroupRuleDirection `json:"direction"` // Protocol is the protocol of the rule. Protocol *SecurityGroupRuleProtocol `json:"protocol"` // Port is the port or range of ports. Port *SecurityGroupRulePort `json:"port"` // CIDR is the CIDR block to allow traffic from. CIDR *unikornv1core.IPv4Prefix `json:"cidr"` }
func (*SecurityGroupRuleSpec) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupRuleSpec) DeepCopy() *SecurityGroupRuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRuleSpec.
func (*SecurityGroupRuleSpec) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupRuleSpec) DeepCopyInto(out *SecurityGroupRuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupRuleStatus ¶ added in v0.1.45
type SecurityGroupRuleStatus struct { // Current service state of a security group rule. Conditions []unikornv1core.Condition `json:"conditions,omitempty"` }
func (*SecurityGroupRuleStatus) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupRuleStatus) DeepCopy() *SecurityGroupRuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupRuleStatus.
func (*SecurityGroupRuleStatus) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupRuleStatus) DeepCopyInto(out *SecurityGroupRuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupSpec ¶ added in v0.1.45
type SecurityGroupSpec struct { // Pause, if true, will inhibit reconciliation. Pause bool `json:"pause,omitempty"` // Tags are an abitrary list of key/value pairs that a client // may populate to store metadata for the resource. // Tags are aribrary user data. Tags unikornv1core.TagList `json:"tags,omitempty"` // Provider defines the provider type. Provider Provider `json:"provider"` }
func (*SecurityGroupSpec) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupSpec) DeepCopy() *SecurityGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupSpec.
func (*SecurityGroupSpec) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupSpec) DeepCopyInto(out *SecurityGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupStatus ¶ added in v0.1.45
type SecurityGroupStatus struct { // Current service state of a security group. Conditions []unikornv1core.Condition `json:"conditions,omitempty"` }
func (*SecurityGroupStatus) DeepCopy ¶ added in v0.1.45
func (in *SecurityGroupStatus) DeepCopy() *SecurityGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupStatus.
func (*SecurityGroupStatus) DeepCopyInto ¶ added in v0.1.45
func (in *SecurityGroupStatus) DeepCopyInto(out *SecurityGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Server ¶ added in v0.1.46
type Server struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ServerSpec `json:"spec"` Status ServerStatus `json:"status,omitempty"` }
Server defines a server beloning to an identity. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:subresource:status +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:printcolumn:name="privateIP",type="string",JSONPath=".status.privateIP" +kubebuilder:printcolumn:name="publicIP",type="string",JSONPath=".status.publicIP"
func (*Server) DeepCopy ¶ added in v0.1.46
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Server.
func (*Server) DeepCopyInto ¶ added in v0.1.46
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Server) DeepCopyObject ¶ added in v0.1.46
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Server) ResourceLabels ¶ added in v0.1.46
ResourceLabels generates a set of labels to uniquely identify the resource if it were to be placed in a single global namespace.
func (*Server) StatusConditionRead ¶ added in v0.1.46
func (c *Server) StatusConditionRead(t unikornv1core.ConditionType) (*unikornv1core.Condition, error)
StatusConditionRead scans the status conditions for an existing condition whose type matches.
func (*Server) StatusConditionWrite ¶ added in v0.1.46
func (c *Server) StatusConditionWrite(t unikornv1core.ConditionType, status corev1.ConditionStatus, reason unikornv1core.ConditionReason, message string)
StatusConditionWrite either adds or updates a condition in the cluster manager status. If the condition, status and message match an existing condition the update is ignored.
type ServerImage ¶ added in v0.1.46
type ServerImage struct { // ID is the image ID. If specified, it has priority over the selector. ID *string `json:"id,omitempty"` // Selector defines a set of rules to lookup images. Selector *ServerImageSelector `json:"selector,omitempty"` }
+kubebuilder:validation:XValidation:message="at least one of id or selector must be defined",rule=(has(self.id) || has(self.selector))
func (*ServerImage) DeepCopy ¶ added in v0.1.46
func (in *ServerImage) DeepCopy() *ServerImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerImage.
func (*ServerImage) DeepCopyInto ¶ added in v0.1.46
func (in *ServerImage) DeepCopyInto(out *ServerImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerImageSelector ¶ added in v0.1.46
type ServerImageSelector struct { // OS is the operating system of the image. OS string `json:"os"` // Version is the version of the image. Version string `json:"version"` }
func (*ServerImageSelector) DeepCopy ¶ added in v0.1.46
func (in *ServerImageSelector) DeepCopy() *ServerImageSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerImageSelector.
func (*ServerImageSelector) DeepCopyInto ¶ added in v0.1.46
func (in *ServerImageSelector) DeepCopyInto(out *ServerImageSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerList ¶ added in v0.1.46
type ServerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Server `json:"items"` }
ServerList is a typed list of servers. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*ServerList) DeepCopy ¶ added in v0.1.46
func (in *ServerList) DeepCopy() *ServerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerList.
func (*ServerList) DeepCopyInto ¶ added in v0.1.46
func (in *ServerList) DeepCopyInto(out *ServerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServerList) DeepCopyObject ¶ added in v0.1.46
func (in *ServerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServerNetworkSpec ¶ added in v0.1.46
type ServerNetworkSpec struct { // ID is the physical network ID. ID string `json:"id"` }
func (*ServerNetworkSpec) DeepCopy ¶ added in v0.1.46
func (in *ServerNetworkSpec) DeepCopy() *ServerNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerNetworkSpec.
func (*ServerNetworkSpec) DeepCopyInto ¶ added in v0.1.46
func (in *ServerNetworkSpec) DeepCopyInto(out *ServerNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerPublicIPAllocationSpec ¶ added in v0.1.46
type ServerPublicIPAllocationSpec struct { // Enabled is a flag to enable public IP allocation. Enabled bool `json:"enabled,omitempty"` }
func (*ServerPublicIPAllocationSpec) DeepCopy ¶ added in v0.1.46
func (in *ServerPublicIPAllocationSpec) DeepCopy() *ServerPublicIPAllocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerPublicIPAllocationSpec.
func (*ServerPublicIPAllocationSpec) DeepCopyInto ¶ added in v0.1.46
func (in *ServerPublicIPAllocationSpec) DeepCopyInto(out *ServerPublicIPAllocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerSecurityGroupSpec ¶ added in v0.1.46
type ServerSecurityGroupSpec struct { // ID is the security group ID. ID string `json:"id"` }
func (*ServerSecurityGroupSpec) DeepCopy ¶ added in v0.1.46
func (in *ServerSecurityGroupSpec) DeepCopy() *ServerSecurityGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSecurityGroupSpec.
func (*ServerSecurityGroupSpec) DeepCopyInto ¶ added in v0.1.46
func (in *ServerSecurityGroupSpec) DeepCopyInto(out *ServerSecurityGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerSpec ¶ added in v0.1.46
type ServerSpec struct { // Pause, if true, will inhibit reconciliation. Pause bool `json:"pause,omitempty"` // Tags are an abitrary list of key/value pairs that a client // may populate to store metadata for the resource. Tags unikornv1core.TagList `json:"tags,omitempty"` // Provider defines the provider type. Provider Provider `json:"provider"` // FlavorID is the flavor ID. FlavorID string `json:"flavorID"` // Image defines a set of rules to lookup for the server image. Image *ServerImage `json:"image"` // SecurityGroups is the server security groups. SecurityGroups []ServerSecurityGroupSpec `json:"securityGroups,omitempty"` // PublicIPAllocation is the server public IP allocation configuration. PublicIPAllocation *ServerPublicIPAllocationSpec `json:"publicIPAllocation,omitempty"` // Networks is the server network configuration. Networks []ServerNetworkSpec `json:"networks,omitempty"` }
func (*ServerSpec) DeepCopy ¶ added in v0.1.46
func (in *ServerSpec) DeepCopy() *ServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSpec.
func (*ServerSpec) DeepCopyInto ¶ added in v0.1.46
func (in *ServerSpec) DeepCopyInto(out *ServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerStatus ¶ added in v0.1.46
type ServerStatus struct { // Current service state of a cluster manager. Conditions []unikornv1core.Condition `json:"conditions,omitempty"` // PrivateIP is the private IP address of the server. PrivateIP *string `json:"privateIP,omitempty"` // PublicIP is the public IP address of the server. PublicIP *string `json:"publicIP,omitempty"` }
func (*ServerStatus) DeepCopy ¶ added in v0.1.46
func (in *ServerStatus) DeepCopy() *ServerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerStatus.
func (*ServerStatus) DeepCopyInto ¶ added in v0.1.46
func (in *ServerStatus) DeepCopyInto(out *ServerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VLANAllocation ¶ added in v0.1.34
type VLANAllocation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec VLANAllocationSpec `json:"spec"` Status VLANAllocationStatus `json:"status,omitempty"` }
VLANAllocation is used to manage VLAN allocations. Only a single instance is allowed per region. As this is a custom resource, we are guaranteed atomicity due to Kubernetes' speculative locking implementation. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:scope=Namespaced,categories=unikorn +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*VLANAllocation) DeepCopy ¶ added in v0.1.34
func (in *VLANAllocation) DeepCopy() *VLANAllocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANAllocation.
func (*VLANAllocation) DeepCopyInto ¶ added in v0.1.34
func (in *VLANAllocation) DeepCopyInto(out *VLANAllocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VLANAllocation) DeepCopyObject ¶ added in v0.1.34
func (in *VLANAllocation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VLANAllocationEntry ¶ added in v0.1.34
type VLANAllocationEntry struct { // ID is the VLAN ID. ID int `json:"id"` // NetworkID is the physical network/provider specific physical network // identifier that owns this entry. NetworkID string `json:"physicalNetworkID"` }
func (*VLANAllocationEntry) DeepCopy ¶ added in v0.1.34
func (in *VLANAllocationEntry) DeepCopy() *VLANAllocationEntry
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANAllocationEntry.
func (*VLANAllocationEntry) DeepCopyInto ¶ added in v0.1.34
func (in *VLANAllocationEntry) DeepCopyInto(out *VLANAllocationEntry)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VLANAllocationList ¶ added in v0.1.34
type VLANAllocationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VLANAllocation `json:"items"` }
VLANAllocationList is a typed list of VLAN allocations. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*VLANAllocationList) DeepCopy ¶ added in v0.1.34
func (in *VLANAllocationList) DeepCopy() *VLANAllocationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANAllocationList.
func (*VLANAllocationList) DeepCopyInto ¶ added in v0.1.34
func (in *VLANAllocationList) DeepCopyInto(out *VLANAllocationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VLANAllocationList) DeepCopyObject ¶ added in v0.1.34
func (in *VLANAllocationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VLANAllocationSpec ¶ added in v0.1.34
type VLANAllocationSpec struct { // Allocations are an explcit set of VLAN allocations. Allocations []VLANAllocationEntry `json:"allocations,omitempty"` }
func (*VLANAllocationSpec) DeepCopy ¶ added in v0.1.34
func (in *VLANAllocationSpec) DeepCopy() *VLANAllocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANAllocationSpec.
func (*VLANAllocationSpec) DeepCopyInto ¶ added in v0.1.34
func (in *VLANAllocationSpec) DeepCopyInto(out *VLANAllocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VLANAllocationStatus ¶ added in v0.1.34
type VLANAllocationStatus struct { }
func (*VLANAllocationStatus) DeepCopy ¶ added in v0.1.34
func (in *VLANAllocationStatus) DeepCopy() *VLANAllocationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANAllocationStatus.
func (*VLANAllocationStatus) DeepCopyInto ¶ added in v0.1.34
func (in *VLANAllocationStatus) DeepCopyInto(out *VLANAllocationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VLANSegment ¶ added in v0.1.18
type VLANSegment struct { // StartID is VLAN ID at the start of the range. // +kubebuilder:validation:Minimum=1 StartID int `json:"startId"` // EndID is the VLAN ID at the end of the range. // +kubebuilder:validation:Maximum=4094 EndID int `json:"endId"` }
func (*VLANSegment) DeepCopy ¶ added in v0.1.18
func (in *VLANSegment) DeepCopy() *VLANSegment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANSegment.
func (*VLANSegment) DeepCopyInto ¶ added in v0.1.18
func (in *VLANSegment) DeepCopyInto(out *VLANSegment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VLANSpec ¶ added in v0.1.18
type VLANSpec struct { // Segements allow blocks of VLAN IDs to be allocated from. In a multi // tenant system, it's possible and perhaps necessary, that this controller // be limited to certain ranges to avoid split brain scenarios when another // user or system is allocating VLAN IDs for itself. // +kubebuilder:validation:MinItems=1 Segments []VLANSegment `json:"segments,omitempty"` }
func (*VLANSpec) DeepCopy ¶ added in v0.1.18
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLANSpec.
func (*VLANSpec) DeepCopyInto ¶ added in v0.1.18
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.