google-cloud-run-v2 0.31.0 → 0.32.0

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.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/run/v2/build_pb.rb +1 -1
  3. data/lib/google/cloud/run/v2/builds/client.rb +2 -2
  4. data/lib/google/cloud/run/v2/builds/credentials.rb +2 -1
  5. data/lib/google/cloud/run/v2/builds/rest/client.rb +2 -2
  6. data/lib/google/cloud/run/v2/condition_pb.rb +2 -1
  7. data/lib/google/cloud/run/v2/execution_pb.rb +1 -1
  8. data/lib/google/cloud/run/v2/execution_template_pb.rb +1 -1
  9. data/lib/google/cloud/run/v2/executions/credentials.rb +3 -1
  10. data/lib/google/cloud/run/v2/instance_pb.rb +7 -1
  11. data/lib/google/cloud/run/v2/instance_services_pb.rb +14 -2
  12. data/lib/google/cloud/run/v2/instances/client.rb +424 -12
  13. data/lib/google/cloud/run/v2/instances/credentials.rb +3 -1
  14. data/lib/google/cloud/run/v2/instances/rest/client.rb +393 -12
  15. data/lib/google/cloud/run/v2/instances/rest/service_stub.rb +247 -0
  16. data/lib/google/cloud/run/v2/job_pb.rb +1 -1
  17. data/lib/google/cloud/run/v2/jobs/client.rb +2 -1
  18. data/lib/google/cloud/run/v2/jobs/credentials.rb +3 -1
  19. data/lib/google/cloud/run/v2/jobs/rest/client.rb +2 -1
  20. data/lib/google/cloud/run/v2/k8s.min_pb.rb +3 -1
  21. data/lib/google/cloud/run/v2/rest.rb +1 -0
  22. data/lib/google/cloud/run/v2/revision_pb.rb +2 -1
  23. data/lib/google/cloud/run/v2/revision_template_pb.rb +2 -1
  24. data/lib/google/cloud/run/v2/revisions/credentials.rb +3 -1
  25. data/lib/google/cloud/run/v2/sandbox_pb.rb +25 -0
  26. data/lib/google/cloud/run/v2/service_pb.rb +1 -1
  27. data/lib/google/cloud/run/v2/services/client.rb +12 -2
  28. data/lib/google/cloud/run/v2/services/credentials.rb +3 -1
  29. data/lib/google/cloud/run/v2/services/rest/client.rb +12 -2
  30. data/lib/google/cloud/run/v2/source_upload/client.rb +505 -0
  31. data/lib/google/cloud/run/v2/source_upload/credentials.rb +48 -0
  32. data/lib/google/cloud/run/v2/source_upload/paths.rb +69 -0
  33. data/lib/google/cloud/run/v2/source_upload/rest/client.rb +452 -0
  34. data/lib/google/cloud/run/v2/source_upload/rest/service_stub.rb +143 -0
  35. data/lib/google/cloud/run/v2/source_upload/rest.rb +53 -0
  36. data/lib/google/cloud/run/v2/source_upload.rb +56 -0
  37. data/lib/google/cloud/run/v2/source_upload_pb.rb +29 -0
  38. data/lib/google/cloud/run/v2/source_upload_services_pb.rb +52 -0
  39. data/lib/google/cloud/run/v2/task_pb.rb +2 -1
  40. data/lib/google/cloud/run/v2/task_template_pb.rb +2 -1
  41. data/lib/google/cloud/run/v2/tasks/credentials.rb +3 -1
  42. data/lib/google/cloud/run/v2/vendor_settings_pb.rb +6 -1
  43. data/lib/google/cloud/run/v2/version.rb +1 -1
  44. data/lib/google/cloud/run/v2/worker_pool_pb.rb +1 -1
  45. data/lib/google/cloud/run/v2/worker_pool_revision_template_pb.rb +2 -1
  46. data/lib/google/cloud/run/v2/worker_pools/client.rb +2 -1
  47. data/lib/google/cloud/run/v2/worker_pools/credentials.rb +3 -1
  48. data/lib/google/cloud/run/v2/worker_pools/rest/client.rb +2 -1
  49. data/lib/google/cloud/run/v2.rb +1 -0
  50. data/proto_docs/google/cloud/run/v2/build.rb +2 -2
  51. data/proto_docs/google/cloud/run/v2/condition.rb +29 -3
  52. data/proto_docs/google/cloud/run/v2/execution.rb +7 -1
  53. data/proto_docs/google/cloud/run/v2/execution_template.rb +10 -0
  54. data/proto_docs/google/cloud/run/v2/instance.rb +74 -32
  55. data/proto_docs/google/cloud/run/v2/job.rb +9 -1
  56. data/proto_docs/google/cloud/run/v2/k8s.min.rb +78 -16
  57. data/proto_docs/google/cloud/run/v2/revision.rb +17 -2
  58. data/proto_docs/google/cloud/run/v2/revision_template.rb +16 -1
  59. data/proto_docs/google/cloud/run/v2/sandbox.rb +67 -0
  60. data/proto_docs/google/cloud/run/v2/service.rb +18 -1
  61. data/proto_docs/google/cloud/run/v2/source_upload.rb +48 -0
  62. data/proto_docs/google/cloud/run/v2/task.rb +6 -0
  63. data/proto_docs/google/cloud/run/v2/task_template.rb +6 -0
  64. data/proto_docs/google/cloud/run/v2/vendor_settings.rb +80 -2
  65. data/proto_docs/google/cloud/run/v2/worker_pool.rb +2 -1
  66. data/proto_docs/google/cloud/run/v2/worker_pool_revision_template.rb +9 -0
  67. metadata +13 -1
