Skip to content

Commit 4013414

Browse files
feat: Automated regeneration of Spanner client (googleapis#12324)
Auto-created at 2024-10-15 13:12:59 +0000 using the toys pull request generator.
1 parent d4b80cb commit 4013414

File tree

9 files changed

+218
-5
lines changed

9 files changed

+218
-5
lines changed

clients/spanner/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Install this package from [Hex](https://hex.pm) by adding
1111

1212
```elixir
1313
def deps do
14-
[{:google_api_spanner, "~> 0.43"}]
14+
[{:google_api_spanner, "~> 0.44"}]
1515
end
1616
```
1717

clients/spanner/lib/google_api/spanner/v1/metadata.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ defmodule GoogleApi.Spanner.V1 do
2020
API client metadata for GoogleApi.Spanner.V1.
2121
"""
2222

23-
@discovery_revision "20240910"
23+
@discovery_revision "20241010"
2424

2525
def discovery_revision(), do: @discovery_revision
2626
end
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Copyright 2019 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# NOTE: This file is auto generated by the elixir code generator program.
16+
# Do not edit this file manually.
17+
18+
defmodule GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption do
19+
@moduledoc """
20+
AsymmetricAutoscalingOption specifies the scaling of replicas identified by the given selection.
21+
22+
## Attributes
23+
24+
* `overrides` (*type:* `GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides.t`, *default:* `nil`) - Optional. Overrides applied to the top-level autoscaling configuration for the selected replicas.
25+
* `replicaSelection` (*type:* `GoogleApi.Spanner.V1.Model.InstanceReplicaSelection.t`, *default:* `nil`) - Required. Selects the replicas to which this AsymmetricAutoscalingOption applies. Only read-only replicas are supported.
26+
"""
27+
28+
use GoogleApi.Gax.ModelBase
29+
30+
@type t :: %__MODULE__{
31+
:overrides => GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides.t() | nil,
32+
:replicaSelection => GoogleApi.Spanner.V1.Model.InstanceReplicaSelection.t() | nil
33+
}
34+
35+
field(:overrides, as: GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides)
36+
field(:replicaSelection, as: GoogleApi.Spanner.V1.Model.InstanceReplicaSelection)
37+
end
38+
39+
defimpl Poison.Decoder, for: GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption do
40+
def decode(value, options) do
41+
GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption.decode(value, options)
42+
end
43+
end
44+
45+
defimpl Poison.Encoder, for: GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption do
46+
def encode(value, options) do
47+
GoogleApi.Gax.ModelBase.encode(value, options)
48+
end
49+
end

clients/spanner/lib/google_api/spanner/v1/model/autoscaling_config.ex

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,25 @@ defmodule GoogleApi.Spanner.V1.Model.AutoscalingConfig do
2121
2222
## Attributes
2323
24+
* `asymmetricAutoscalingOptions` (*type:* `list(GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption.t)`, *default:* `nil`) - Optional. Optional asymmetric autoscaling options. Replicas matching the replica selection criteria will be autoscaled independently from other replicas. The autoscaler will scale the replicas based on the utilization of replicas identified by the replica selection. Replica selections should not overlap with each other. Other replicas (those do not match any replica selection) will be autoscaled together and will have the same compute capacity allocated to them.
2425
* `autoscalingLimits` (*type:* `GoogleApi.Spanner.V1.Model.AutoscalingLimits.t`, *default:* `nil`) - Required. Autoscaling limits for an instance.
2526
* `autoscalingTargets` (*type:* `GoogleApi.Spanner.V1.Model.AutoscalingTargets.t`, *default:* `nil`) - Required. The autoscaling targets for an instance.
2627
"""
2728

2829
use GoogleApi.Gax.ModelBase
2930

3031
@type t :: %__MODULE__{
32+
:asymmetricAutoscalingOptions =>
33+
list(GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption.t()) | nil,
3134
:autoscalingLimits => GoogleApi.Spanner.V1.Model.AutoscalingLimits.t() | nil,
3235
:autoscalingTargets => GoogleApi.Spanner.V1.Model.AutoscalingTargets.t() | nil
3336
}
3437

38+
field(:asymmetricAutoscalingOptions,
39+
as: GoogleApi.Spanner.V1.Model.AsymmetricAutoscalingOption,
40+
type: :list
41+
)
42+
3543
field(:autoscalingLimits, as: GoogleApi.Spanner.V1.Model.AutoscalingLimits)
3644
field(:autoscalingTargets, as: GoogleApi.Spanner.V1.Model.AutoscalingTargets)
3745
end
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Copyright 2019 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# NOTE: This file is auto generated by the elixir code generator program.
16+
# Do not edit this file manually.
17+
18+
defmodule GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides do
19+
@moduledoc """
20+
Overrides the top-level autoscaling configuration for the replicas identified by `replica_selection`. All fields in this message are optional. Any unspecified fields will use the corresponding values from the top-level autoscaling configuration.
21+
22+
## Attributes
23+
24+
* `autoscalingLimits` (*type:* `GoogleApi.Spanner.V1.Model.AutoscalingLimits.t`, *default:* `nil`) - Optional. If specified, overrides the min/max limit in the top-level autoscaling configuration for the selected replicas.
25+
* `autoscalingTargetHighPriorityCpuUtilizationPercent` (*type:* `integer()`, *default:* `nil`) - Optional. If specified, overrides the autoscaling target high_priority_cpu_utilization_percent in the top-level autoscaling configuration for the selected replicas.
26+
"""
27+
28+
use GoogleApi.Gax.ModelBase
29+
30+
@type t :: %__MODULE__{
31+
:autoscalingLimits => GoogleApi.Spanner.V1.Model.AutoscalingLimits.t() | nil,
32+
:autoscalingTargetHighPriorityCpuUtilizationPercent => integer() | nil
33+
}
34+
35+
field(:autoscalingLimits, as: GoogleApi.Spanner.V1.Model.AutoscalingLimits)
36+
field(:autoscalingTargetHighPriorityCpuUtilizationPercent)
37+
end
38+
39+
defimpl Poison.Decoder, for: GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides do
40+
def decode(value, options) do
41+
GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides.decode(value, options)
42+
end
43+
end
44+
45+
defimpl Poison.Encoder, for: GoogleApi.Spanner.V1.Model.AutoscalingConfigOverrides do
46+
def encode(value, options) do
47+
GoogleApi.Gax.ModelBase.encode(value, options)
48+
end
49+
end

clients/spanner/lib/google_api/spanner/v1/model/instance.ex

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,9 @@ defmodule GoogleApi.Spanner.V1.Model.Instance do
3131
* `instanceType` (*type:* `String.t`, *default:* `nil`) - The `InstanceType` of the current instance.
3232
* `labels` (*type:* `map()`, *default:* `nil`) - Cloud Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. Cloud Labels can be used to filter collections of resources. They can be used to control how resource metrics are aggregated. And they can be used as arguments to policy management rules (e.g. route, firewall, load balancing, etc.). * Label keys must be between 1 and 63 characters long and must conform to the following regular expression: `a-z{0,62}`. * Label values must be between 0 and 63 characters long and must conform to the regular expression `[a-z0-9_-]{0,63}`. * No more than 64 labels can be associated with a given resource. See https://goo.gl/xmQnxf for more information on and examples of labels. If you plan to use labels in your own code, please note that additional characters may be allowed in the future. And so you are advised to use an internal label representation, such as JSON, which doesn't rely upon specific characters being disallowed. For example, representing labels as the string: name + "_" + value would prove problematic if we were to allow "_" in a future release.
3333
* `name` (*type:* `String.t`, *default:* `nil`) - Required. A unique identifier for the instance, which cannot be changed after the instance is created. Values are of the form `projects//instances/a-z*[a-z0-9]`. The final segment of the name must be between 2 and 64 characters in length.
34-
* `nodeCount` (*type:* `integer()`, *default:* `nil`) - The number of nodes allocated to this instance. At most, one of either `node_count` or `processing_units` should be present in the message. Users can set the `node_count` field to specify the target number of nodes allocated to the instance. If autoscaling is enabled, `node_count` is treated as an `OUTPUT_ONLY` field and reflects the current number of nodes allocated to the instance. This might be zero in API responses for instances that are not yet in the `READY` state. For more information, see [Compute capacity, nodes, and processing units](https://cloud.google.com/spanner/docs/compute-capacity).
35-
* `processingUnits` (*type:* `integer()`, *default:* `nil`) - The number of processing units allocated to this instance. At most, one of either `processing_units` or `node_count` should be present in the message. Users can set the `processing_units` field to specify the target number of processing units allocated to the instance. If autoscaling is enabled, `processing_units` is treated as an `OUTPUT_ONLY` field and reflects the current number of processing units allocated to the instance. This might be zero in API responses for instances that are not yet in the `READY` state. For more information, see [Compute capacity, nodes and processing units](https://cloud.google.com/spanner/docs/compute-capacity).
34+
* `nodeCount` (*type:* `integer()`, *default:* `nil`) - The number of nodes allocated to this instance. At most, one of either `node_count` or `processing_units` should be present in the message. Users can set the `node_count` field to specify the target number of nodes allocated to the instance. If autoscaling is enabled, `node_count` is treated as an `OUTPUT_ONLY` field and reflects the current number of nodes allocated to the instance. This might be zero in API responses for instances that are not yet in the `READY` state. If the instance has varying node count across replicas (achieved by setting asymmetric_autoscaling_options in autoscaling config), the node_count here is the maximum node count across all replicas. For more information, see [Compute capacity, nodes, and processing units](https://cloud.google.com/spanner/docs/compute-capacity).
35+
* `processingUnits` (*type:* `integer()`, *default:* `nil`) - The number of processing units allocated to this instance. At most, one of either `processing_units` or `node_count` should be present in the message. Users can set the `processing_units` field to specify the target number of processing units allocated to the instance. If autoscaling is enabled, `processing_units` is treated as an `OUTPUT_ONLY` field and reflects the current number of processing units allocated to the instance. This might be zero in API responses for instances that are not yet in the `READY` state. If the instance has varying processing units per replica (achieved by setting asymmetric_autoscaling_options in autoscaling config), the processing_units here is the maximum processing units across all replicas. For more information, see [Compute capacity, nodes and processing units](https://cloud.google.com/spanner/docs/compute-capacity).
36+
* `replicaComputeCapacity` (*type:* `list(GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity.t)`, *default:* `nil`) - Output only. Lists the compute capacity per ReplicaSelection. A replica selection identifies a set of replicas with common properties. Replicas identified by a ReplicaSelection are scaled with the same compute capacity.
3637
* `state` (*type:* `String.t`, *default:* `nil`) - Output only. The current instance state. For CreateInstance, the state must be either omitted or set to `CREATING`. For UpdateInstance, the state must be either omitted or set to `READY`.
3738
* `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time at which the instance was most recently updated.
3839
"""
@@ -52,6 +53,8 @@ defmodule GoogleApi.Spanner.V1.Model.Instance do
5253
:name => String.t() | nil,
5354
:nodeCount => integer() | nil,
5455
:processingUnits => integer() | nil,
56+
:replicaComputeCapacity =>
57+
list(GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity.t()) | nil,
5558
:state => String.t() | nil,
5659
:updateTime => DateTime.t() | nil
5760
}
@@ -68,6 +71,12 @@ defmodule GoogleApi.Spanner.V1.Model.Instance do
6871
field(:name)
6972
field(:nodeCount)
7073
field(:processingUnits)
74+
75+
field(:replicaComputeCapacity,
76+
as: GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity,
77+
type: :list
78+
)
79+
7180
field(:state)
7281
field(:updateTime, as: DateTime)
7382
end
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Copyright 2019 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# NOTE: This file is auto generated by the elixir code generator program.
16+
# Do not edit this file manually.
17+
18+
defmodule GoogleApi.Spanner.V1.Model.InstanceReplicaSelection do
19+
@moduledoc """
20+
ReplicaSelection identifies replicas with common properties.
21+
22+
## Attributes
23+
24+
* `location` (*type:* `String.t`, *default:* `nil`) - Required. Name of the location of the replicas (e.g., "us-central1").
25+
"""
26+
27+
use GoogleApi.Gax.ModelBase
28+
29+
@type t :: %__MODULE__{
30+
:location => String.t() | nil
31+
}
32+
33+
field(:location)
34+
end
35+
36+
defimpl Poison.Decoder, for: GoogleApi.Spanner.V1.Model.InstanceReplicaSelection do
37+
def decode(value, options) do
38+
GoogleApi.Spanner.V1.Model.InstanceReplicaSelection.decode(value, options)
39+
end
40+
end
41+
42+
defimpl Poison.Encoder, for: GoogleApi.Spanner.V1.Model.InstanceReplicaSelection do
43+
def encode(value, options) do
44+
GoogleApi.Gax.ModelBase.encode(value, options)
45+
end
46+
end
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# Copyright 2019 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# NOTE: This file is auto generated by the elixir code generator program.
16+
# Do not edit this file manually.
17+
18+
defmodule GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity do
19+
@moduledoc """
20+
ReplicaComputeCapacity describes the amount of server resources that are allocated to each replica identified by the replica selection.
21+
22+
## Attributes
23+
24+
* `nodeCount` (*type:* `integer()`, *default:* `nil`) - The number of nodes allocated to each replica. This may be zero in API responses for instances that are not yet in state `READY`.
25+
* `processingUnits` (*type:* `integer()`, *default:* `nil`) - The number of processing units allocated to each replica. This may be zero in API responses for instances that are not yet in state `READY`.
26+
* `replicaSelection` (*type:* `GoogleApi.Spanner.V1.Model.InstanceReplicaSelection.t`, *default:* `nil`) - Required. Identifies replicas by specified properties. All replicas in the selection have the same amount of compute capacity.
27+
"""
28+
29+
use GoogleApi.Gax.ModelBase
30+
31+
@type t :: %__MODULE__{
32+
:nodeCount => integer() | nil,
33+
:processingUnits => integer() | nil,
34+
:replicaSelection => GoogleApi.Spanner.V1.Model.InstanceReplicaSelection.t() | nil
35+
}
36+
37+
field(:nodeCount)
38+
field(:processingUnits)
39+
field(:replicaSelection, as: GoogleApi.Spanner.V1.Model.InstanceReplicaSelection)
40+
end
41+
42+
defimpl Poison.Decoder, for: GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity do
43+
def decode(value, options) do
44+
GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity.decode(value, options)
45+
end
46+
end
47+
48+
defimpl Poison.Encoder, for: GoogleApi.Spanner.V1.Model.ReplicaComputeCapacity do
49+
def encode(value, options) do
50+
GoogleApi.Gax.ModelBase.encode(value, options)
51+
end
52+
end

clients/spanner/mix.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
defmodule GoogleApi.Spanner.Mixfile do
1919
use Mix.Project
2020

21-
@version "0.43.0"
21+
@version "0.44.0"
2222

2323
def project() do
2424
[

0 commit comments

Comments
 (0)