google-cloud-notebooks-v1beta1 0.5.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # The launch stage as defined by [Google Cloud Platform
23
+ # Launch Stages](https://cloud.google.com/terms/launch-stages).
24
+ module LaunchStage
25
+ # Do not use this default value.
26
+ LAUNCH_STAGE_UNSPECIFIED = 0
27
+
28
+ # The feature is not yet implemented. Users can not use it.
29
+ UNIMPLEMENTED = 6
30
+
31
+ # Prelaunch features are hidden from users and are only visible internally.
32
+ PRELAUNCH = 7
33
+
34
+ # Early Access features are limited to a closed group of testers. To use
35
+ # these features, you must sign up in advance and sign a Trusted Tester
36
+ # agreement (which includes confidentiality provisions). These features may
37
+ # be unstable, changed in backward-incompatible ways, and are not
38
+ # guaranteed to be released.
39
+ EARLY_ACCESS = 1
40
+
41
+ # Alpha is a limited availability test for releases before they are cleared
42
+ # for widespread use. By Alpha, all significant design issues are resolved
43
+ # and we are in the process of verifying functionality. Alpha customers
44
+ # need to apply for access, agree to applicable terms, and have their
45
+ # projects allowlisted. Alpha releases don't have to be feature complete,
46
+ # no SLAs are provided, and there are no technical support obligations, but
47
+ # they will be far enough along that customers can actually use them in
48
+ # test environments or for limited-use tests -- just like they would in
49
+ # normal production cases.
50
+ ALPHA = 2
51
+
52
+ # Beta is the point at which we are ready to open a release for any
53
+ # customer to use. There are no SLA or technical support obligations in a
54
+ # Beta release. Products will be complete from a feature perspective, but
55
+ # may have some open outstanding issues. Beta releases are suitable for
56
+ # limited production use cases.
57
+ BETA = 3
58
+
59
+ # GA features are open to all developers and are considered stable and
60
+ # fully qualified for production use.
61
+ GA = 4
62
+
63
+ # Deprecated features are scheduled to be shut down and removed. For more
64
+ # information, see the "Deprecation Policy" section of our [Terms of
65
+ # Service](https://cloud.google.com/terms/)
66
+ # and the [Google Cloud Platform Subject to the Deprecation
67
+ # Policy](https://cloud.google.com/terms/deprecation) documentation.
68
+ DEPRECATED = 5
69
+ end
70
+ end
71
+ end
@@ -21,6 +21,37 @@ module Google
21
21
  module Cloud
22
22
  module Notebooks
23
23
  module V1beta1
24
+ # Reservation Affinity for consuming Zonal reservation.
25
+ # @!attribute [rw] consume_reservation_type
26
+ # @return [::Google::Cloud::Notebooks::V1beta1::ReservationAffinity::Type]
27
+ # Optional. Type of reservation to consume
28
+ # @!attribute [rw] key
29
+ # @return [::String]
30
+ # Optional. Corresponds to the label key of reservation resource.
31
+ # @!attribute [rw] values
32
+ # @return [::Array<::String>]
33
+ # Optional. Corresponds to the label values of reservation resource.
34
+ class ReservationAffinity
35
+ include ::Google::Protobuf::MessageExts
36
+ extend ::Google::Protobuf::MessageExts::ClassMethods
37
+
38
+ # Indicates whether to consume capacity from an reservation or not.
39
+ module Type
40
+ # Default type.
41
+ TYPE_UNSPECIFIED = 0
42
+
43
+ # Do not consume from any allocated capacity.
44
+ NO_RESERVATION = 1
45
+
46
+ # Consume any reservation available.
47
+ ANY_RESERVATION = 2
48
+
49
+ # Must consume from a specific reservation. Must specify key value fields
50
+ # for specifying the reservations.
51
+ SPECIFIC_RESERVATION = 3
52
+ end
53
+ end
54
+
24
55
  # The definition of a notebook instance.
25
56
  # @!attribute [r] name
26
57
  # @return [::String]
@@ -39,12 +70,10 @@ module Google
39
70
  # Cloud Storage path (`gs://path-to-file/file-name`).
40
71
  # @!attribute [r] proxy_uri
41
72
  # @return [::String]
42
- # Output only. The proxy endpoint that is used to access the Jupyter
43
- # notebook.
73
+ # Output only. The proxy endpoint that is used to access the Jupyter notebook.
44
74
  # @!attribute [rw] instance_owners
45
75
  # @return [::Array<::String>]