@@ -23,13 +23,16 @@ module Google
23
23
  module V2
24
24
  # @!attribute [rw] parent
25
25
  # @return [::String]
26
+ # Required. The location and project in which this Instance should be
27
+ # created.
26
28
  # @!attribute [rw] instance
27
29
  # @return [::Google::Cloud::Run::V2::Instance]
28
30
  # @!attribute [rw] instance_id
29
31
  # @return [::String]
30
- # Required. The unique identifier for the Instance. It must begin with
32
+ # Optional. The unique identifier for the Instance. It must begin with
31
33
  # letter, and cannot end with hyphen; must contain fewer than 50 characters.
32
34
  # The name of the instance becomes \\{parent}/instances/\\{instance_id}.
35
+ # If not provided, the server will generate a unique `instance_id`.
33
36
  # @!attribute [rw] validate_only
34
37
  # @return [::Boolean]
35
38
  # Optional. Indicates that the request should be validated and default values
@@ -39,8 +42,30 @@ module Google
39
42
  extend ::Google::Protobuf::MessageExts::ClassMethods
40
43
  end
41
44
 
45
+ # Request message for updating an Instance.
46
+ # @!attribute [rw] update_mask
47
+ # @return [::Google::Protobuf::FieldMask]
48
+ # Optional. The list of fields to be updated.
49
+ # @!attribute [rw] instance
50
+ # @return [::Google::Cloud::Run::V2::Instance]
51
+ # Required. The Instance to be updated.
52
+ # @!attribute [rw] validate_only
53
+ # @return [::Boolean]
54
+ # Optional. Indicates that the request should be validated and default values
55
+ # populated, without persisting the request or updating any resources.
56
+ # @!attribute [rw] allow_missing
57
+ # @return [::Boolean]
58
+ # Optional. If set to `true`, and if the Instance does not exist, it will
59
+ # create a new one. The caller must have `run.instances.create` permissions
60
+ # if this is set to `true` and the Instance does not exist.
61
+ class UpdateInstanceRequest
62
+ include ::Google::Protobuf::MessageExts
63
+ extend ::Google::Protobuf::MessageExts::ClassMethods
64
+ end
65
+
42
66
  # @!attribute [rw] name
43
67
  # @return [::String]
68
+ # Required. The name of the Instance to retrieve.
44
69
  class GetInstanceRequest
45
70
  include ::Google::Protobuf::MessageExts
46
71
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -48,6 +73,7 @@ module Google
48
73
 
49
74
  # @!attribute [rw] name
50
75
  # @return [::String]
76
+ # Required. The name of the Instance to delete.
51
77
  # @!attribute [rw] validate_only
52
78
  # @return [::Boolean]
53
79
  # Optional. Indicates that the request should be validated without actually
@@ -65,8 +91,6 @@ module Google
65
91
  # @!attribute [rw] parent
66
92
  # @return [::String]
67
93
  # Required. The location and project to list resources on.
68
- # Format: projects/\\{project}/locations/\\{location}, where \\{project} can be
69
- # project id or number.
70
94
  # @!attribute [rw] page_size
71
95
  # @return [::Integer]
72
96
  # Optional. Maximum number of Instances to return in this call.
@@ -100,9 +124,6 @@ module Google
100
124
  # @!attribute [rw] name
101
125
  # @return [::String]
102
126
  # Required. The name of the Instance to stop.
103
- # Format:
104
- # `projects/{project}/locations/{location}/instances/{instance}`,
105
- # where `{project}` can be project id or number.
106
127
  # @!attribute [rw] validate_only
107
128
  # @return [::Boolean]
108
129
  # Optional. Indicates that the request should be validated without actually
