Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the spanner v1beta1 API group +kubebuilder:object:generate=true +groupName=spanner.mercari.com
Index ¶
- Variables
- type ActiveSchedule
- type AuthType
- type Authentication
- type ComputeType
- type IAMKeySecret
- type ImpersonateConfig
- type InstanceState
- type ScaleConfig
- type ScaleConfigNodes
- type ScaleConfigPUs
- type Schedule
- type SpannerAutoscaleSchedule
- func (in *SpannerAutoscaleSchedule) DeepCopy() *SpannerAutoscaleSchedule
- func (in *SpannerAutoscaleSchedule) DeepCopyInto(out *SpannerAutoscaleSchedule)
- func (in *SpannerAutoscaleSchedule) DeepCopyObject() runtime.Object
- func (r *SpannerAutoscaleSchedule) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *SpannerAutoscaleSchedule) ValidateCreate() error
- func (r *SpannerAutoscaleSchedule) ValidateDelete() error
- func (r *SpannerAutoscaleSchedule) ValidateUpdate(old runtime.Object) error
- type SpannerAutoscaleScheduleList
- type SpannerAutoscaleScheduleSpec
- type SpannerAutoscaleScheduleStatus
- type SpannerAutoscaler
- func (in *SpannerAutoscaler) DeepCopy() *SpannerAutoscaler
- func (in *SpannerAutoscaler) DeepCopyInto(out *SpannerAutoscaler)
- func (in *SpannerAutoscaler) DeepCopyObject() runtime.Object
- func (r *SpannerAutoscaler) Default()
- func (*SpannerAutoscaler) Hub()
- func (r *SpannerAutoscaler) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *SpannerAutoscaler) ValidateCreate() error
- func (r *SpannerAutoscaler) ValidateDelete() error
- func (r *SpannerAutoscaler) ValidateUpdate(old runtime.Object) error
- type SpannerAutoscalerList
- type SpannerAutoscalerSpec
- type SpannerAutoscalerStatus
- type TargetCPUUtilization
- type TargetInstance
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "spanner.mercari.com", 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 ¶
This section is empty.
Types ¶
type ActiveSchedule ¶ added in v0.4.0
type ActiveSchedule struct { // Name of the `SpannerAutoscaleSchedule` ScheduleName string `json:"name"` // The time until when this schedule will remain active EndTime metav1.Time `json:"endTime"` // The extra compute capacity which will be added because of this schedule AdditionalPU int `json:"additionalPU"` }
A `SpannerAutoscaleSchedule` which is currently active and will be used for calculating the autoscaling range.
func (*ActiveSchedule) DeepCopy ¶ added in v0.4.0
func (in *ActiveSchedule) DeepCopy() *ActiveSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveSchedule.
func (*ActiveSchedule) DeepCopyInto ¶ added in v0.4.0
func (in *ActiveSchedule) DeepCopyInto(out *ActiveSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthType ¶
type AuthType string
Type for specifying authentication methods +kubebuilder:validation:Enum=gcp-sa-key;impersonation;adc
type Authentication ¶
type Authentication struct { // Authentication method to be used for GCP authentication. // If `ImpersonateConfig` as well as `IAMKeySecret` is nil, this will be set to use ADC be default. Type AuthType `json:"type,omitempty"` // Details of the GCP service account which will be impersonated, for authentication to GCP. // This can used only on GKE clusters, when workload identity is enabled. // [[Ref](https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity)]. // This is a pointer because structs with string slices can not be compared for zero values ImpersonateConfig *ImpersonateConfig `json:"impersonateConfig,omitempty"` // Details of the k8s secret which contains the GCP service account authentication key (in JSON). // [[Ref](https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform)]. // This is a pointer because structs with string slices can not be compared for zero values IAMKeySecret *IAMKeySecret `json:"iamKeySecret,omitempty"` }
Authentication details for the Spanner instance
func (*Authentication) DeepCopy ¶
func (in *Authentication) DeepCopy() *Authentication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Authentication.
func (*Authentication) DeepCopyInto ¶
func (in *Authentication) DeepCopyInto(out *Authentication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComputeType ¶
type ComputeType string
Type for specifying compute capacity categories +kubebuilder:validation:Enum=nodes;processing-units
const ( ComputeTypeNode ComputeType = "nodes" ComputeTypePU ComputeType = "processing-units" )
type IAMKeySecret ¶
type IAMKeySecret struct { // Name of the secret which contains the authentication key Name string `json:"name"` // Namespace of the secret which contains the authentication key Namespace string `json:"namespace,omitempty"` // Name of the yaml 'key' under which the authentication value is stored Key string `json:"key"` }
Details of the secret which has the GCP service account key for authentication
func (*IAMKeySecret) DeepCopy ¶
func (in *IAMKeySecret) DeepCopy() *IAMKeySecret
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMKeySecret.
func (*IAMKeySecret) DeepCopyInto ¶
func (in *IAMKeySecret) DeepCopyInto(out *IAMKeySecret)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImpersonateConfig ¶
type ImpersonateConfig struct { // The service account which will be impersonated TargetServiceAccount string `json:"targetServiceAccount"` // Delegation chain for the service account impersonation. // [[Ref](https://pkg.go.dev/google.golang.org/api/impersonate#hdr-Required_IAM_roles)] Delegates []string `json:"delegates,omitempty"` }
Details of the impersonation service account for GCP authentication
func (*ImpersonateConfig) DeepCopy ¶
func (in *ImpersonateConfig) DeepCopy() *ImpersonateConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImpersonateConfig.
func (*ImpersonateConfig) DeepCopyInto ¶
func (in *ImpersonateConfig) DeepCopyInto(out *ImpersonateConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstanceState ¶
type InstanceState string
const ( InstanceStateUnspecified InstanceState = "unspecified" // The instance is still being created. Resources may not be // available yet, and operations such as database creation may not // work. InstanceStateCreating InstanceState = "creating" // The instance is fully created and ready to do work such as // creating databases. InstanceStateReady InstanceState = "ready" )
type ScaleConfig ¶
type ScaleConfig struct { // Whether to use `nodes` or `processing-units` for scaling. // This is only used at the time of CustomResource creation. If compute capacity is provided in `nodes`, then it is automatically converted to `processing-units` at the time of resource creation, and internally, only `ProcessingUnits` are used for computations and scaling. ComputeType ComputeType `json:"computeType,omitempty"` // If `nodes` are provided at the time of resource creation, then they are automatically converted to `processing-units`. So it is recommended to use only the processing units. Ref: [Spanner Compute Capacity](https://cloud.google.com/spanner/docs/compute-capacity#compute_capacity) Nodes ScaleConfigNodes `json:"nodes,omitempty"` // ProcessingUnits for scaling of the Spanner instance. Ref: [Spanner Compute Capacity](https://cloud.google.com/spanner/docs/compute-capacity#compute_capacity) ProcessingUnits ScaleConfigPUs `json:"processingUnits,omitempty"` // The maximum number of processing units which can be deleted in one scale-down operation. It can be a multiple of 100 for values < 1000, or a multiple of 1000 otherwise. // +kubebuilder:default=2000 ScaledownStepSize int `json:"scaledownStepSize,omitempty"` // How often autoscaler is reevaluated for scale down. // The cool down period between two consecutive scaledown operations. If this option is omitted, the value of the `--scale-down-interval` command line option is taken as the default value. ScaledownInterval *metav1.Duration `json:"scaledownInterval,omitempty"` // The maximum number of processing units which can be added in one scale-up operation. It can be a multiple of 100 for values < 1000, or a multiple of 1000 otherwise. // +kubebuilder:default=0 ScaleupStepSize int `json:"scaleupStepSize,omitempty"` // How often autoscaler is reevaluated for scale up. // The warm up period between two consecutive scaleup operations. If this option is omitted, the value of the `--scale-up-interval` command line option is taken as the default value. ScaleupInterval *metav1.Duration `json:"scaleupInterval,omitempty"` // The CPU utilization which the autoscaling will try to achieve. Ref: [Spanner CPU utilization](https://cloud.google.com/spanner/docs/cpu-utilization#task-priority) TargetCPUUtilization TargetCPUUtilization `json:"targetCPUUtilization"` }
Details of the autoscaling parameters for the Spanner instance
func (*ScaleConfig) DeepCopy ¶
func (in *ScaleConfig) DeepCopy() *ScaleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleConfig.
func (*ScaleConfig) DeepCopyInto ¶
func (in *ScaleConfig) DeepCopyInto(out *ScaleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScaleConfigNodes ¶
type ScaleConfigNodes struct { // Minimum number of Nodes for the autoscaling range Min int `json:"min,omitempty"` // Maximum number of Nodes for the autoscaling range Max int `json:"max,omitempty"` }
Compute capacity in terms of Nodes
func (*ScaleConfigNodes) DeepCopy ¶
func (in *ScaleConfigNodes) DeepCopy() *ScaleConfigNodes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleConfigNodes.
func (*ScaleConfigNodes) DeepCopyInto ¶
func (in *ScaleConfigNodes) DeepCopyInto(out *ScaleConfigNodes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScaleConfigPUs ¶
type ScaleConfigPUs struct { // Minimum number of Processing Units for the autoscaling range // +kubebuilder:validation:MultipleOf=100 Min int `json:"min"` // Maximum number of Processing Units for the autoscaling range // +kubebuilder:validation:MultipleOf=100 Max int `json:"max"` }
Compute capacity in terms of Processing Units
func (*ScaleConfigPUs) DeepCopy ¶
func (in *ScaleConfigPUs) DeepCopy() *ScaleConfigPUs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleConfigPUs.
func (*ScaleConfigPUs) DeepCopyInto ¶
func (in *ScaleConfigPUs) DeepCopyInto(out *ScaleConfigPUs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Schedule ¶ added in v0.4.0
type Schedule struct { // The recurring frequency of the schedule in [standard cron](https://en.wikipedia.org/wiki/Cron) format. Examples and verification utility: https://crontab.guru Cron string `json:"cron"` // The length of time for which this schedule will remain active each time the cron is triggered. Duration string `json:"duration"` }
The recurring frequency and the length of time for which a schedule will remain active
func (*Schedule) DeepCopy ¶ added in v0.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Schedule.
func (*Schedule) DeepCopyInto ¶ added in v0.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpannerAutoscaleSchedule ¶ added in v0.4.0
type SpannerAutoscaleSchedule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SpannerAutoscaleScheduleSpec `json:"spec,omitempty"` Status SpannerAutoscaleScheduleStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:storageversion +kubebuilder:printcolumn:name="Cron",type="string",JSONPath=".spec.schedule.cron" +kubebuilder:printcolumn:name="Duration",type="string",JSONPath=".spec.schedule.duration" +kubebuilder:printcolumn:name="Additional PU",type="integer",JSONPath=".spec.additionalProcessingUnits" SpannerAutoscaleSchedule is the Schema for the spannerautoscaleschedules API
func (*SpannerAutoscaleSchedule) DeepCopy ¶ added in v0.4.0
func (in *SpannerAutoscaleSchedule) DeepCopy() *SpannerAutoscaleSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscaleSchedule.
func (*SpannerAutoscaleSchedule) DeepCopyInto ¶ added in v0.4.0
func (in *SpannerAutoscaleSchedule) DeepCopyInto(out *SpannerAutoscaleSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpannerAutoscaleSchedule) DeepCopyObject ¶ added in v0.4.0
func (in *SpannerAutoscaleSchedule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SpannerAutoscaleSchedule) SetupWebhookWithManager ¶ added in v0.4.0
func (r *SpannerAutoscaleSchedule) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*SpannerAutoscaleSchedule) ValidateCreate ¶ added in v0.4.0
func (r *SpannerAutoscaleSchedule) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*SpannerAutoscaleSchedule) ValidateDelete ¶ added in v0.4.0
func (r *SpannerAutoscaleSchedule) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*SpannerAutoscaleSchedule) ValidateUpdate ¶ added in v0.4.0
func (r *SpannerAutoscaleSchedule) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type SpannerAutoscaleScheduleList ¶ added in v0.4.0
type SpannerAutoscaleScheduleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SpannerAutoscaleSchedule `json:"items"` }
SpannerAutoscaleScheduleList contains a list of SpannerAutoscaleSchedule
func (*SpannerAutoscaleScheduleList) DeepCopy ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleList) DeepCopy() *SpannerAutoscaleScheduleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscaleScheduleList.
func (*SpannerAutoscaleScheduleList) DeepCopyInto ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleList) DeepCopyInto(out *SpannerAutoscaleScheduleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpannerAutoscaleScheduleList) DeepCopyObject ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpannerAutoscaleScheduleSpec ¶ added in v0.4.0
type SpannerAutoscaleScheduleSpec struct { // The `SpannerAutoscaler` resource name with which this schedule will be registered TargetResource string `json:"targetResource"` // The extra compute capacity which will be added when this schedule is active AdditionalProcessingUnits int `json:"additionalProcessingUnits"` // The details of when and for how long this schedule will be active Schedule Schedule `json:"schedule"` }
SpannerAutoscaleScheduleSpec defines the desired state of SpannerAutoscaleSchedule
func (*SpannerAutoscaleScheduleSpec) DeepCopy ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleSpec) DeepCopy() *SpannerAutoscaleScheduleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscaleScheduleSpec.
func (*SpannerAutoscaleScheduleSpec) DeepCopyInto ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleSpec) DeepCopyInto(out *SpannerAutoscaleScheduleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpannerAutoscaleScheduleStatus ¶ added in v0.4.0
type SpannerAutoscaleScheduleStatus struct{}
SpannerAutoscaleScheduleStatus defines the observed state of SpannerAutoscaleSchedule
func (*SpannerAutoscaleScheduleStatus) DeepCopy ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleStatus) DeepCopy() *SpannerAutoscaleScheduleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscaleScheduleStatus.
func (*SpannerAutoscaleScheduleStatus) DeepCopyInto ¶ added in v0.4.0
func (in *SpannerAutoscaleScheduleStatus) DeepCopyInto(out *SpannerAutoscaleScheduleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpannerAutoscaler ¶
type SpannerAutoscaler struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SpannerAutoscalerSpec `json:"spec,omitempty"` Status SpannerAutoscalerStatus `json:"status,omitempty"` }
SpannerAutoscaler is the Schema for the spannerautoscalers API
func (*SpannerAutoscaler) DeepCopy ¶
func (in *SpannerAutoscaler) DeepCopy() *SpannerAutoscaler
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscaler.
func (*SpannerAutoscaler) DeepCopyInto ¶
func (in *SpannerAutoscaler) DeepCopyInto(out *SpannerAutoscaler)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpannerAutoscaler) DeepCopyObject ¶
func (in *SpannerAutoscaler) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SpannerAutoscaler) Default ¶
func (r *SpannerAutoscaler) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*SpannerAutoscaler) Hub ¶
func (*SpannerAutoscaler) Hub()
Hub marks this type as a conversion hub.
func (*SpannerAutoscaler) SetupWebhookWithManager ¶
func (r *SpannerAutoscaler) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*SpannerAutoscaler) ValidateCreate ¶
func (r *SpannerAutoscaler) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*SpannerAutoscaler) ValidateDelete ¶
func (r *SpannerAutoscaler) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*SpannerAutoscaler) ValidateUpdate ¶
func (r *SpannerAutoscaler) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type SpannerAutoscalerList ¶
type SpannerAutoscalerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []SpannerAutoscaler `json:"items"` }
SpannerAutoscalerList contains a list of SpannerAutoscaler
func (*SpannerAutoscalerList) DeepCopy ¶
func (in *SpannerAutoscalerList) DeepCopy() *SpannerAutoscalerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscalerList.
func (*SpannerAutoscalerList) DeepCopyInto ¶
func (in *SpannerAutoscalerList) DeepCopyInto(out *SpannerAutoscalerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpannerAutoscalerList) DeepCopyObject ¶
func (in *SpannerAutoscalerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpannerAutoscalerSpec ¶
type SpannerAutoscalerSpec struct { // The Spanner instance which will be managed for autoscaling TargetInstance TargetInstance `json:"targetInstance"` // Authentication details for the Spanner instance Authentication Authentication `json:"authentication,omitempty"` // Details of the autoscaling parameters for the Spanner instance ScaleConfig ScaleConfig `json:"scaleConfig"` }
SpannerAutoscalerSpec defines the desired state of SpannerAutoscaler
func (*SpannerAutoscalerSpec) DeepCopy ¶
func (in *SpannerAutoscalerSpec) DeepCopy() *SpannerAutoscalerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscalerSpec.
func (*SpannerAutoscalerSpec) DeepCopyInto ¶
func (in *SpannerAutoscalerSpec) DeepCopyInto(out *SpannerAutoscalerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpannerAutoscalerStatus ¶
type SpannerAutoscalerStatus struct { // List of schedules which are registered with this spanner-autoscaler instance Schedules []string `json:"schedules,omitempty"` // List of all the schedules which are currently active and will be used in calculating compute capacity CurrentlyActiveSchedules []ActiveSchedule `json:"currentlyActiveSchedules,omitempty"` // Last time the `SpannerAutoscaler` scaled the number of Spanner nodes. // Used by the autoscaler to control how often the number of nodes are changed LastScaleTime metav1.Time `json:"lastScaleTime,omitempty"` // Last time the `SpannerAutoscaler` fetched and synced the metrics from Spanner LastSyncTime metav1.Time `json:"lastSyncTime,omitempty"` // Current number of processing-units in the Spanner instance CurrentProcessingUnits int `json:"currentProcessingUnits,omitempty"` // Desired number of processing-units in the Spanner instance DesiredProcessingUnits int `json:"desiredProcessingUnits,omitempty"` // Minimum number of processing units based on the currently active schedules DesiredMinPUs int `json:"desiredMinPUs,omitempty"` // Maximum number of processing units based on the currently active schedules DesiredMaxPUs int `json:"desiredMaxPUs,omitempty"` // State of the Cloud Spanner instance InstanceState InstanceState `json:"instanceState,omitempty"` // Current average CPU utilization for high priority task, represented as a percentage CurrentHighPriorityCPUUtilization int `json:"currentHighPriorityCPUUtilization,omitempty"` }
SpannerAutoscalerStatus defines the observed state of SpannerAutoscaler
func (*SpannerAutoscalerStatus) DeepCopy ¶
func (in *SpannerAutoscalerStatus) DeepCopy() *SpannerAutoscalerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpannerAutoscalerStatus.
func (*SpannerAutoscalerStatus) DeepCopyInto ¶
func (in *SpannerAutoscalerStatus) DeepCopyInto(out *SpannerAutoscalerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetCPUUtilization ¶
type TargetCPUUtilization struct { // Desired CPU utilization for 'High Priority' CPU consumption category. Ref: [Spanner CPU utilization](https://cloud.google.com/spanner/docs/cpu-utilization#task-priority) // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:validation:ExclusiveMinimum=true // +kubebuilder:validation:ExclusiveMaximum=true HighPriority int `json:"highPriority"` }
func (*TargetCPUUtilization) DeepCopy ¶
func (in *TargetCPUUtilization) DeepCopy() *TargetCPUUtilization
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetCPUUtilization.
func (*TargetCPUUtilization) DeepCopyInto ¶
func (in *TargetCPUUtilization) DeepCopyInto(out *TargetCPUUtilization)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetInstance ¶
type TargetInstance struct { // The GCP Project id of the Spanner instance ProjectID string `json:"projectId"` // The instance id of the Spanner instance InstanceID string `json:"instanceId"` }
The Spanner instance which will be managed for autoscaling
func (*TargetInstance) DeepCopy ¶
func (in *TargetInstance) DeepCopy() *TargetInstance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInstance.
func (*TargetInstance) DeepCopyInto ¶
func (in *TargetInstance) DeepCopyInto(out *TargetInstance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.