46
- # Input only. The owner of this instance after creation. Format:
47
- # `alias@example.com`
76
+ # Input only. The owner of this instance after creation. Format: `alias@example.com`
48
77
  #
49
78
  # Currently supports one owner only. If not specified, all of the service
50
79
  # account users of your VM instance's service account can use
@@ -68,8 +97,8 @@ module Google
68
97
  # @return [::Google::Cloud::Notebooks::V1beta1::Instance::AcceleratorConfig]
69
98
  # The hardware accelerator used on this instance. If you use
70
99
  # accelerators, make sure that your configuration has
71
- # [enough vCPUs and memory to support the `machine_type` you
72
- # have selected](https://cloud.google.com/compute/docs/gpus/#gpus-list).
100
+ # [enough vCPUs and memory to support the `machine_type` you have
101
+ # selected](https://cloud.google.com/compute/docs/gpus/#gpus-list).
73
102
  # @!attribute [r] state
74
103
  # @return [::Google::Cloud::Notebooks::V1beta1::Instance::State]
75
104
  # Output only. The state of this instance.
@@ -85,39 +114,37 @@ module Google
85
114
  # If not specified, we'll automatically choose from official GPU drivers.
86
115
  # @!attribute [rw] boot_disk_type
87
116
  # @return [::Google::Cloud::Notebooks::V1beta1::Instance::DiskType]
88
- # Input only. The type of the boot disk attached to this instance, defaults
89
- # to standard persistent disk (`PD_STANDARD`).
117
+ # Input only. The type of the boot disk attached to this instance, defaults to
118
+ # standard persistent disk (`PD_STANDARD`).
90
119
  # @!attribute [rw] boot_disk_size_gb
91
120
  # @return [::Integer]
92
- # Input only. The size of the boot disk in GB attached to this instance, up
93
- # to a maximum of 64000&nbsp;GB (64&nbsp;TB). The minimum recommended value
94
- # is 100&nbsp;GB. If not specified, this defaults to 100.
121
+ # Input only. The size of the boot disk in GB attached to this instance, up to a maximum
122
+ # of 64000 GB (64 TB). The minimum recommended value is 100 GB. If not
123
+ # specified, this defaults to 100.
95
124
  # @!attribute [rw] data_disk_type
96
125
  # @return [::Google::Cloud::Notebooks::V1beta1::Instance::DiskType]
97
- # Input only. The type of the data disk attached to this instance, defaults
98
- # to standard persistent disk (`PD_STANDARD`).
126
+ # Input only. The type of the data disk attached to this instance, defaults to
127
+ # standard persistent disk (`PD_STANDARD`).
99
128
  # @!attribute [rw] data_disk_size_gb
100
129
  # @return [::Integer]
101
- # Input only. The size of the data disk in GB attached to this instance, up
102
- # to a maximum of 64000&nbsp;GB (64&nbsp;TB). You can choose the size of the
103
- # data disk based on how big your notebooks and data are. If not specified,
104
- # this defaults to 100.
130
+ # Input only. The size of the data disk in GB attached to this instance, up to a maximum
131
+ # of 64000 GB (64 TB). You can choose the size of the data disk based on how
132
+ # big your notebooks and data are. If not specified, this defaults to 100.
105
133
  # @!attribute [rw] no_remove_data_disk
106
134
  # @return [::Boolean]
107
- # Input only. If true, the data disk will not be auto deleted when deleting
108
- # the instance.
135
+ # Input only. If true, the data disk will not be auto deleted when deleting the instance.
109
136
  # @!attribute [rw] disk_encryption
110
137
  # @return [::Google::Cloud::Notebooks::V1beta1::Instance::DiskEncryption]
111
- # Input only. Disk encryption method used on the boot and data disks,
112
- # defaults to GMEK.
138
+ # Input only. Disk encryption method used on the boot and data disks, defaults to GMEK.
113
139
  # @!attribute [rw] kms_key
114
140
  # @return [::String]
115
- # Input only. The KMS key used to encrypt the disks, only applicable if
116
- # disk_encryption is CMEK. Format:
141
+ # Input only. The KMS key used to encrypt the disks, only applicable if disk_encryption
142
+ # is CMEK.
143
+ # Format:
117
144
  # `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
118
145
  #
119
- # Learn more about [using your own encryption keys](
120
- # https://cloud.google.com/kms/docs/quickstart).
146
+ # Learn more about [using your own encryption
147
+ # keys](https://cloud.google.com/kms/docs/quickstart).
121
148
  # @!attribute [rw] no_public_ip