@@ -119,10 +140,7 @@ module Google
119
140
  # Request message for starting an Instance.
120
141
  # @!attribute [rw] name
121
142
  # @return [::String]
122
- # Required. The name of the Instance to stop.
123
- # Format:
124
- # `projects/{project}/locations/{location}/instances/{instance}`,
125
- # where `{project}` can be project id or number.
143
+ # Required. The name of the Instance to start.
126
144
  # @!attribute [rw] validate_only
127
145
  # @return [::Boolean]
128
146
  # Optional. Indicates that the request should be validated without actually
@@ -140,12 +158,9 @@ module Google
140
158
  # region.
141
159
  # @!attribute [rw] name
142
160
  # @return [::String]
143
- # The fully qualified name of this Instance. In CreateInstanceRequest, this
144
- # field is ignored, and instead composed from CreateInstanceRequest.parent
145
- # and CreateInstanceRequest.instance_id.
146
- #
147
- # Format:
148
- # projects/\\{project}/locations/\\{location}/instances/\\{instance_id}
161
+ # The fully qualified name of this Instance. In `CreateInstanceRequest`, this
162
+ # field is ignored, and instead composed from `CreateInstanceRequest.parent`
163
+ # and `CreateInstanceRequest.instance_id`.
149
164
  # @!attribute [rw] description
150
165
  # @return [::String]
151
166
  # User-provided description of the Instance. This field currently has a
@@ -159,7 +174,7 @@ module Google
159
174
  # @return [::Integer]
160
175
  # Output only. A number that monotonically increases every time the user
161
176
  # modifies the desired state.
162
- # Please note that unlike v1, this is an int64 value. As with most Google
177
+ # Please note that unlike v1, this is an `int64` value. As with most Google
163
178
  # APIs, its JSON representation will be a `string` instead of an `integer`.
164
179
  # @!attribute [rw] labels
165
180
  # @return [::Google::Protobuf::Map{::String => ::String}]
@@ -194,14 +209,13 @@ module Google
194
209
  # @return [::Google::Api::LaunchStage]
195
210
  # The launch stage as defined by [Google Cloud Platform
196
211
  # Launch Stages](https://cloud.google.com/terms/launch-stages).
197
- # Cloud Run supports `ALPHA`, `BETA`, and `GA`. If no value is specified, GA
198
- # is assumed.
199
- # Set the launch stage to a preview stage on input to allow use of preview
200
- # features in that stage. On read (or output), describes whether the
201
- # resource uses preview features.
202
- # <p>
203
- # For example, if ALPHA is provided as input, but only BETA and GA-level
204
- # features are used, this field will be BETA on output.
212
+ # Cloud Run supports `ALPHA`, `BETA`, and `GA`. If no value is specified,
213
+ # `GA` is assumed. Set the launch stage to a preview stage on input to allow
214
+ # use of preview features in that stage. On read (or output), describes
215
+ # whether the resource uses preview features.
216
+ #
217
+ # For example, if `ALPHA` is provided as input, but only `BETA` and
218
+ # `GA`-level features are used, this field will be `BETA` on output.
205
219
  # @!attribute [rw] binary_authorization
206
220
  # @return [::Google::Cloud::Run::V2::BinaryAuthorization]
207
221
  # Settings for the Binary Authorization feature.
@@ -216,6 +230,9 @@ module Google
216
230
  # @return [::Array<::Google::Cloud::Run::V2::Container>]
217
231
  # Required. Holds the single container that defines the unit of execution for
218
232
  # this Instance.
233
+ # @!attribute [rw] sandboxes
234
+ # @return [::Google::Cloud::Run::V2::SandboxConfiguration]
235
+ # Optional. Configuration for sandboxes.
219
236
  # @!attribute [rw] volumes
220
237
  # @return [::Array<::Google::Cloud::Run::V2::Volume>]
221
238
  # A list of Volumes to make available to containers.
@@ -229,7 +246,7 @@ module Google
229
246
  # The action to take if the encryption key is revoked.
230
247
  # @!attribute [rw] encryption_key_shutdown_duration
231
248
  # @return [::Google::Protobuf::Duration]
232
- # If encryption_key_revocation_action is SHUTDOWN, the duration before
249
+ # If `encryption_key_revocation_action` is `SHUTDOWN`, the duration before
233
250
  # shutting down all instances. The minimum increment is 1 hour.
234
251
  # @!attribute [rw] node_selector
235
252
  # @return [::Google::Cloud::Run::V2::NodeSelector]
@@ -241,20 +258,29 @@ module Google
241
258
  # @return [::Google::Cloud::Run::V2::IngressTraffic]
242
259
  # Optional. Provides the ingress settings for this Instance. On output,
