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 FlavorSelector
- type GPUSpec
- type GPUVendor
- type Identity
- type IdentityList
- type IdentitySpec
- type IdentitySpecOpenStack
- type IdentityStatus
- type ImageSelector
- type NamespacedObject
- type NetworkSelector
- type OpenstackFlavorSelectionPolicy
- type OpenstackFlavorsSpec
- type OpenstackProviderNetworkSpec
- type PhysicalNetwork
- type PhysicalNetworkList
- type PhysicalNetworkSpec
- type PhysicalNetworkStatus
- type Provider
- type ProviderNetworks
- type Region
- type RegionList
- type RegionOpenstackComputeSpec
- type RegionOpenstackIdentitySpec
- type RegionOpenstackImageSpec
- type RegionOpenstackNetworkSpec
- type RegionOpenstackSpec
- type RegionSpec
- type RegionStatus
- type Tag
- type TagList
- 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 )
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 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"` // Memory is the amount of memory each logical GPU has access to. Memory *resource.Quantity `json:"memory"` // Count is the number of logical GPUs in the flavor. Count int `json:"count"` }
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"` }
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: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.
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 { // Tags are an abitrary list of key/value pairs that a client // may populate to store metadata for the resource. Tags TagList `json:"tags,omitempty"` // Provider defines the provider type. Provider Provider `json:"provider"` // OpenStack is populated when the provider type is set to "openstack". OpenStack *IdentitySpecOpenStack `json:"openstack,omitempty"` }
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 IdentitySpecOpenStack ¶
type IdentitySpecOpenStack struct { // CloudConfig is a client compatible cloud configuration. CloudConfig []byte `json:"cloudConfig"` // Cloud is the cloud name in the cloud config to use. Cloud string `json:"cloud"` // UserID is the ID of the user created for the identity. UserID string `json:"userID"` // Password is the login for the user. Password string `json:"password"` // ProjectID is the ID of the project created for the identity. ProjectID string `json:"projectID"` // ServerGroupID is the ID of the server group created for the identity. ServerGroupID *string `json:"serverGroupID,omitempty"` }
func (*IdentitySpecOpenStack) DeepCopy ¶
func (in *IdentitySpecOpenStack) DeepCopy() *IdentitySpecOpenStack
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentitySpecOpenStack.
func (*IdentitySpecOpenStack) DeepCopyInto ¶
func (in *IdentitySpecOpenStack) DeepCopyInto(out *IdentitySpecOpenStack)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityStatus ¶
type IdentityStatus struct { }
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 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 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 OpenstackProviderNetworkSpec ¶ added in v0.1.18
type OpenstackProviderNetworkSpec struct { // ID is the network ID. ID string `json:"id"` // VlanID is the ID if the VLAN for IPAM. VlanID int `json:"vlanID"` }
func (*OpenstackProviderNetworkSpec) DeepCopy ¶ added in v0.1.18
func (in *OpenstackProviderNetworkSpec) DeepCopy() *OpenstackProviderNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenstackProviderNetworkSpec.
func (*OpenstackProviderNetworkSpec) DeepCopyInto ¶ added in v0.1.18
func (in *OpenstackProviderNetworkSpec) DeepCopyInto(out *OpenstackProviderNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PhysicalNetwork ¶ added in v0.1.18
type PhysicalNetwork struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PhysicalNetworkSpec `json:"spec"` Status PhysicalNetworkStatus `json:"status"` }
PhysicalNetwork 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="status",type="string",JSONPath=".status.conditions[?(@.type==\"Available\")].reason" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp"
func (*PhysicalNetwork) DeepCopy ¶ added in v0.1.18
func (in *PhysicalNetwork) DeepCopy() *PhysicalNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalNetwork.
func (*PhysicalNetwork) DeepCopyInto ¶ added in v0.1.18
func (in *PhysicalNetwork) DeepCopyInto(out *PhysicalNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PhysicalNetwork) DeepCopyObject ¶ added in v0.1.18
func (in *PhysicalNetwork) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PhysicalNetworkList ¶ added in v0.1.18
type PhysicalNetworkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PhysicalNetwork `json:"items"` }
PhysicalNetworkList s a typed list of physical networks. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*PhysicalNetworkList) DeepCopy ¶ added in v0.1.18
func (in *PhysicalNetworkList) DeepCopy() *PhysicalNetworkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalNetworkList.
func (*PhysicalNetworkList) DeepCopyInto ¶ added in v0.1.18
func (in *PhysicalNetworkList) DeepCopyInto(out *PhysicalNetworkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PhysicalNetworkList) DeepCopyObject ¶ added in v0.1.18
func (in *PhysicalNetworkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PhysicalNetworkSpec ¶ added in v0.1.18
type PhysicalNetworkSpec struct { // Tags are an abitrary list of key/value pairs that a client // may populate to store metadata for the resource. Tags TagList `json:"tags,omitempty"` // ProviderNetwork is the provider network for port allocation of // virtual machines. ProviderNetwork *OpenstackProviderNetworkSpec `json:"providerNetwork,omitempty"` }
func (*PhysicalNetworkSpec) DeepCopy ¶ added in v0.1.18
func (in *PhysicalNetworkSpec) DeepCopy() *PhysicalNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalNetworkSpec.
func (*PhysicalNetworkSpec) DeepCopyInto ¶ added in v0.1.18
func (in *PhysicalNetworkSpec) DeepCopyInto(out *PhysicalNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PhysicalNetworkStatus ¶ added in v0.1.18
type PhysicalNetworkStatus struct { }
func (*PhysicalNetworkStatus) DeepCopy ¶ added in v0.1.18
func (in *PhysicalNetworkStatus) DeepCopy() *PhysicalNetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalNetworkStatus.
func (*PhysicalNetworkStatus) DeepCopyInto ¶ added in v0.1.18
func (in *PhysicalNetworkStatus) DeepCopyInto(out *PhysicalNetworkStatus)
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 { // PhysicalNetwork is the neutron provider specific network name used // to provision provider networks e.g. VLANs for bare metal clusters. PhysicalNetwork *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 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.
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 { // 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 Tag ¶ added in v0.1.18
type Tag struct { // Name of the tag. Name string `json:"name"` // Value of the tag. Value string `json:"value"` }
Tag is an arbirary key/value.
func (*Tag) DeepCopy ¶ added in v0.1.18
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tag.
func (*Tag) DeepCopyInto ¶ added in v0.1.18
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TagList ¶ added in v0.1.18
type TagList []Tag
TagList is an ordered list of tags.
func (TagList) DeepCopy ¶ added in v0.1.18
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagList.
func (TagList) DeepCopyInto ¶ added in v0.1.18
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.