122
149
  # @return [::Boolean]
123
150
  # If true, no public IP will be assigned to this instance.
@@ -141,6 +168,20 @@ module Google
141
168
  # @!attribute [rw] metadata
142
169
  # @return [::Google::Protobuf::Map{::String => ::String}]
143
170
  # Custom metadata to apply to this instance.
171
+ # @!attribute [rw] nic_type
172
+ # @return [::Google::Cloud::Notebooks::V1beta1::Instance::NicType]
173
+ # Optional. The type of vNIC to be used on this interface. This may be gVNIC or
174
+ # VirtioNet.
175
+ # @!attribute [rw] reservation_affinity
176
+ # @return [::Google::Cloud::Notebooks::V1beta1::ReservationAffinity]
177
+ # Optional. The optional reservation affinity. Setting this field will apply
178
+ # the specified [Zonal Compute
179
+ # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
180
+ # to this notebook instance.
181
+ # @!attribute [rw] can_ip_forward
182
+ # @return [::Boolean]
183
+ # Optional. Flag to enable ip forwarding or not, default false/off.
184
+ # https://cloud.google.com/vpc/docs/using-routes#canipforward
144
185
  # @!attribute [r] create_time
145
186
  # @return [::Google::Protobuf::Timestamp]
146
187
  # Output only. Instance creation time.
@@ -152,9 +193,9 @@ module Google
152
193
  extend ::Google::Protobuf::MessageExts::ClassMethods
153
194
 
154
195
  # Definition of a hardware accelerator. Note that not all combinations
155
- # of `type` and `core_count` are valid. Check [GPUs on
156
- # Compute Engine](/compute/docs/gpus/#gpus-list) to find a valid
157
- # combination. TPUs are not supported.
196
+ # of `type` and `core_count` are valid. Check [GPUs on Compute
197
+ # Engine](https://cloud.google.com/compute/docs/gpus/#gpus-list) to find a
198
+ # valid combination. TPUs are not supported.
158
199
  # @!attribute [rw] type
159
200
  # @return [::Google::Cloud::Notebooks::V1beta1::Instance::AcceleratorType]
160
201
  # Type of this accelerator.
@@ -199,7 +240,7 @@ module Google
199
240
  # Accelerator type is Nvidia Tesla V100.
200
241
  NVIDIA_TESLA_V100 = 3
201
242
 
202
- # Accelerator type is Nvidia Tesla P_4.
243
+ # Accelerator type is Nvidia Tesla P4.
203
244
  NVIDIA_TESLA_P4 = 4
204
245
 
205
246
  # Accelerator type is Nvidia Tesla T4.
@@ -211,7 +252,7 @@ module Google
211
252
  # Accelerator type is NVIDIA Tesla P100 Virtual Workstations.
212
253
  NVIDIA_TESLA_P100_VWS = 9
213
254
 
214
- # Accelerator type is NVIDIA Tesla P_4 Virtual Workstations.
255
+ # Accelerator type is NVIDIA Tesla P4 Virtual Workstations.
215
256
  NVIDIA_TESLA_P4_VWS = 10
216
257
 
217
258
  # (Coming soon) Accelerator type is TPU V2.
@@ -253,6 +294,12 @@ module Google
253
294
 
254
295
  # The instance is getting registered.
255
296
  REGISTERING = 9
297
+
298
+ # The instance is suspending.
299
+ SUSPENDING = 10
300
+
301
+ # The instance is suspended.
302
+ SUSPENDED = 11
256
303
  end
257
304
 
258
305
  # Possible disk types for notebook instances.
@@ -281,6 +328,19 @@ module Google
281
328
  # Use customer managed encryption keys to encrypt the boot disk.
282
329
  CMEK = 2
283
330
  end
331
+
332
+ # The type of vNIC driver.
333
+ module NicType
334
+ # No type specified. Default should be UNSPECIFIED_NIC_TYPE.
335
+ UNSPECIFIED_NIC_TYPE = 0
336
+
337
+ # VIRTIO. Default in Notebooks DLVM.
338
+ VIRTIO_NET = 1
339
+
340
+ # GVNIC. Alternative to VIRTIO.
341
+ # https://github.com/GoogleCloudPlatform/compute-virtual-ethernet-linux
342
+ GVNIC = 2
343
+ end
284
344
  end
285
345
  end
286
346
  end
@@ -42,8 +42,7 @@ module Google
42
42
  # Identifies whether the user has requested cancellation
43
43
  # of the operation. Operations that have successfully been cancelled