243
260
  # returns the currently observed ingress settings, or
244
- # INGRESS_TRAFFIC_UNSPECIFIED if no revision is active.
261
+ # `INGRESS_TRAFFIC_UNSPECIFIED` if no revision is active.
245
262
  # @!attribute [rw] invoker_iam_disabled
246
263
  # @return [::Boolean]
247
- # Optional. Disables IAM permission check for run.routes.invoke for callers
264
+ # Optional. Disables IAM permission check for `run.routes.invoke` for callers
248
265
  # of this Instance. For more information, visit
249
266
  # https://cloud.google.com/run/docs/securing/managing-access#invoker_check.
267
+ # @!attribute [rw] default_uri_disabled
268
+ # @return [::Boolean]
269
+ # Optional. Disables public resolution of the default URI of this Instance.
250
270
  # @!attribute [rw] iap_enabled
251
271
  # @return [::Boolean]
252
272
  # Optional. IAP settings on the Instance.
273
+ # @!attribute [rw] ssh_enabled
274
+ # @return [::Boolean]
275
+ # Optional. Enables SSH access to the Instance.
276
+ # @!attribute [rw] restart_policy
277
+ # @return [::Google::Cloud::Run::V2::Instance::RestartPolicy]
278
+ # Optional. Restart policy for the Instance.
253
279
  # @!attribute [r] observed_generation
254
280
  # @return [::Integer]
255
281
  # Output only. The generation of this Instance currently serving traffic. See
256
282
  # comments in `reconciling` for additional information on reconciliation
257
- # process in Cloud Run. Please note that unlike v1, this is an int64 value.
283
+ # process in Cloud Run. Please note that unlike v1, this is an `int64` value.
258
284
  # As with most Google APIs, its JSON representation will be a `string`
259
285
  # instead of an `integer`.
260
286
  # @!attribute [r] log_uri
@@ -284,15 +310,15 @@ module Google
284
310
  # Output only. All URLs serving traffic for this Instance.
285
311
  # @!attribute [r] reconciling
286
312
  # @return [::Boolean]
287
- # Output only. Returns true if the Instance is currently being acted upon by
288
- # the system to bring it into the desired state.
313
+ # Output only. Returns `true` if the Instance is currently being acted upon
314
+ # by the system to bring it into the desired state.
289
315
  #
290
316
  # When a new Instance is created, or an existing one is updated, Cloud Run
291
317
  # will asynchronously perform all necessary steps to bring the Instance to
292
318
  # the desired serving state. This process is called reconciliation. While
293
319
  # reconciliation is in process, `observed_generation` will have a transient
294
320
  # value that might mismatch the intended state.
295
- # Once reconciliation is over (and this field is false), there are two
321
+ # Once reconciliation is over (and this field is `false`), there are two
296
322
  # possible outcomes: reconciliation succeeded and the serving state matches
297
323
  # the Instance, or there was an error, and reconciliation failed. This state
298
324
  # can be found in `terminal_condition.state`.
@@ -321,6 +347,22 @@ module Google
321
347
  include ::Google::Protobuf::MessageExts
322
348
  extend ::Google::Protobuf::MessageExts::ClassMethods
323
349
  end
350
+
351
+ # Restart policy options for the instance. If not provided, the default is
352
+ # `ON_FAILURE`.
353
+ module RestartPolicy
354
+ # Unspecified restart policy.
355
+ RESTART_POLICY_UNSPECIFIED = 0
356
+
357
+ # Always restart the instance.
358
+ ALWAYS = 1
359
+
360
+ # Restart if the instance terminates with non-zero exit code.
361
+ ON_FAILURE = 2
362
+
363
+ # Never restart the instance.
364
+ NEVER = 3
365
+ end
324
366
  end
325
367
  end
326
368
  end
@@ -32,8 +32,9 @@ module Google
32
32
  # Required. The Job instance to create.
33
33
  # @!attribute [rw] job_id
34
34
  # @return [::String]
35
- # Required. The unique identifier for the Job. The name of the job becomes
35
+ # Optional. The unique identifier for the Job. The name of the job becomes
36
36
  # \\{parent}/jobs/\\{job_id}.
37
+ # If not provided, the server will generate a unique `job_id`.
37
38
  # @!attribute [rw] validate_only
38
39
  # @return [::Boolean]
39
40
  # Indicates that the request should be validated and default values
@@ -160,6 +161,10 @@ module Google
160
161
  # Duration in seconds the task may be active before the system will
161
162
  # actively try to mark it failed and kill associated containers. Will
162
163
  # replace existing timeout_seconds value.
