Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- func NstanceShardGroupName(group, shard string) string
- type APIEndpoint
- type NstanceCluster
- type NstanceClusterInitializationStatus
- type NstanceClusterList
- type NstanceClusterSpec
- type NstanceClusterStatus
- type NstanceMachine
- type NstanceMachineList
- type NstanceMachinePool
- type NstanceMachinePoolList
- type NstanceMachinePoolSpec
- type NstanceMachinePoolStatus
- type NstanceMachineSpec
- type NstanceMachineStatus
- type NstanceMachineTemplate
- type NstanceMachineTemplateList
- type NstanceMachineTemplateResource
- type NstanceMachineTemplateSpec
- type NstanceShardGroup
- type NstanceShardGroupConfig
- type NstanceShardGroupList
- type NstanceShardGroupSpec
- type NstanceShardGroupStatus
Constants ¶
const ( // ConditionTypeShardGroupReady indicates spec.size was acknowledged by server ConditionTypeShardGroupReady = "Ready" // ConditionTypeShardReachable indicates gRPC connection to shard is healthy ConditionTypeShardReachable = "ShardReachable" // ConditionTypeConfigValid indicates merged config is valid ConditionTypeConfigValid = "ConfigValid" )
Condition types for NstanceShardGroup
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func NstanceShardGroupName ¶
NstanceShardGroupName returns the resource name for a NstanceShardGroup. Format: {group}--{shard}
Types ¶
type APIEndpoint ¶
type APIEndpoint struct {
// Host is the hostname on which the API server is serving.
// +kubebuilder:validation:MinLength=1
Host string `json:"host"`
// Port is the port on which the API server is serving.
// +kubebuilder:validation:Minimum=1
Port int32 `json:"port"`
}
APIEndpoint represents a reachable Kubernetes API endpoint.
func (*APIEndpoint) DeepCopy ¶
func (in *APIEndpoint) DeepCopy() *APIEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIEndpoint.
func (*APIEndpoint) DeepCopyInto ¶
func (in *APIEndpoint) DeepCopyInto(out *APIEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceCluster ¶
type NstanceCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NstanceClusterSpec `json:"spec,omitempty"`
Status NstanceClusterStatus `json:"status,omitempty"`
}
NstanceCluster is the Schema for the nstanceclusters API. It is a stub resource that satisfies the CAPI Cluster infrastructureRef contract. Nstance does not require cluster-level infrastructure provisioning.
func (*NstanceCluster) DeepCopy ¶
func (in *NstanceCluster) DeepCopy() *NstanceCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceCluster.
func (*NstanceCluster) DeepCopyInto ¶
func (in *NstanceCluster) DeepCopyInto(out *NstanceCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceCluster) DeepCopyObject ¶
func (in *NstanceCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceClusterInitializationStatus ¶
type NstanceClusterInitializationStatus struct {
// Provisioned is true when cluster infrastructure is provisioned.
// Always true for Nstance since there is no cluster-level infrastructure.
// +optional
Provisioned *bool `json:"provisioned,omitempty"`
}
NstanceClusterInitializationStatus provides observations of the initialization process.
func (*NstanceClusterInitializationStatus) DeepCopy ¶
func (in *NstanceClusterInitializationStatus) DeepCopy() *NstanceClusterInitializationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceClusterInitializationStatus.
func (*NstanceClusterInitializationStatus) DeepCopyInto ¶
func (in *NstanceClusterInitializationStatus) DeepCopyInto(out *NstanceClusterInitializationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceClusterList ¶
type NstanceClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NstanceCluster `json:"items"`
}
NstanceClusterList contains a list of NstanceCluster
func (*NstanceClusterList) DeepCopy ¶
func (in *NstanceClusterList) DeepCopy() *NstanceClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceClusterList.
func (*NstanceClusterList) DeepCopyInto ¶
func (in *NstanceClusterList) DeepCopyInto(out *NstanceClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceClusterList) DeepCopyObject ¶
func (in *NstanceClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceClusterSpec ¶
type NstanceClusterSpec struct {
// ControlPlaneEndpoint represents the endpoint for the cluster's API server.
// Set to the management cluster's API server endpoint to satisfy the CAPI
// infrastructure contract. Nstance does not provision control planes.
// +optional
ControlPlaneEndpoint APIEndpoint `json:"controlPlaneEndpoint,omitempty"`
}
NstanceClusterSpec defines the desired state of NstanceCluster. Nstance manages infrastructure at the pool/machine level, not the cluster level. NstanceCluster exists only to satisfy the CAPI contract requiring an infrastructure cluster ref.
func (*NstanceClusterSpec) DeepCopy ¶
func (in *NstanceClusterSpec) DeepCopy() *NstanceClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceClusterSpec.
func (*NstanceClusterSpec) DeepCopyInto ¶
func (in *NstanceClusterSpec) DeepCopyInto(out *NstanceClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceClusterStatus ¶
type NstanceClusterStatus struct {
// Initialization provides observations of the NstanceCluster initialization process.
// +optional
Initialization NstanceClusterInitializationStatus `json:"initialization,omitempty"`
// Conditions represent the current state of the NstanceCluster.
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
NstanceClusterStatus defines the observed state of NstanceCluster.
func (*NstanceClusterStatus) DeepCopy ¶
func (in *NstanceClusterStatus) DeepCopy() *NstanceClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceClusterStatus.
func (*NstanceClusterStatus) DeepCopyInto ¶
func (in *NstanceClusterStatus) DeepCopyInto(out *NstanceClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceMachine ¶
type NstanceMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NstanceMachineSpec `json:"spec"`
Status NstanceMachineStatus `json:"status,omitempty"`
}
NstanceMachine is the Schema for the nstancemachines API
func (*NstanceMachine) DeepCopy ¶
func (in *NstanceMachine) DeepCopy() *NstanceMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachine.
func (*NstanceMachine) DeepCopyInto ¶
func (in *NstanceMachine) DeepCopyInto(out *NstanceMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceMachine) DeepCopyObject ¶
func (in *NstanceMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceMachineList ¶
type NstanceMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NstanceMachine `json:"items"`
}
NstanceMachineList contains a list of NstanceMachine
func (*NstanceMachineList) DeepCopy ¶
func (in *NstanceMachineList) DeepCopy() *NstanceMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineList.
func (*NstanceMachineList) DeepCopyInto ¶
func (in *NstanceMachineList) DeepCopyInto(out *NstanceMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceMachineList) DeepCopyObject ¶
func (in *NstanceMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceMachinePool ¶
type NstanceMachinePool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NstanceMachinePoolSpec `json:"spec"`
Status NstanceMachinePoolStatus `json:"status,omitempty"`
}
NstanceMachinePool is the Schema for the nstancemachinepools API
func (*NstanceMachinePool) DeepCopy ¶
func (in *NstanceMachinePool) DeepCopy() *NstanceMachinePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachinePool.
func (*NstanceMachinePool) DeepCopyInto ¶
func (in *NstanceMachinePool) DeepCopyInto(out *NstanceMachinePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceMachinePool) DeepCopyObject ¶
func (in *NstanceMachinePool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceMachinePoolList ¶
type NstanceMachinePoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NstanceMachinePool `json:"items"`
}
NstanceMachinePoolList contains a list of NstanceMachinePool
func (*NstanceMachinePoolList) DeepCopy ¶
func (in *NstanceMachinePoolList) DeepCopy() *NstanceMachinePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachinePoolList.
func (*NstanceMachinePoolList) DeepCopyInto ¶
func (in *NstanceMachinePoolList) DeepCopyInto(out *NstanceMachinePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceMachinePoolList) DeepCopyObject ¶
func (in *NstanceMachinePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceMachinePoolSpec ¶
type NstanceMachinePoolSpec struct {
// Group is the Nstance Group key. This can match a static group in
// server config, or be a new key for a dynamic group.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
Group string `json:"group"`
// Shards is the list of zone shards this group should be distributed across.
// Each shard will have a corresponding NstanceShardGroup created.
// Replicas from the MachinePool are distributed across these shards.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinItems=1
Shards []string `json:"shards"`
// Template is the name of the Nstance template defined in server config.
// Required when creating a new dynamic group (no static group with this key).
// Must not be set for groups backed by static config (server will reject).
// +optional
Template string `json:"template,omitempty"`
// InstanceType is an optional override (must be allowed by the Group)
// +optional
InstanceType *string `json:"instanceType,omitempty"`
// SubnetPool specifies which subnet pool to use for new dynamic groups.
// This is a subnet pool ID that references server.subnet_pools map key.
// If not specified, uses the template's default.
// Must not be set for groups backed by static config (server will reject).
// +optional
SubnetPool string `json:"subnetPool,omitempty"`
// Vars are additional vars merged with Group vars (enables node labels, etc.)
// +optional
Vars map[string]string `json:"vars,omitempty"`
// ProviderIDList is the list of provider IDs of running instances across all shards.
// Required by the CAPI InfraMachinePool contract (spec.providerIDList).
// +optional
// +listType=atomic
ProviderIDList []string `json:"providerIDList,omitempty"`
}
NstanceMachinePoolSpec defines the desired state of NstanceMachinePool
func (*NstanceMachinePoolSpec) DeepCopy ¶
func (in *NstanceMachinePoolSpec) DeepCopy() *NstanceMachinePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachinePoolSpec.
func (*NstanceMachinePoolSpec) DeepCopyInto ¶
func (in *NstanceMachinePoolSpec) DeepCopyInto(out *NstanceMachinePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceMachinePoolStatus ¶
type NstanceMachinePoolStatus struct {
// Ready indicates whether the machine pool is ready
// +optional
Ready bool `json:"ready,omitempty"`
// Replicas is the most recently observed number of running instances across all shards.
// Required by the CAPI InfraMachinePool contract (status.replicas).
// +optional
Replicas int32 `json:"replicas"`
// IsStatic indicates this group is backed by static server config.
// When true, spec.template and spec.subnetPool cannot be modified.
// +optional
IsStatic bool `json:"isStatic,omitempty"`
// ObservedGeneration is the generation of the spec that was last observed
// +optional
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// ObservedOwnerGeneration is the generation of the owner MachinePool that was last observed
// +optional
ObservedOwnerGeneration int64 `json:"observedOwnerGeneration,omitempty"`
// Conditions represent the current state of the NstanceMachinePool
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
NstanceMachinePoolStatus defines the observed state of NstanceMachinePool
func (*NstanceMachinePoolStatus) DeepCopy ¶
func (in *NstanceMachinePoolStatus) DeepCopy() *NstanceMachinePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachinePoolStatus.
func (*NstanceMachinePoolStatus) DeepCopyInto ¶
func (in *NstanceMachinePoolStatus) DeepCopyInto(out *NstanceMachinePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceMachineSpec ¶
type NstanceMachineSpec struct {
// Group is the name of the Nstance Group
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
Group string `json:"group"`
// InstanceType is an optional override
// +optional
InstanceType *string `json:"instanceType,omitempty"`
// Vars are additional vars
// +optional
Vars map[string]string `json:"vars,omitempty"`
}
NstanceMachineSpec defines the desired state of NstanceMachine
func (*NstanceMachineSpec) DeepCopy ¶
func (in *NstanceMachineSpec) DeepCopy() *NstanceMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineSpec.
func (*NstanceMachineSpec) DeepCopyInto ¶
func (in *NstanceMachineSpec) DeepCopyInto(out *NstanceMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceMachineStatus ¶
type NstanceMachineStatus struct {
// InstanceID is the Nstance instance ID (server-generated)
// +optional
InstanceID string `json:"instanceID,omitempty"`
// Shard identifies which zone shard this instance is in
// +optional
Shard string `json:"shard,omitempty"`
// ProviderID is the cloud provider instance ID
// +optional
ProviderID string `json:"providerID,omitempty"`
// Ready indicates whether the instance is ready
// +optional
Ready bool `json:"ready,omitempty"`
// Conditions represent the current state of the NstanceMachine
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
NstanceMachineStatus defines the observed state of NstanceMachine
func (*NstanceMachineStatus) DeepCopy ¶
func (in *NstanceMachineStatus) DeepCopy() *NstanceMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineStatus.
func (*NstanceMachineStatus) DeepCopyInto ¶
func (in *NstanceMachineStatus) DeepCopyInto(out *NstanceMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceMachineTemplate ¶
type NstanceMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NstanceMachineTemplateSpec `json:"spec"`
}
NstanceMachineTemplate is the Schema for the nstancemachinetemplates API This is an immutable template pattern (CAPI standard) used to stamp out Machine → NstanceMachine pairs
func (*NstanceMachineTemplate) DeepCopy ¶
func (in *NstanceMachineTemplate) DeepCopy() *NstanceMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineTemplate.
func (*NstanceMachineTemplate) DeepCopyInto ¶
func (in *NstanceMachineTemplate) DeepCopyInto(out *NstanceMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceMachineTemplate) DeepCopyObject ¶
func (in *NstanceMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceMachineTemplateList ¶
type NstanceMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NstanceMachineTemplate `json:"items"`
}
NstanceMachineTemplateList contains a list of NstanceMachineTemplate
func (*NstanceMachineTemplateList) DeepCopy ¶
func (in *NstanceMachineTemplateList) DeepCopy() *NstanceMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineTemplateList.
func (*NstanceMachineTemplateList) DeepCopyInto ¶
func (in *NstanceMachineTemplateList) DeepCopyInto(out *NstanceMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceMachineTemplateList) DeepCopyObject ¶
func (in *NstanceMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceMachineTemplateResource ¶
type NstanceMachineTemplateResource struct {
// Spec is the specification of the desired behavior of the machine
// +required
Spec NstanceMachineSpec `json:"spec"`
}
NstanceMachineTemplateResource describes the data needed to create a NstanceMachine from a template
func (*NstanceMachineTemplateResource) DeepCopy ¶
func (in *NstanceMachineTemplateResource) DeepCopy() *NstanceMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineTemplateResource.
func (*NstanceMachineTemplateResource) DeepCopyInto ¶
func (in *NstanceMachineTemplateResource) DeepCopyInto(out *NstanceMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceMachineTemplateSpec ¶
type NstanceMachineTemplateSpec struct {
// Template defines the machines that will be created from this template
// +required
Template NstanceMachineTemplateResource `json:"template"`
}
NstanceMachineTemplateSpec defines the desired state of NstanceMachineTemplate
func (*NstanceMachineTemplateSpec) DeepCopy ¶
func (in *NstanceMachineTemplateSpec) DeepCopy() *NstanceMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceMachineTemplateSpec.
func (*NstanceMachineTemplateSpec) DeepCopyInto ¶
func (in *NstanceMachineTemplateSpec) DeepCopyInto(out *NstanceMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceShardGroup ¶
type NstanceShardGroup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NstanceShardGroupSpec `json:"spec"`
Status NstanceShardGroupStatus `json:"status,omitempty"`
}
NstanceShardGroup represents a group on a single shard. One resource per (group, shard) pair provides per-shard visibility.
func (*NstanceShardGroup) DeepCopy ¶
func (in *NstanceShardGroup) DeepCopy() *NstanceShardGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceShardGroup.
func (*NstanceShardGroup) DeepCopyInto ¶
func (in *NstanceShardGroup) DeepCopyInto(out *NstanceShardGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceShardGroup) DeepCopyObject ¶
func (in *NstanceShardGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceShardGroupConfig ¶
type NstanceShardGroupConfig struct {
// Template is the instance template being used
// +optional
Template string `json:"template,omitempty"`
// SubnetPool is the ID of the subnet pool used by this group
// +optional
SubnetPool string `json:"subnetPool,omitempty"`
// InstanceType is the instance type being used
// +optional
InstanceType string `json:"instanceType,omitempty"`
// Vars are the merged vars being used
// +optional
Vars map[string]string `json:"vars,omitempty"`
}
NstanceShardGroupConfig represents the merged configuration from the server
func (*NstanceShardGroupConfig) DeepCopy ¶
func (in *NstanceShardGroupConfig) DeepCopy() *NstanceShardGroupConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceShardGroupConfig.
func (*NstanceShardGroupConfig) DeepCopyInto ¶
func (in *NstanceShardGroupConfig) DeepCopyInto(out *NstanceShardGroupConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceShardGroupList ¶
type NstanceShardGroupList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NstanceShardGroup `json:"items"`
}
NstanceShardGroupList contains a list of NstanceShardGroup
func (*NstanceShardGroupList) DeepCopy ¶
func (in *NstanceShardGroupList) DeepCopy() *NstanceShardGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceShardGroupList.
func (*NstanceShardGroupList) DeepCopyInto ¶
func (in *NstanceShardGroupList) DeepCopyInto(out *NstanceShardGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NstanceShardGroupList) DeepCopyObject ¶
func (in *NstanceShardGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NstanceShardGroupSpec ¶
type NstanceShardGroupSpec struct {
// Group is the name of the Nstance Group
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
Group string `json:"group"`
// Shard identifies which zone shard this group is on
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
Shard string `json:"shard"`
// Size is the desired number of instances for THIS shard
// +kubebuilder:validation:Minimum=0
Size int32 `json:"size"`
// Template is the name of the Nstance template defined in server config.
// Required when creating a new dynamic group (no static group with this key).
// +optional
Template string `json:"template,omitempty"`
// InstanceType is an optional instance type override
// +optional
InstanceType string `json:"instanceType,omitempty"`
// SubnetPool specifies which subnet pool to use for new dynamic groups.
// This is a subnet pool ID that references server.subnet_pools map key.
// +optional
SubnetPool string `json:"subnetPool,omitempty"`
// Vars are additional vars merged with template vars
// +optional
Vars map[string]string `json:"vars,omitempty"`
}
NstanceShardGroupSpec defines the desired state of NstanceShardGroup
func (*NstanceShardGroupSpec) DeepCopy ¶
func (in *NstanceShardGroupSpec) DeepCopy() *NstanceShardGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceShardGroupSpec.
func (*NstanceShardGroupSpec) DeepCopyInto ¶
func (in *NstanceShardGroupSpec) DeepCopyInto(out *NstanceShardGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NstanceShardGroupStatus ¶
type NstanceShardGroupStatus struct {
// ObservedGeneration is the generation most recently observed by the controller
// +optional
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// Replicas is the number of running instances on this shard for this group
// +optional
Replicas int32 `json:"replicas"`
// ProviderIDs is the list of provider IDs of running instances on this shard (sorted)
// +optional
// +listType=atomic
ProviderIDs []string `json:"providerIDs,omitempty"`
// IsStatic indicates this group is backed by static server config on this shard.
// When true, template and subnet pool are defined by server config and cannot be overridden.
// +optional
IsStatic bool `json:"isStatic,omitempty"`
// Config is the merged configuration from the server
// +optional
Config *NstanceShardGroupConfig `json:"config,omitempty"`
// LastSyncTime is when the status was last synced from the server
// +optional
LastSyncTime *metav1.Time `json:"lastSyncTime,omitempty"`
// Conditions represent the current state of the NstanceShardGroup
// +listType=map
// +listMapKey=type
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
NstanceShardGroupStatus defines the observed state of NstanceShardGroup
func (*NstanceShardGroupStatus) DeepCopy ¶
func (in *NstanceShardGroupStatus) DeepCopy() *NstanceShardGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NstanceShardGroupStatus.
func (*NstanceShardGroupStatus) DeepCopyInto ¶
func (in *NstanceShardGroupStatus) DeepCopyInto(out *NstanceShardGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.