44
44
  # have [Operation.error][] value with a
45
- # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
46
- # `Code.CANCELLED`.
45
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to `Code.CANCELLED`.
47
46
  # @!attribute [rw] api_version
48
47
  # @return [::String]
49
48
  # API version used to start the operation.
@@ -83,7 +82,7 @@ module Google
83
82
  # @!attribute [rw] unreachable
84
83
  # @return [::Array<::String>]
85
84
  # Locations that could not be reached. For example,
86
- # ['us-west1-a', 'us-central1-b'].
85
+ # `['us-west1-a', 'us-central1-b']`.
87
86
  # A ListInstancesResponse will only contain either instances or unreachables,
88
87
  class ListInstancesResponse
89
88
  include ::Google::Protobuf::MessageExts
@@ -142,10 +141,10 @@ module Google
142
141
  # Required. Type of this accelerator.
143
142
  # @!attribute [rw] core_count
144
143
  # @return [::Integer]
145
- # Required. Count of cores of this accelerator. Note that not all
146
- # combinations of `type` and `core_count` are valid. Check [GPUs on Compute
147
- # Engine](https://cloud.google.com/compute/docs/gpus/#gpus-list) to find a
148
- # valid combination. TPUs are not supported.
144
+ # Required. Count of cores of this accelerator. Note that not all combinations
145
+ # of `type` and `core_count` are valid. Check [GPUs on
146
+ # Compute Engine](https://cloud.google.com/compute/docs/gpus/#gpus-list) to
147
+ # find a valid combination. TPUs are not supported.
149
148
  class SetInstanceAcceleratorRequest
150
149
  include ::Google::Protobuf::MessageExts
151
150
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -276,6 +275,11 @@ module Google
276
275
  # @!attribute [rw] upgrade_info
277
276
  # @return [::String]
278
277
  # Additional information about upgrade.
278
+ # @!attribute [rw] upgrade_image
279
+ # @return [::String]
280
+ # The new image self link this instance will be upgraded to if calling the
281
+ # upgrade endpoint. This field will only be populated if field upgradeable
282
+ # is true.
279
283
  class IsInstanceUpgradeableResponse
280
284
  include ::Google::Protobuf::MessageExts
281
285
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -353,10 +357,10 @@ module Google
353
357
  # Required. Format: `projects/{project_id}/locations/{location}`
354
358
  # @!attribute [rw] environment_id
355
359
  # @return [::String]
356
- # Required. User-defined unique ID of this environment. The `environment_id`
357
- # must be 1 to 63 characters long and contain only lowercase letters, numeric
358
- # characters, and dashes. The first character must be a lowercase letter and
359
- # the last character cannot be a dash.
360
+ # Required. User-defined unique ID of this environment. The `environment_id` must
361
+ # be 1 to 63 characters long and contain only lowercase letters,
362
+ # numeric characters, and dashes. The first character must be a lowercase
363
+ # letter and the last character cannot be a dash.
360
364
  # @!attribute [rw] environment
361
365
  # @return [::Google::Cloud::Notebooks::V1beta1::Environment]
362
366
  # Required. The environment to be created.
@@ -26,8 +26,6 @@ module Google
26
26
  # service Foo {
27
27
  # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
28
28
  # }
29
- #
30
- # The JSON representation for `Empty` is empty JSON object `{}`.
31
29
  class Empty
32
30
  include ::Google::Protobuf::MessageExts