164
+ # @!attribute [rw] delay_execution
165
+ # @return [::Boolean]
166
+ # Optional. If true, the system will start the execution within the next 12
167
+ # hours depending on available capacity.
163
168
  class Overrides
164
169
  include ::Google::Protobuf::MessageExts
165
170
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -335,6 +340,9 @@ module Google
335
340
  # The sum of job name and token length must be fewer than 63 characters.
336
341
  #
337
342
  # Note: The following fields are mutually exclusive: `run_execution_token`, `start_execution_token`. If a field in that set is populated, all other fields in the set will automatically be cleared.
343
+ # @!attribute [rw] functional_type
344
+ # @return [::Google::Cloud::Run::V2::FunctionalType]
345
+ # Optional. The functional type of the Job.
338
346
  # @!attribute [rw] etag
339
347
  # @return [::String]
340
348
  # Optional. A system-generated fingerprint for this version of the
@@ -36,7 +36,8 @@ module Google
36
36
  # Dockerhub is assumed.
37
37
  # @!attribute [rw] source_code
38
38
  # @return [::Google::Cloud::Run::V2::SourceCode]
39
- # Optional. Location of the source.
39
+ # Optional. Location of the source. This field is only supported in Cloud Run
40
+ # Service.
40
41
  # @!attribute [rw] command
41
42
  # @return [::Array<::String>]
42
43
  # Entrypoint array. Not executed within a shell.
@@ -90,6 +91,10 @@ module Google
90
91
  # @!attribute [r] build_info
91
92
  # @return [::Google::Cloud::Run::V2::BuildInfo]
92
93
  # Output only. The build info of the container image.
94
+ # @!attribute [rw] sandbox_launcher
95
+ # @return [::Boolean]
96
+ # Optional. Indicates that this container can act as a sandbox supervisor and
97
+ # launch sandboxes.
93
98
  class Container
94
99
  include ::Google::Protobuf::MessageExts
95
100
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -208,6 +213,8 @@ module Google
208
213
  # @return [::String]
209
214
  # Optional. Path within the volume from which the container's volume should
210
215
  # be mounted. Defaults to "" (volume's root).
216
+ #
217
+ # This field is currently rejected in Secret volume mounts.
211
218
  class VolumeMount
212
219
  include ::Google::Protobuf::MessageExts
213
220
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -326,24 +333,36 @@ module Google
326
333
  # how to connect Cloud SQL and Cloud Run.
327
334
  # @!attribute [rw] instances
328
335
  # @return [::Array<::String>]
329
- # The Cloud SQL instance connection names, as can be found in
330
- # https://console.cloud.google.com/sql/instances. Visit
331
- # https://cloud.google.com/sql/docs/mysql/connect-run for more information on
332
- # how to connect Cloud SQL and Cloud Run. Format:
333
- # \\{project}:\\{location}:\\{instance}
336
+ # A list of Cloud SQL instance connection names. Cloud Run uses these
337
+ # to establish connections to the specified Cloud SQL instances.
338
+ # While the SQL instance name itself is unique within a project,
339
+ # the full connection name requires the location for proper routing.
340
+ # Format: `{project}:{location}:{instance}`
341
+ # Example: `my-project:us-central1:my-instance`
342
+ #
343
+ # You can find this value on the instance's **Overview** page in the
344
+ # Google Cloud console or by using the following `gcloud` command:
345
+ #
346
+ # ```sh
347
+ # gcloud sql instances describe INSTANCE_NAME \
348
+ # --format='value(connectionName)'
349
+ # ```
350
+ #
351
+ # Visit https://cloud.google.com/sql/docs/mysql/connect-run for more
352
+ # information on how to connect Cloud SQL and Cloud Run.
334
353
  class CloudSqlInstance
335
354
  include ::Google::Protobuf::MessageExts
336
355
  extend ::Google::Protobuf::MessageExts::ClassMethods
337
356
  end
338
357
 
339
- # In memory (tmpfs) ephemeral storage.
358
+ # Represents in-memory (tmpfs) or disk-backed ephemeral storage.
340
359
  # It is ephemeral in the sense that when the sandbox is taken down, the data is
341
360
  # destroyed with it (it does not persist across sandbox runs).
342
361
  # @!attribute [rw] medium
343
362
  # @return [::Google::Cloud::Run::V2::EmptyDirVolumeSource::Medium]
344
- # The medium on which the data is stored. Acceptable values today is only
345
- # MEMORY or none. When none, the default will currently be backed by memory
346
- # but could change over time. +optional
363
+ # The medium on which the data is stored. Acceptable values are `MEMORY`,
364
+ # `DISK`, or unset (`MEDIUM_UNSPECIFIED`). When unset, the default is
365
+ # currently memory-backed but could change over time.
347
366
  # @!attribute [rw] size_limit