33
31
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -0,0 +1,229 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Protobuf
22
+ # `FieldMask` represents a set of symbolic field paths, for example:
23
+ #
24
+ # paths: "f.a"
25
+ # paths: "f.b.d"
26
+ #
27
+ # Here `f` represents a field in some root message, `a` and `b`
28
+ # fields in the message found in `f`, and `d` a field found in the
29
+ # message in `f.b`.
30
+ #
31
+ # Field masks are used to specify a subset of fields that should be
32
+ # returned by a get operation or modified by an update operation.
33
+ # Field masks also have a custom JSON encoding (see below).
34
+ #
35
+ # # Field Masks in Projections
36
+ #
37
+ # When used in the context of a projection, a response message or
38
+ # sub-message is filtered by the API to only contain those fields as
39
+ # specified in the mask. For example, if the mask in the previous
40
+ # example is applied to a response message as follows:
41
+ #
42
+ # f {
43
+ # a : 22
44
+ # b {
45
+ # d : 1
46
+ # x : 2
47
+ # }
48
+ # y : 13
49
+ # }
50
+ # z: 8
51
+ #
52
+ # The result will not contain specific values for fields x,y and z
53
+ # (their value will be set to the default, and omitted in proto text
54
+ # output):
55
+ #
56
+ #
57
+ # f {
58
+ # a : 22
59
+ # b {
60
+ # d : 1
61
+ # }
62
+ # }
63
+ #
64
+ # A repeated field is not allowed except at the last position of a
65
+ # paths string.
66
+ #
67
+ # If a FieldMask object is not present in a get operation, the
68
+ # operation applies to all fields (as if a FieldMask of all fields
69
+ # had been specified).
70
+ #
71
+ # Note that a field mask does not necessarily apply to the
72
+ # top-level response message. In case of a REST get operation, the
73
+ # field mask applies directly to the response, but in case of a REST
74
+ # list operation, the mask instead applies to each individual message
75
+ # in the returned resource list. In case of a REST custom method,
76
+ # other definitions may be used. Where the mask applies will be
77
+ # clearly documented together with its declaration in the API. In
78
+ # any case, the effect on the returned resource/resources is required
79
+ # behavior for APIs.
80
+ #
81
+ # # Field Masks in Update Operations
82
+ #
83
+ # A field mask in update operations specifies which fields of the
84
+ # targeted resource are going to be updated. The API is required
85
+ # to only change the values of the fields as specified in the mask
86
+ # and leave the others untouched. If a resource is passed in to
87
+ # describe the updated values, the API ignores the values of all
88
+ # fields not covered by the mask.
89
+ #
90
+ # If a repeated field is specified for an update operation, new values will
91
+ # be appended to the existing repeated field in the target resource. Note that
92
+ # a repeated field is only allowed in the last position of a `paths` string.
93
+ #
94
+ # If a sub-message is specified in the last position of the field mask for an
95
+ # update operation, then new value will be merged into the existing sub-message
96
+ # in the target resource.
97
+ #
98
+ # For example, given the target message:
99
+ #
100
+ # f {
101
+ # b {
102
+ # d: 1
103
+ # x: 2
104
+ # }
105
+ # c: [1]
106
+ # }
107
+ #
108
+ # And an update message:
109
+ #
110
+ # f {
111
+ # b {
112
+ # d: 10
113
+ # }
114
+ # c: [2]
115
+ # }
116
+ #
117
+ # then if the field mask is:
118
+ #
119
+ # paths: ["f.b", "f.c"]
120
+ #
121
+ # then the result will be:
122
+ #
123
+ # f {
124
+ # b {
125
+ # d: 10
126
+ # x: 2
127
+ # }
128
+ # c: [1, 2]
129
+ # }
130
+ #
131
+ # An implementation may provide options to override this default behavior for
132
+ # repeated and message fields.
133
+ #
134
+ # In order to reset a field's value to the default, the field must
135
+ # be in the mask and set to the default value in the provided resource.
136
+ # Hence, in order to reset all fields of a resource, provide a default
137
+ # instance of the resource and set all fields in the mask, or do
138
+ # not provide a mask as described below.
139
+ #
140
+ # If a field mask is not present on update, the operation applies to
141
+ # all fields (as if a field mask of all fields has been specified).
142
+ # Note that in the presence of schema evolution, this may mean that
143
+ # fields the client does not know and has therefore not filled into
144
+ # the request will be reset to their default. If this is unwanted
145
+ # behavior, a specific service may require a client to always specify
146
+ # a field mask, producing an error if not.
147
+ #
148
+ # As with get operations, the location of the resource which
149
+ # describes the updated values in the request message depends on the
150
+ # operation kind. In any case, the effect of the field mask is
151
+ # required to be honored by the API.
152
+ #
153
+ # ## Considerations for HTTP REST
154
+ #
155
+ # The HTTP kind of an update operation which uses a field mask must
156
+ # be set to PATCH instead of PUT in order to satisfy HTTP semantics
157
+ # (PUT must only be used for full updates).
158
+ #
159
+ # # JSON Encoding of Field Masks
160
+ #
161
+ # In JSON, a field mask is encoded as a single string where paths are
162
+ # separated by a comma. Fields name in each path are converted
163
+ # to/from lower-camel naming conventions.
164
+ #
165
+ # As an example, consider the following message declarations:
166
+ #
167
+ # message Profile {
168
+ # User user = 1;
169
+ # Photo photo = 2;
170
+ # }
171
+ # message User {
172
+ # string display_name = 1;
173
+ # string address = 2;
174
+ # }
175
+ #
176
+ # In proto a field mask for `Profile` may look as such:
177
+ #
178
+ # mask {
179
+ # paths: "user.display_name"
180
+ # paths: "photo"
181
+ # }
182
+ #
183
+ # In JSON, the same mask is represented as below:
184
+ #
185
+ # {
186
+ # mask: "user.displayName,photo"
187
+ # }
188
+ #
189
+ # # Field Masks and Oneof Fields
190
+ #
191
+ # Field masks treat fields in oneofs just as regular fields. Consider the
192
+ # following message:
193
+ #
194
+ # message SampleMessage {
195
+ # oneof test_oneof {
196
+ # string name = 4;
197
+ # SubMessage sub_message = 9;
198
+ # }
199
+ # }
200
+ #
201
+ # The field mask can be:
202
+ #
203
+ # mask {
204
+ # paths: "name"
205
+ # }
206
+ #
207
+ # Or:
208
+ #
209
+ # mask {
210
+ # paths: "sub_message"
211
+ # }
212
+ #
213
+ # Note that oneof type names ("test_oneof" in this case) cannot be used in
214
+ # paths.
215
+ #
216
+ # ## Field Mask Verification
217
+ #
218
+ # The implementation of any API method which has a FieldMask type field in the
219
+ # request should verify the included field paths, and return an
220
+ # `INVALID_ARGUMENT` error if any path is unmappable.
221
+ # @!attribute [rw] paths
222
+ # @return [::Array<::String>]
223
+ # The set of field mask paths.
224
+ class FieldMask
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
228
+ end
229
+ end
@@ -28,12 +28,14 @@ module Google
28
28
  # [API Design Guide](https://cloud.google.com/apis/design/errors).