348
367
  # @return [::String]
349
368
  # Limit on the storage usable by this EmptyDir volume.
@@ -351,10 +370,11 @@ module Google
351
370
  # The maximum usage on memory medium EmptyDir would be the minimum value
352
371
  # between the SizeLimit specified here and the sum of memory limits of all
353
372
  # containers. The default is nil which means that the limit is undefined.
354
- # More info:
355
- # https://cloud.google.com/run/docs/configuring/in-memory-volumes#configure-volume.
356
- # Info in Kubernetes:
357
- # https://kubernetes.io/docs/concepts/storage/volumes/#emptydir
373
+ # For more information, see
374
+ # [Configure in-memory volume
375
+ # mounts](https://cloud.google.com/run/docs/configuring/in-memory-volumes#configure-volume)
376
+ # and the [Kubernetes `emptyDir` volume
377
+ # documentation](https://kubernetes.io/docs/concepts/storage/volumes/#emptydir).
358
378
  class EmptyDirVolumeSource
359
379
  include ::Google::Protobuf::MessageExts
360
380
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -367,6 +387,9 @@ module Google
367
387
 
368
388
  # Explicitly set the EmptyDir to be in memory. Uses tmpfs.
369
389
  MEMORY = 1
390
+
391
+ # Explicitly sets the EmptyDir to be a disk.
392
+ DISK = 2
370
393
  end
371
394
  end
372
395
 
@@ -385,8 +408,8 @@ module Google
385
408
  extend ::Google::Protobuf::MessageExts::ClassMethods
386
409
  end
387
410
 
388
- # Represents a volume backed by a Cloud Storage bucket using Cloud Storage
389
- # FUSE.
411
+ # Represents a volume backed by a Cloud Storage bucket (mounted via Cloud
412
+ # Storage FUSE or as a block device disk).
390
413
  # @!attribute [rw] bucket
391
414
  # @return [::String]
392
415
  # Cloud Storage Bucket name.
@@ -522,6 +545,15 @@ module Google
522
545
  # @!attribute [rw] cloud_storage_source
523
546
  # @return [::Google::Cloud::Run::V2::SourceCode::CloudStorageSource]
524
547
  # The source is a Cloud Storage bucket.
548
+ #
549
+ # Note: The following fields are mutually exclusive: `cloud_storage_source`, `inlined_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
550
+ # @!attribute [rw] inlined_source
551
+ # @return [::Google::Cloud::Run::V2::SourceCode::InlinedSource]
552
+ # Optional. Input only. Source code inlined in the request. Cloud Run will
553
+ # store the inlined_source to Cloud Storage and replace the field with
554
+ # cloud_storage_source. This field is only supported in Cloud Run Service.
555
+ #
556
+ # Note: The following fields are mutually exclusive: `inlined_source`, `cloud_storage_source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
525
557
  class SourceCode
526
558
  include ::Google::Protobuf::MessageExts
527
559
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -540,6 +572,36 @@ module Google
540
572
  include ::Google::Protobuf::MessageExts
541
573
  extend ::Google::Protobuf::MessageExts::ClassMethods
542
574
  end
575
+
576
+ # Source file.
577
+ # @!attribute [rw] filename
578
+ # @return [::String]
579
+ # Required. Input only. The file name for the source code. e.g.,
580
+ # `"index.js"` or
581
+ # `"node_modules/dependency.js"`. The filename must be less than 255
582
+ # characters and cannot contain `..`, `./`, `//`, or end with a `/`.
583
+ # Cloud Run will place the files in the container subdirectories, please
584
+ # use relative path to access the file.
585
+ # @!attribute [rw] content
586
+ # @return [::String]
587
+ # Required. Input only. Represents the exact, literal, and complete source
588
+ # code of the file. Placeholders like `...` or comments such as `# [rest of
589
+ # code]` should NEVER be used as omission. Every character in this field
590
+ # will be built into the final container. Any omission will result in a
591
+ # broken application.
592
+ class SourceFile
593
+ include ::Google::Protobuf::MessageExts
594
+ extend ::Google::Protobuf::MessageExts::ClassMethods
595
+ end
596
+
597
+ # Inlined source.
598
+ # @!attribute [rw] sources
599
+ # @return [::Array<::Google::Cloud::Run::V2::SourceCode::SourceFile>]
600
+ # Required. Input only. The source code.
601
+ class InlinedSource
602
+ include ::Google::Protobuf::MessageExts
603
+ extend ::Google::Protobuf::MessageExts::ClassMethods
604
+ end
543
605
  end
544
606
  end
545
607
  end
@@ -141,7 +141,7 @@ module Google
141
141
  #
142
142
  # Note that this value might not be what was used
143
143
  # as input. For example, if ALPHA was provided as input in the parent
144
- # resource, but only BETA and GA-level features are were, this field will be
144
+ # resource, but only BETA and GA-level features are used, this field will be
145
145
  # BETA.
146
146
  # @!attribute [r] service
147
147
  # @return [::String]
@@ -166,8 +166,11 @@ module Google
166
166
  # revision, and determines what permissions the revision has.
167
167
  # @!attribute [rw] containers
168
168
  # @return [::Array<::Google::Cloud::Run::V2::Container>]
169
- # Holds the single container that defines the unit of execution for this
169
+ # Holds the list which define the units of execution for this
170
170
  # Revision.
171
+ # @!attribute [r] sandboxes
172
+ # @return [::Google::Cloud::Run::V2::SandboxConfiguration]
173
+ # Output only. Configuration for sandboxes.
171
174
  # @!attribute [rw] volumes
172
175
  # @return [::Array<::Google::Cloud::Run::V2::Volume>]
173
176
  # A list of Volumes to make available to containers.
@@ -219,6 +222,9 @@ module Google
219
222
  # @!attribute [rw] node_selector
220
223
  # @return [::Google::Cloud::Run::V2::NodeSelector]
221
224
  # The node selector for the revision.
225
+ # @!attribute [rw] workload_identity_config
226
+ # @return [::Google::Cloud::Run::V2::WorkloadIdentityConfig]
227
+ # Optional. The Revision's workload identity settings.
222
228
  # @!attribute [r] gpu_zonal_redundancy_disabled
223
229
  # @return [::Boolean]
224
230
  # Optional. Output only. True if GPU zonal redundancy is disabled on this
@@ -226,6 +232,15 @@ module Google
226
232
  # @!attribute [r] creator
227
233
  # @return [::String]
228
234
  # Output only. Email address of the authenticated creator.
235
+ # @!attribute [r] client
236
+ # @return [::String]
237
+ # Output only. Arbitrary identifier for the API client.
238
+ # @!attribute [r] client_version
239
+ # @return [::String]
240
+ # Output only. Arbitrary version identifier for the API client.
241
+ # @!attribute [r] ambient_networking
242
+ # @return [::Google::Cloud::Run::V2::AmbientNetworking]
243
+ # Output only. The ambient networking configuration for this revision.
229
244
  # @!attribute [r] etag
230
245
  # @return [::String]
231
246
  # Output only. A system-generated fingerprint for this version of the
@@ -72,8 +72,11 @@ module Google
72
72
  # provided, the revision will use the project's default service account.
73
73
  # @!attribute [rw] containers
74
74
  # @return [::Array<::Google::Cloud::Run::V2::Container>]
75
- # Holds the single container that defines the unit of execution for this
75
+ # Holds the list which define the units of execution for this
76
76
  # Revision.
77
+ # @!attribute [rw] sandboxes
78
+ # @return [::Google::Cloud::Run::V2::SandboxConfiguration]
79
+ # Optional. Configuration for sandboxes.
77
80
  # @!attribute [rw] volumes
78
81
  # @return [::Array<::Google::Cloud::Run::V2::Volume>]
79
82
  # Optional. A list of Volumes to make available to containers.
@@ -109,9 +112,21 @@ module Google
109
112
  # @!attribute [rw] node_selector
110
113
  # @return [::Google::Cloud::Run::V2::NodeSelector]
111
114
  # Optional. The node selector for the revision template.
115
+ # @!attribute [rw] workload_identity_config
116
+ # @return [::Google::Cloud::Run::V2::WorkloadIdentityConfig]
117
+ # Optional. The Revision's workload identity settings.
112
118
  # @!attribute [rw] gpu_zonal_redundancy_disabled
113
119
  # @return [::Boolean]
114
120
  # Optional. True if GPU zonal redundancy is disabled on this revision.
121
+ # @!attribute [rw] client
122
+ # @return [::String]
123
+ # Optional. Arbitrary identifier for the API client.
124
+ # @!attribute [rw] client_version
125
+ # @return [::String]
126
+ # Optional. Arbitrary version identifier for the API client.
127
+ # @!attribute [rw] ambient_networking
128
+ # @return [::Google::Cloud::Run::V2::AmbientNetworking]
129
+ # Optional. The ambient networking configuration for this revision.
115
130
  class RevisionTemplate
116
131
  include ::Google::Protobuf::MessageExts