29
29
  # @!attribute [rw] code
30
30
  # @return [::Integer]
31
- # The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
31
+ # The status code, which should be an enum value of
32
+ # [google.rpc.Code][google.rpc.Code].
32
33
  # @!attribute [rw] message
33
34
  # @return [::String]
34
35
  # A developer-facing error message, which should be in English. Any
35
36
  # user-facing error message should be localized and sent in the
36
- # {::Google::Rpc::Status#details google.rpc.Status.details} field, or localized by the client.
37
+ # {::Google::Rpc::Status#details google.rpc.Status.details} field, or localized
38
+ # by the client.
37
39
  # @!attribute [rw] details
38
40
  # @return [::Array<::Google::Protobuf::Any>]
39
41
  # A list of messages that carry the error details. There is a common set of
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Type
22
+ # Represents a textual expression in the Common Expression Language (CEL)
23
+ # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
24
+ # are documented at https://github.com/google/cel-spec.
25
+ #
26
+ # Example (Comparison):
27
+ #
28
+ # title: "Summary size limit"
29
+ # description: "Determines if a summary is less than 100 chars"
30
+ # expression: "document.summary.size() < 100"
31
+ #
32
+ # Example (Equality):
33
+ #
34
+ # title: "Requestor is owner"
35
+ # description: "Determines if requestor is the document owner"
36
+ # expression: "document.owner == request.auth.claims.email"
37
+ #
38
+ # Example (Logic):
39
+ #
40
+ # title: "Public documents"
41
+ # description: "Determine whether the document should be publicly visible"
42
+ # expression: "document.type != 'private' && document.type != 'internal'"
43
+ #
44
+ # Example (Data Manipulation):
45
+ #
46
+ # title: "Notification string"
47
+ # description: "Create a notification string with a timestamp."
48
+ # expression: "'New message received at ' + string(document.create_time)"
49
+ #
50
+ # The exact variables and functions that may be referenced within an expression
51
+ # are determined by the service that evaluates it. See the service
52
+ # documentation for additional information.
53
+ # @!attribute [rw] expression
54
+ # @return [::String]
55
+ # Textual representation of an expression in Common Expression Language
56
+ # syntax.
57
+ # @!attribute [rw] title
58
+ # @return [::String]
59
+ # Optional. Title for the expression, i.e. a short string describing
60
+ # its purpose. This can be used e.g. in UIs which allow to enter the
61
+ # expression.
62
+ # @!attribute [rw] description
63
+ # @return [::String]
64
+ # Optional. Description of the expression. This is a longer text which
65
+ # describes the expression, e.g. when hovered over it in a UI.
66
+ # @!attribute [rw] location
67
+ # @return [::String]
68
+ # Optional. String indicating the location of the expression for error
69
+ # reporting, e.g. a file name and a position in the file.
70
+ class Expr
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+ end
75
+ end