117
132
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 Cloud
22
+ module Run
23
+ module V2
24
+ # Configuration for sandboxes.
25
+ # @!attribute [rw] templates
26
+ # @return [::Array<::Google::Cloud::Run::V2::SandboxTemplate>]
27
+ # Required. Sandbox templates that can be launched through the `sandbox` CLI.
28
+ class SandboxConfiguration
29
+ include ::Google::Protobuf::MessageExts
30
+ extend ::Google::Protobuf::MessageExts::ClassMethods
31
+ end
32
+
33
+ # Template for a single sandbox.
34
+ # @!attribute [rw] name
35
+ # @return [::String]
36
+ # Required. Name of the sandbox specified as a DNS_LABEL (RFC 1123).
37
+ # @!attribute [rw] image
38
+ # @return [::String]
39
+ # Required. Name of the container image in Dockerhub or Artifact Registry. If
40
+ # the host is not provided, Dockerhub is assumed.
41
+ # @!attribute [rw] command
42
+ # @return [::Array<::String>]
43
+ # Optional. Entrypoint array. Not executed within a shell.
44
+ # The docker image's ENTRYPOINT is used if this is not provided.
45
+ # @!attribute [rw] args
46
+ # @return [::Array<::String>]
47
+ # Optional. Arguments to the entrypoint.
48
+ # The docker image's CMD is used if this is not provided.
49
+ # @!attribute [rw] env
50
+ # @return [::Array<::Google::Cloud::Run::V2::EnvVar>]
51
+ # Optional. List of environment variables to set in the sandbox.
52
+ # @!attribute [rw] volume_mounts
53
+ # @return [::Array<::Google::Cloud::Run::V2::VolumeMount>]
54
+ # Optional. Volume to mount into the container's filesystem.
55
+ # @!attribute [rw] working_dir
56
+ # @return [::String]
57
+ # Optional. Container's working directory.
58
+ # If not specified, the container runtime's default will be used, which
59
+ # might be configured in the container image.
60
+ class SandboxTemplate
61
+ include ::Google::Protobuf::MessageExts
62
+ extend ::Google::Protobuf::MessageExts::ClassMethods
63
+ end
64
+ end
65
+ end
66
+ end
67
+ end
@@ -32,9 +32,10 @@ module Google
32
32
  # Required. The Service instance to create.
33
33
  # @!attribute [rw] service_id
34
34
  # @return [::String]
35
- # Required. The unique identifier for the Service. It must begin with letter,
35
+ # Optional. The unique identifier for the Service. It must begin with letter,
36
36
  # and cannot end with hyphen; must contain fewer than 50 characters.
37
37
  # The name of the service becomes \\{parent}/services/\\{service_id}.
38
+ # If not provided, the server will generate a unique `service_id`.
38
39
  # @!attribute [rw] validate_only
39
40
  # @return [::Boolean]
40
41
  # Indicates that the request should be validated and default values
@@ -60,6 +61,16 @@ module Google
60
61
  # Optional. If set to true, and if the Service does not exist, it will create
61
62
  # a new one. The caller must have 'run.services.create' permissions if this
62
63
  # is set to true and the Service does not exist.
64
+ # @!attribute [rw] force_new_revision
65
+ # @return [::Boolean]
66
+ # Optional. If set to true, a new revision will be created from the template
67
+ # even if the system doesn't detect any changes from the previously deployed
68
+ # revision.
69
+ #
70
+ # This may be useful for cases where the underlying resources need to be
71
+ # recreated or reinitialized. For example if the image is specified by label,
72
+ # but the underlying image digest has changed) or if the container performs
73
+ # deployment initialization work that needs to be performed again.
63
74
  class UpdateServiceRequest
64
75
  include ::Google::Protobuf::MessageExts
65
76
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -259,6 +270,9 @@ module Google
259
270
  # @!attribute [rw] iap_enabled
260
271
  # @return [::Boolean]
261
272
  # Optional. IAP settings on the Service.
273
+ # @!attribute [rw] ssh_enabled
274
+ # @return [::Boolean]
275
+ # Optional. Enables SSH access to the Service.
262
276
  # @!attribute [rw] multi_region_settings
263
277
  # @return [::Google::Cloud::Run::V2::Service::MultiRegionSettings]
264
278
  # Optional. Settings for multi-region deployment.
@@ -316,6 +330,9 @@ module Google
316
330
  # @!attribute [rw] build_config
317
331
  # @return [::Google::Cloud::Run::V2::BuildConfig]
318
332
  # Optional. Configuration for building a Cloud Run function.
333
+ # @!attribute [rw] functional_type
334
+ # @return [::Google::Cloud::Run::V2::FunctionalType]
335
+ # Optional. The functional type of the Service.
319
336
  # @!attribute [r] reconciling
320
337
  # @return [::Boolean]
321
338
  # Output only. Returns true if the Service is currently being acted upon by