google-apis-workstations_v1beta 0.14.0 → 0.16.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/google/apis/workstations_v1beta/classes.rb +341 -197
- data/lib/google/apis/workstations_v1beta/gem_version.rb +2 -2
- data/lib/google/apis/workstations_v1beta/representations.rb +36 -0
- data/lib/google/apis/workstations_v1beta/service.rb +51 -48
- metadata +4 -4
@@ -26,13 +26,13 @@ module Google
|
|
26
26
|
class Accelerator
|
27
27
|
include Google::Apis::Core::Hashable
|
28
28
|
|
29
|
-
# Number of accelerator cards exposed to the instance.
|
29
|
+
# Optional. Number of accelerator cards exposed to the instance.
|
30
30
|
# Corresponds to the JSON property `count`
|
31
31
|
# @return [Fixnum]
|
32
32
|
attr_accessor :count
|
33
33
|
|
34
|
-
# Type of accelerator resource to attach to the instance, for example,
|
35
|
-
# tesla-p100"
|
34
|
+
# Optional. Type of accelerator resource to attach to the instance, for example,
|
35
|
+
# `"nvidia-tesla-p100"`.
|
36
36
|
# Corresponds to the JSON property `type`
|
37
37
|
# @return [String]
|
38
38
|
attr_accessor :type
|
@@ -212,24 +212,24 @@ module Google
|
|
212
212
|
class Container
|
213
213
|
include Google::Apis::Core::Hashable
|
214
214
|
|
215
|
-
# Arguments passed to the entrypoint.
|
215
|
+
# Optional. Arguments passed to the entrypoint.
|
216
216
|
# Corresponds to the JSON property `args`
|
217
217
|
# @return [Array<String>]
|
218
218
|
attr_accessor :args
|
219
219
|
|
220
|
-
# If set, overrides the default ENTRYPOINT specified by the image.
|
220
|
+
# Optional. If set, overrides the default ENTRYPOINT specified by the image.
|
221
221
|
# Corresponds to the JSON property `command`
|
222
222
|
# @return [Array<String>]
|
223
223
|
attr_accessor :command
|
224
224
|
|
225
|
-
# Environment variables passed to the container's entrypoint.
|
225
|
+
# Optional. Environment variables passed to the container's entrypoint.
|
226
226
|
# Corresponds to the JSON property `env`
|
227
227
|
# @return [Hash<String,String>]
|
228
228
|
attr_accessor :env
|
229
229
|
|
230
|
-
# A Docker container image that defines a custom environment. Cloud
|
231
|
-
# provides a number of [preconfigured images](https://cloud.google.
|
232
|
-
# workstations/docs/preconfigured-base-images), but you can create your own [
|
230
|
+
# Optional. A Docker container image that defines a custom environment. Cloud
|
231
|
+
# Workstations provides a number of [preconfigured images](https://cloud.google.
|
232
|
+
# com/workstations/docs/preconfigured-base-images), but you can create your own [
|
233
233
|
# custom container images](https://cloud.google.com/workstations/docs/custom-
|
234
234
|
# container-images). If using a private image, the `host.gceInstance.
|
235
235
|
# serviceAccount` field must be specified in the workstation configuration and
|
@@ -239,12 +239,12 @@ module Google
|
|
239
239
|
# @return [String]
|
240
240
|
attr_accessor :image
|
241
241
|
|
242
|
-
# If set, overrides the USER specified in the image with the given uid.
|
242
|
+
# Optional. If set, overrides the USER specified in the image with the given uid.
|
243
243
|
# Corresponds to the JSON property `runAsUser`
|
244
244
|
# @return [Fixnum]
|
245
245
|
attr_accessor :run_as_user
|
246
246
|
|
247
|
-
# If set, overrides the default DIR specified by the image.
|
247
|
+
# Optional. If set, overrides the default DIR specified by the image.
|
248
248
|
# Corresponds to the JSON property `workingDir`
|
249
249
|
# @return [String]
|
250
250
|
attr_accessor :working_dir
|
@@ -272,8 +272,8 @@ module Google
|
|
272
272
|
class CustomerEncryptionKey
|
273
273
|
include Google::Apis::Core::Hashable
|
274
274
|
|
275
|
-
# Immutable. The name of the Google Cloud KMS encryption key. For example, `
|
276
|
-
# projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME`.
|
275
|
+
# Immutable. The name of the Google Cloud KMS encryption key. For example, `"
|
276
|
+
# projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"`.
|
277
277
|
# The key must be in the same region as the workstation configuration.
|
278
278
|
# Corresponds to the JSON property `kmsKey`
|
279
279
|
# @return [String]
|
@@ -300,6 +300,32 @@ module Google
|
|
300
300
|
end
|
301
301
|
end
|
302
302
|
|
303
|
+
# An ephemeral directory which won't persist across workstation sessions. It is
|
304
|
+
# freshly created on every workstation start operation.
|
305
|
+
class EphemeralDirectory
|
306
|
+
include Google::Apis::Core::Hashable
|
307
|
+
|
308
|
+
# An EphemeralDirectory is backed by a Compute Engine persistent disk.
|
309
|
+
# Corresponds to the JSON property `gcePd`
|
310
|
+
# @return [Google::Apis::WorkstationsV1beta::GcePersistentDisk]
|
311
|
+
attr_accessor :gce_pd
|
312
|
+
|
313
|
+
# Required. Location of this directory in the running workstation.
|
314
|
+
# Corresponds to the JSON property `mountPath`
|
315
|
+
# @return [String]
|
316
|
+
attr_accessor :mount_path
|
317
|
+
|
318
|
+
def initialize(**args)
|
319
|
+
update!(**args)
|
320
|
+
end
|
321
|
+
|
322
|
+
# Update properties of this object
|
323
|
+
def update!(**args)
|
324
|
+
@gce_pd = args[:gce_pd] if args.key?(:gce_pd)
|
325
|
+
@mount_path = args[:mount_path] if args.key?(:mount_path)
|
326
|
+
end
|
327
|
+
end
|
328
|
+
|
303
329
|
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
304
330
|
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
305
331
|
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
@@ -358,7 +384,7 @@ module Google
|
|
358
384
|
class GceConfidentialInstanceConfig
|
359
385
|
include Google::Apis::Core::Hashable
|
360
386
|
|
361
|
-
# Whether the instance has confidential compute enabled.
|
387
|
+
# Optional. Whether the instance has confidential compute enabled.
|
362
388
|
# Corresponds to the JSON property `enableConfidentialCompute`
|
363
389
|
# @return [Boolean]
|
364
390
|
attr_accessor :enable_confidential_compute
|
@@ -378,13 +404,14 @@ module Google
|
|
378
404
|
class GceInstance
|
379
405
|
include Google::Apis::Core::Hashable
|
380
406
|
|
381
|
-
# A list of the type and count of accelerator cards attached to the
|
407
|
+
# Optional. A list of the type and count of accelerator cards attached to the
|
408
|
+
# instance.
|
382
409
|
# Corresponds to the JSON property `accelerators`
|
383
410
|
# @return [Array<Google::Apis::WorkstationsV1beta::Accelerator>]
|
384
411
|
attr_accessor :accelerators
|
385
412
|
|
386
|
-
# The size of the boot disk for the VM in gigabytes (GB). The minimum
|
387
|
-
# size is `30` GB. Defaults to `50` GB.
|
413
|
+
# Optional. The size of the boot disk for the VM in gigabytes (GB). The minimum
|
414
|
+
# boot disk size is `30` GB. Defaults to `50` GB.
|
388
415
|
# Corresponds to the JSON property `bootDiskSizeGb`
|
389
416
|
# @return [Fixnum]
|
390
417
|
attr_accessor :boot_disk_size_gb
|
@@ -394,33 +421,56 @@ module Google
|
|
394
421
|
# @return [Google::Apis::WorkstationsV1beta::GceConfidentialInstanceConfig]
|
395
422
|
attr_accessor :confidential_instance_config
|
396
423
|
|
397
|
-
# When set to true, disables public IP addresses for VMs. If you
|
398
|
-
# IP addresses, you must set up Private Google Access or Cloud
|
399
|
-
# network. If you use Private Google Access and you use `private.
|
400
|
-
# or `restricted.googleapis.com` for Container Registry and
|
401
|
-
# make sure that you set up DNS records for domains `*.gcr.io`
|
402
|
-
# Defaults to false (VMs have public IP addresses).
|
424
|
+
# Optional. When set to true, disables public IP addresses for VMs. If you
|
425
|
+
# disable public IP addresses, you must set up Private Google Access or Cloud
|
426
|
+
# NAT on your network. If you use Private Google Access and you use `private.
|
427
|
+
# googleapis.com` or `restricted.googleapis.com` for Container Registry and
|
428
|
+
# Artifact Registry, make sure that you set up DNS records for domains `*.gcr.io`
|
429
|
+
# and `*.pkg.dev`. Defaults to false (VMs have public IP addresses).
|
403
430
|
# Corresponds to the JSON property `disablePublicIpAddresses`
|
404
431
|
# @return [Boolean]
|
405
432
|
attr_accessor :disable_public_ip_addresses
|
406
433
|
alias_method :disable_public_ip_addresses?, :disable_public_ip_addresses
|
407
434
|
|
408
|
-
# Whether to enable nested virtualization on
|
435
|
+
# Optional. Whether to enable nested virtualization on Cloud Workstations VMs
|
436
|
+
# created under this workstation configuration. Nested virtualization lets you
|
437
|
+
# run virtual machine (VM) instances inside your workstation. Before enabling
|
438
|
+
# nested virtualization, consider the following important considerations. Cloud
|
439
|
+
# Workstations instances are subject to the [same restrictions as Compute Engine
|
440
|
+
# instances](https://cloud.google.com/compute/docs/instances/nested-
|
441
|
+
# virtualization/overview#restrictions): * **Organization policy**: projects,
|
442
|
+
# folders, or organizations may be restricted from creating nested VMs if the **
|
443
|
+
# Disable VM nested virtualization** constraint is enforced in the organization
|
444
|
+
# policy. For more information, see the Compute Engine section, [Checking
|
445
|
+
# whether nested virtualization is allowed](https://cloud.google.com/compute/
|
446
|
+
# docs/instances/nested-virtualization/managing-constraint#
|
447
|
+
# checking_whether_nested_virtualization_is_allowed). * **Performance**: nested
|
448
|
+
# VMs might experience a 10% or greater decrease in performance for workloads
|
449
|
+
# that are CPU-bound and possibly greater than a 10% decrease for workloads that
|
450
|
+
# are input/output bound. * **Machine Type**: nested virtualization can only be
|
451
|
+
# enabled on workstation configurations that specify a machine_type in the N1 or
|
452
|
+
# N2 machine series. * **GPUs**: nested virtualization may not be enabled on
|
453
|
+
# workstation configurations with accelerators. * **Operating System**: Because [
|
454
|
+
# Container-Optimized OS](https://cloud.google.com/compute/docs/images/os-
|
455
|
+
# details#container-optimized_os_cos) does not support nested virtualization,
|
456
|
+
# when nested virtualization is enabled, the underlying Compute Engine VM
|
457
|
+
# instances boot from an [Ubuntu LTS](https://cloud.google.com/compute/docs/
|
458
|
+
# images/os-details#ubuntu_lts) image.
|
409
459
|
# Corresponds to the JSON property `enableNestedVirtualization`
|
410
460
|
# @return [Boolean]
|
411
461
|
attr_accessor :enable_nested_virtualization
|
412
462
|
alias_method :enable_nested_virtualization?, :enable_nested_virtualization
|
413
463
|
|
414
|
-
# The type of machine to use for VM instances—for example, `e2-
|
415
|
-
# more information about machine types that Cloud Workstations
|
416
|
-
# list of [available machine types](https://cloud.google.com/
|
417
|
-
# available-machine-types).
|
464
|
+
# Optional. The type of machine to use for VM instances—for example, `"e2-
|
465
|
+
# standard-4"`. For more information about machine types that Cloud Workstations
|
466
|
+
# supports, see the list of [available machine types](https://cloud.google.com/
|
467
|
+
# workstations/docs/available-machine-types).
|
418
468
|
# Corresponds to the JSON property `machineType`
|
419
469
|
# @return [String]
|
420
470
|
attr_accessor :machine_type
|
421
471
|
|
422
|
-
# The number of VMs that the system should keep idle so that new
|
423
|
-
# can be started quickly for new users. Defaults to `0` in the API.
|
472
|
+
# Optional. The number of VMs that the system should keep idle so that new
|
473
|
+
# workstations can be started quickly for new users. Defaults to `0` in the API.
|
424
474
|
# Corresponds to the JSON property `poolSize`
|
425
475
|
# @return [Fixnum]
|
426
476
|
attr_accessor :pool_size
|
@@ -431,30 +481,38 @@ module Google
|
|
431
481
|
# @return [Fixnum]
|
432
482
|
attr_accessor :pooled_instances
|
433
483
|
|
434
|
-
# The email address of the service account for Cloud Workstations VMs
|
435
|
-
# with this configuration. When specified, be sure that the service
|
436
|
-
# logginglogEntries.create` permission on the project so it can
|
437
|
-
# to Cloud Logging. If using a custom container image, the
|
438
|
-
# have permissions to pull the specified image. If you as
|
439
|
-
# to be able to `ssh` into the underlying VM, you need to
|
440
|
-
# service account for which you have the `iam.
|
441
|
-
# Conversely, if you don't want anyone to be
|
442
|
-
# VM, use a service account where no one has
|
443
|
-
# run with a service account provided by the
|
444
|
-
# image must be publicly accessible.
|
484
|
+
# Optional. The email address of the service account for Cloud Workstations VMs
|
485
|
+
# created with this configuration. When specified, be sure that the service
|
486
|
+
# account has `logginglogEntries.create` permission on the project so it can
|
487
|
+
# write logs out to Cloud Logging. If using a custom container image, the
|
488
|
+
# service account must have permissions to pull the specified image. If you as
|
489
|
+
# the administrator want to be able to `ssh` into the underlying VM, you need to
|
490
|
+
# set this value to a service account for which you have the `iam.
|
491
|
+
# serviceAccounts.actAs` permission. Conversely, if you don't want anyone to be
|
492
|
+
# able to `ssh` into the underlying VM, use a service account where no one has
|
493
|
+
# that permission. If not set, VMs run with a service account provided by the
|
494
|
+
# Cloud Workstations service, and the image must be publicly accessible.
|
445
495
|
# Corresponds to the JSON property `serviceAccount`
|
446
496
|
# @return [String]
|
447
497
|
attr_accessor :service_account
|
448
498
|
|
499
|
+
# Optional. Scopes to grant to the service_account. Various scopes are
|
500
|
+
# automatically added based on feature usage. When specified, users of
|
501
|
+
# workstations under this configuration must have `iam.serviceAccounts.actAs` on
|
502
|
+
# the service account.
|
503
|
+
# Corresponds to the JSON property `serviceAccountScopes`
|
504
|
+
# @return [Array<String>]
|
505
|
+
attr_accessor :service_account_scopes
|
506
|
+
|
449
507
|
# A set of Compute Engine Shielded instance options.
|
450
508
|
# Corresponds to the JSON property `shieldedInstanceConfig`
|
451
509
|
# @return [Google::Apis::WorkstationsV1beta::GceShieldedInstanceConfig]
|
452
510
|
attr_accessor :shielded_instance_config
|
453
511
|
|
454
|
-
# Network tags to add to the Compute Engine
|
455
|
-
# This option applies [network tags](https://cloud.google.com/vpc/
|
456
|
-
# remove-network-tags) to VMs created with this configuration. These
|
457
|
-
# tags enable the creation of [firewall rules](https://cloud.google.com/
|
512
|
+
# Optional. Network tags to add to the Compute Engine VMs backing the
|
513
|
+
# workstations. This option applies [network tags](https://cloud.google.com/vpc/
|
514
|
+
# docs/add-remove-network-tags) to VMs created with this configuration. These
|
515
|
+
# network tags enable the creation of [firewall rules](https://cloud.google.com/
|
458
516
|
# workstations/docs/configure-firewall-rules).
|
459
517
|
# Corresponds to the JSON property `tags`
|
460
518
|
# @return [Array<String>]
|
@@ -475,13 +533,59 @@ module Google
|
|
475
533
|
@pool_size = args[:pool_size] if args.key?(:pool_size)
|
476
534
|
@pooled_instances = args[:pooled_instances] if args.key?(:pooled_instances)
|
477
535
|
@service_account = args[:service_account] if args.key?(:service_account)
|
536
|
+
@service_account_scopes = args[:service_account_scopes] if args.key?(:service_account_scopes)
|
478
537
|
@shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
|
479
538
|
@tags = args[:tags] if args.key?(:tags)
|
480
539
|
end
|
481
540
|
end
|
482
541
|
|
542
|
+
# An EphemeralDirectory is backed by a Compute Engine persistent disk.
|
543
|
+
class GcePersistentDisk
|
544
|
+
include Google::Apis::Core::Hashable
|
545
|
+
|
546
|
+
# Optional. Type of the disk to use. Defaults to `"pd-standard"`.
|
547
|
+
# Corresponds to the JSON property `diskType`
|
548
|
+
# @return [String]
|
549
|
+
attr_accessor :disk_type
|
550
|
+
|
551
|
+
# Optional. Whether the disk is read only. If true, the disk may be shared by
|
552
|
+
# multiple VMs and source_snapshot must be set.
|
553
|
+
# Corresponds to the JSON property `readOnly`
|
554
|
+
# @return [Boolean]
|
555
|
+
attr_accessor :read_only
|
556
|
+
alias_method :read_only?, :read_only
|
557
|
+
|
558
|
+
# Optional. Name of the disk image to use as the source for the disk. Must be
|
559
|
+
# empty if source_snapshot is set. Updating source_image will update content in
|
560
|
+
# the ephemeral directory after the workstation is restarted. This field is
|
561
|
+
# mutable.
|
562
|
+
# Corresponds to the JSON property `sourceImage`
|
563
|
+
# @return [String]
|
564
|
+
attr_accessor :source_image
|
565
|
+
|
566
|
+
# Optional. Name of the snapshot to use as the source for the disk. Must be
|
567
|
+
# empty if source_image is set. Updating source_snapshot will update content in
|
568
|
+
# the ephemeral directory after the workstation is restarted. This field is
|
569
|
+
# mutable.
|
570
|
+
# Corresponds to the JSON property `sourceSnapshot`
|
571
|
+
# @return [String]
|
572
|
+
attr_accessor :source_snapshot
|
573
|
+
|
574
|
+
def initialize(**args)
|
575
|
+
update!(**args)
|
576
|
+
end
|
577
|
+
|
578
|
+
# Update properties of this object
|
579
|
+
def update!(**args)
|
580
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
581
|
+
@read_only = args[:read_only] if args.key?(:read_only)
|
582
|
+
@source_image = args[:source_image] if args.key?(:source_image)
|
583
|
+
@source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
|
584
|
+
end
|
585
|
+
end
|
586
|
+
|
483
587
|
# A PersistentDirectory backed by a Compute Engine regional persistent disk. The
|
484
|
-
#
|
588
|
+
# persistent_directories field is repeated, but it may contain only one entry.
|
485
589
|
# It creates a [persistent disk](https://cloud.google.com/compute/docs/disks/
|
486
590
|
# persistent-disks) that mounts to the workstation VM at `/home` when the
|
487
591
|
# session starts and detaches when the session ends. If this field is empty,
|
@@ -490,35 +594,35 @@ module Google
|
|
490
594
|
class GceRegionalPersistentDisk
|
491
595
|
include Google::Apis::Core::Hashable
|
492
596
|
|
493
|
-
# The [type of the persistent disk](https://cloud.google.com/compute/
|
494
|
-
# disk-types) for the home directory. Defaults to `pd-standard`.
|
597
|
+
# Optional. The [type of the persistent disk](https://cloud.google.com/compute/
|
598
|
+
# docs/disks#disk-types) for the home directory. Defaults to `"pd-standard"`.
|
495
599
|
# Corresponds to the JSON property `diskType`
|
496
600
|
# @return [String]
|
497
601
|
attr_accessor :disk_type
|
498
602
|
|
499
|
-
# Type of file system that the disk should be formatted with. The
|
500
|
-
# image must support this file system type. Must be empty if
|
501
|
-
# set. Defaults to `ext4`.
|
603
|
+
# Optional. Type of file system that the disk should be formatted with. The
|
604
|
+
# workstation image must support this file system type. Must be empty if
|
605
|
+
# source_snapshot is set. Defaults to `"ext4"`.
|
502
606
|
# Corresponds to the JSON property `fsType`
|
503
607
|
# @return [String]
|
504
608
|
attr_accessor :fs_type
|
505
609
|
|
506
|
-
# Whether the persistent disk should be deleted when the workstation
|
507
|
-
# Valid values are `DELETE` and `RETAIN`. Defaults to `DELETE`.
|
610
|
+
# Optional. Whether the persistent disk should be deleted when the workstation
|
611
|
+
# is deleted. Valid values are `DELETE` and `RETAIN`. Defaults to `DELETE`.
|
508
612
|
# Corresponds to the JSON property `reclaimPolicy`
|
509
613
|
# @return [String]
|
510
614
|
attr_accessor :reclaim_policy
|
511
615
|
|
512
|
-
# The GB capacity of a persistent home directory for each workstation
|
513
|
-
# with this configuration. Must be empty if
|
514
|
-
# values are `10`, `50`, `100`, `200`, `500`, or `1000`. Defaults to `200`.
|
515
|
-
# less than `200` GB, the
|
616
|
+
# Optional. The GB capacity of a persistent home directory for each workstation
|
617
|
+
# created with this configuration. Must be empty if source_snapshot is set.
|
618
|
+
# Valid values are `10`, `50`, `100`, `200`, `500`, or `1000`. Defaults to `200`.
|
619
|
+
# If less than `200` GB, the disk_type must be `"pd-balanced"` or `"pd-ssd"`.
|
516
620
|
# Corresponds to the JSON property `sizeGb`
|
517
621
|
# @return [Fixnum]
|
518
622
|
attr_accessor :size_gb
|
519
623
|
|
520
|
-
# Name of the snapshot to use as the source for the disk. If set,
|
521
|
-
# fs_type must be empty.
|
624
|
+
# Optional. Name of the snapshot to use as the source for the disk. If set,
|
625
|
+
# size_gb and fs_type must be empty.
|
522
626
|
# Corresponds to the JSON property `sourceSnapshot`
|
523
627
|
# @return [String]
|
524
628
|
attr_accessor :source_snapshot
|
@@ -541,19 +645,19 @@ module Google
|
|
541
645
|
class GceShieldedInstanceConfig
|
542
646
|
include Google::Apis::Core::Hashable
|
543
647
|
|
544
|
-
# Whether the instance has integrity monitoring enabled.
|
648
|
+
# Optional. Whether the instance has integrity monitoring enabled.
|
545
649
|
# Corresponds to the JSON property `enableIntegrityMonitoring`
|
546
650
|
# @return [Boolean]
|
547
651
|
attr_accessor :enable_integrity_monitoring
|
548
652
|
alias_method :enable_integrity_monitoring?, :enable_integrity_monitoring
|
549
653
|
|
550
|
-
# Whether the instance has Secure Boot enabled.
|
654
|
+
# Optional. Whether the instance has Secure Boot enabled.
|
551
655
|
# Corresponds to the JSON property `enableSecureBoot`
|
552
656
|
# @return [Boolean]
|
553
657
|
attr_accessor :enable_secure_boot
|
554
658
|
alias_method :enable_secure_boot?, :enable_secure_boot
|
555
659
|
|
556
|
-
# Whether the instance has the vTPM enabled.
|
660
|
+
# Optional. Whether the instance has the vTPM enabled.
|
557
661
|
# Corresponds to the JSON property `enableVtpm`
|
558
662
|
# @return [Boolean]
|
559
663
|
attr_accessor :enable_vtpm
|
@@ -819,13 +923,13 @@ module Google
|
|
819
923
|
class ListWorkstationsResponse
|
820
924
|
include Google::Apis::Core::Hashable
|
821
925
|
|
822
|
-
# Token to retrieve the next page of results, or empty if there are no
|
823
|
-
# results in the list.
|
926
|
+
# Optional. Token to retrieve the next page of results, or empty if there are no
|
927
|
+
# more results in the list.
|
824
928
|
# Corresponds to the JSON property `nextPageToken`
|
825
929
|
# @return [String]
|
826
930
|
attr_accessor :next_page_token
|
827
931
|
|
828
|
-
# Unreachable resources.
|
932
|
+
# Optional. Unreachable resources.
|
829
933
|
# Corresponds to the JSON property `unreachable`
|
830
934
|
# @return [Array<String>]
|
831
935
|
attr_accessor :unreachable
|
@@ -884,13 +988,13 @@ module Google
|
|
884
988
|
# @return [String]
|
885
989
|
attr_accessor :name
|
886
990
|
|
887
|
-
# The normal response of the operation
|
888
|
-
#
|
889
|
-
#
|
890
|
-
#
|
891
|
-
#
|
892
|
-
#
|
893
|
-
#
|
991
|
+
# The normal, successful response of the operation. If the original method
|
992
|
+
# returns no data on success, such as `Delete`, the response is `google.protobuf.
|
993
|
+
# Empty`. If the original method is standard `Get`/`Create`/`Update`, the
|
994
|
+
# response should be the resource. For other methods, the response should have
|
995
|
+
# the type `XxxResponse`, where `Xxx` is the original method name. For example,
|
996
|
+
# if the original method name is `TakeSnapshot()`, the inferred response type is
|
997
|
+
# `TakeSnapshotResponse`.
|
894
998
|
# Corresponds to the JSON property `response`
|
895
999
|
# @return [Hash<String,Object>]
|
896
1000
|
attr_accessor :response
|
@@ -971,7 +1075,7 @@ module Google
|
|
971
1075
|
include Google::Apis::Core::Hashable
|
972
1076
|
|
973
1077
|
# A PersistentDirectory backed by a Compute Engine regional persistent disk. The
|
974
|
-
#
|
1078
|
+
# persistent_directories field is repeated, but it may contain only one entry.
|
975
1079
|
# It creates a [persistent disk](https://cloud.google.com/compute/docs/disks/
|
976
1080
|
# persistent-disks) that mounts to the workstation VM at `/home` when the
|
977
1081
|
# session starts and detaches when the session ends. If this field is empty,
|
@@ -981,7 +1085,7 @@ module Google
|
|
981
1085
|
# @return [Google::Apis::WorkstationsV1beta::GceRegionalPersistentDisk]
|
982
1086
|
attr_accessor :gce_pd
|
983
1087
|
|
984
|
-
# Location of this directory in the running workstation.
|
1088
|
+
# Optional. Location of this directory in the running workstation.
|
985
1089
|
# Corresponds to the JSON property `mountPath`
|
986
1090
|
# @return [String]
|
987
1091
|
attr_accessor :mount_path
|
@@ -1008,22 +1112,22 @@ module Google
|
|
1008
1112
|
# evaluates to `true`. A condition can add constraints based on attributes of
|
1009
1113
|
# the request, the resource, or both. To learn which resources support
|
1010
1114
|
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
1011
|
-
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
1115
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
|
1012
1116
|
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
1013
1117
|
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
1014
1118
|
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
1015
1119
|
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
1016
1120
|
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
1017
1121
|
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
1018
|
-
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML
|
1019
|
-
# bindings: - members: - user:mike@example.com - group:admins@
|
1020
|
-
# domain:google.com - serviceAccount:my-project-id@appspot.
|
1021
|
-
# role: roles/resourcemanager.organizationAdmin - members: -
|
1022
|
-
# com role: roles/resourcemanager.organizationViewer condition:
|
1023
|
-
# access description: Does not grant access after Sep 2020
|
1024
|
-
# time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
1025
|
-
# a description of IAM and its features, see the
|
1026
|
-
# cloud.google.com/iam/docs/).
|
1122
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
|
1123
|
+
# example:** ``` bindings: - members: - user:mike@example.com - group:admins@
|
1124
|
+
# example.com - domain:google.com - serviceAccount:my-project-id@appspot.
|
1125
|
+
# gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
|
1126
|
+
# user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
|
1127
|
+
# title: expirable access description: Does not grant access after Sep 2020
|
1128
|
+
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
1129
|
+
# BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
|
1130
|
+
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
1027
1131
|
class Policy
|
1028
1132
|
include Google::Apis::Core::Hashable
|
1029
1133
|
|
@@ -1092,21 +1196,22 @@ module Google
|
|
1092
1196
|
end
|
1093
1197
|
end
|
1094
1198
|
|
1095
|
-
# Configuration options for private clusters.
|
1199
|
+
# Configuration options for private workstation clusters.
|
1096
1200
|
class PrivateClusterConfig
|
1097
1201
|
include Google::Apis::Core::Hashable
|
1098
1202
|
|
1099
|
-
# Additional projects that are allowed to attach to the workstation
|
1100
|
-
# service attachment. By default, the workstation cluster's project
|
1101
|
-
# host project (if different) are allowed.
|
1203
|
+
# Optional. Additional projects that are allowed to attach to the workstation
|
1204
|
+
# cluster's service attachment. By default, the workstation cluster's project
|
1205
|
+
# and the VPC host project (if different) are allowed.
|
1102
1206
|
# Corresponds to the JSON property `allowedProjects`
|
1103
1207
|
# @return [Array<String>]
|
1104
1208
|
attr_accessor :allowed_projects
|
1105
1209
|
|
1106
1210
|
# Output only. Hostname for the workstation cluster. This field will be
|
1107
1211
|
# populated only when private endpoint is enabled. To access workstations in the
|
1108
|
-
# cluster, create a new DNS zone mapping this domain name to an
|
1109
|
-
# address and a forwarding rule mapping that address to the service
|
1212
|
+
# workstation cluster, create a new DNS zone mapping this domain name to an
|
1213
|
+
# internal IP address and a forwarding rule mapping that address to the service
|
1214
|
+
# attachment.
|
1110
1215
|
# Corresponds to the JSON property `clusterHostname`
|
1111
1216
|
# @return [String]
|
1112
1217
|
attr_accessor :cluster_hostname
|
@@ -1119,9 +1224,9 @@ module Google
|
|
1119
1224
|
|
1120
1225
|
# Output only. Service attachment URI for the workstation cluster. The service
|
1121
1226
|
# attachemnt is created when private endpoint is enabled. To access workstations
|
1122
|
-
# in the cluster, configure access to the managed service using [
|
1123
|
-
# Connect](https://cloud.google.com/vpc/docs/configure-private-
|
1124
|
-
# services).
|
1227
|
+
# in the workstation cluster, configure access to the managed service using [
|
1228
|
+
# Private Service Connect](https://cloud.google.com/vpc/docs/configure-private-
|
1229
|
+
# service-connect-services).
|
1125
1230
|
# Corresponds to the JSON property `serviceAttachmentUri`
|
1126
1231
|
# @return [String]
|
1127
1232
|
attr_accessor :service_attachment_uri
|
@@ -1143,12 +1248,12 @@ module Google
|
|
1143
1248
|
class ReadinessCheck
|
1144
1249
|
include Google::Apis::Core::Hashable
|
1145
1250
|
|
1146
|
-
# Path to which the request should be sent.
|
1251
|
+
# Optional. Path to which the request should be sent.
|
1147
1252
|
# Corresponds to the JSON property `path`
|
1148
1253
|
# @return [String]
|
1149
1254
|
attr_accessor :path
|
1150
1255
|
|
1151
|
-
# Port to which the request should be sent.
|
1256
|
+
# Optional. Port to which the request should be sent.
|
1152
1257
|
# Corresponds to the JSON property `port`
|
1153
1258
|
# @return [Fixnum]
|
1154
1259
|
attr_accessor :port
|
@@ -1179,22 +1284,22 @@ module Google
|
|
1179
1284
|
# evaluates to `true`. A condition can add constraints based on attributes of
|
1180
1285
|
# the request, the resource, or both. To learn which resources support
|
1181
1286
|
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
1182
|
-
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
1287
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
|
1183
1288
|
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
1184
1289
|
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
1185
1290
|
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
1186
1291
|
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
1187
1292
|
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
1188
1293
|
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
1189
|
-
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML
|
1190
|
-
# bindings: - members: - user:mike@example.com - group:admins@
|
1191
|
-
# domain:google.com - serviceAccount:my-project-id@appspot.
|
1192
|
-
# role: roles/resourcemanager.organizationAdmin - members: -
|
1193
|
-
# com role: roles/resourcemanager.organizationViewer condition:
|
1194
|
-
# access description: Does not grant access after Sep 2020
|
1195
|
-
# time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
1196
|
-
# a description of IAM and its features, see the
|
1197
|
-
# cloud.google.com/iam/docs/).
|
1294
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
|
1295
|
+
# example:** ``` bindings: - members: - user:mike@example.com - group:admins@
|
1296
|
+
# example.com - domain:google.com - serviceAccount:my-project-id@appspot.
|
1297
|
+
# gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
|
1298
|
+
# user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
|
1299
|
+
# title: expirable access description: Does not grant access after Sep 2020
|
1300
|
+
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
1301
|
+
# BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
|
1302
|
+
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
1198
1303
|
# Corresponds to the JSON property `policy`
|
1199
1304
|
# @return [Google::Apis::WorkstationsV1beta::Policy]
|
1200
1305
|
attr_accessor :policy
|
@@ -1221,14 +1326,14 @@ module Google
|
|
1221
1326
|
class StartWorkstationRequest
|
1222
1327
|
include Google::Apis::Core::Hashable
|
1223
1328
|
|
1224
|
-
# If set, the request will be rejected if the latest version of the
|
1225
|
-
# on the server does not have this ETag.
|
1329
|
+
# Optional. If set, the request will be rejected if the latest version of the
|
1330
|
+
# workstation on the server does not have this ETag.
|
1226
1331
|
# Corresponds to the JSON property `etag`
|
1227
1332
|
# @return [String]
|
1228
1333
|
attr_accessor :etag
|
1229
1334
|
|
1230
|
-
# If set, validate the request and preview the review, but do not
|
1231
|
-
# it.
|
1335
|
+
# Optional. If set, validate the request and preview the review, but do not
|
1336
|
+
# actually apply it.
|
1232
1337
|
# Corresponds to the JSON property `validateOnly`
|
1233
1338
|
# @return [Boolean]
|
1234
1339
|
attr_accessor :validate_only
|
@@ -1288,14 +1393,14 @@ module Google
|
|
1288
1393
|
class StopWorkstationRequest
|
1289
1394
|
include Google::Apis::Core::Hashable
|
1290
1395
|
|
1291
|
-
# If set, the request will be rejected if the latest version of the
|
1292
|
-
# on the server does not have this ETag.
|
1396
|
+
# Optional. If set, the request will be rejected if the latest version of the
|
1397
|
+
# workstation on the server does not have this ETag.
|
1293
1398
|
# Corresponds to the JSON property `etag`
|
1294
1399
|
# @return [String]
|
1295
1400
|
attr_accessor :etag
|
1296
1401
|
|
1297
|
-
# If set, validate the request and preview the review, but do not
|
1298
|
-
# it.
|
1402
|
+
# Optional. If set, validate the request and preview the review, but do not
|
1403
|
+
# actually apply it.
|
1299
1404
|
# Corresponds to the JSON property `validateOnly`
|
1300
1405
|
# @return [Boolean]
|
1301
1406
|
attr_accessor :validate_only
|
@@ -1356,33 +1461,35 @@ module Google
|
|
1356
1461
|
class Workstation
|
1357
1462
|
include Google::Apis::Core::Hashable
|
1358
1463
|
|
1359
|
-
# Client-specified annotations.
|
1464
|
+
# Optional. Client-specified annotations.
|
1360
1465
|
# Corresponds to the JSON property `annotations`
|
1361
1466
|
# @return [Hash<String,String>]
|
1362
1467
|
attr_accessor :annotations
|
1363
1468
|
|
1364
|
-
# Output only. Time when this
|
1469
|
+
# Output only. Time when this workstation was created.
|
1365
1470
|
# Corresponds to the JSON property `createTime`
|
1366
1471
|
# @return [String]
|
1367
1472
|
attr_accessor :create_time
|
1368
1473
|
|
1369
|
-
# Output only. Time when this
|
1474
|
+
# Output only. Time when this workstation was soft-deleted.
|
1370
1475
|
# Corresponds to the JSON property `deleteTime`
|
1371
1476
|
# @return [String]
|
1372
1477
|
attr_accessor :delete_time
|
1373
1478
|
|
1374
|
-
# Human-readable name for this
|
1479
|
+
# Optional. Human-readable name for this workstation.
|
1375
1480
|
# Corresponds to the JSON property `displayName`
|
1376
1481
|
# @return [String]
|
1377
1482
|
attr_accessor :display_name
|
1378
1483
|
|
1379
|
-
# Environment variables passed to the workstation container's
|
1484
|
+
# Optional. Environment variables passed to the workstation container's
|
1485
|
+
# entrypoint.
|
1380
1486
|
# Corresponds to the JSON property `env`
|
1381
1487
|
# @return [Hash<String,String>]
|
1382
1488
|
attr_accessor :env
|
1383
1489
|
|
1384
|
-
# Checksum computed by the server. May be sent on update and delete
|
1385
|
-
# make sure that the client has an up-to-date value before
|
1490
|
+
# Optional. Checksum computed by the server. May be sent on update and delete
|
1491
|
+
# requests to make sure that the client has an up-to-date value before
|
1492
|
+
# proceeding.
|
1386
1493
|
# Corresponds to the JSON property `etag`
|
1387
1494
|
# @return [String]
|
1388
1495
|
attr_accessor :etag
|
@@ -1395,35 +1502,42 @@ module Google
|
|
1395
1502
|
# @return [String]
|
1396
1503
|
attr_accessor :host
|
1397
1504
|
|
1398
|
-
#
|
1399
|
-
#
|
1505
|
+
# Optional. [Labels](https://cloud.google.com/workstations/docs/label-resources)
|
1506
|
+
# that are applied to the workstation and that are also propagated to the
|
1507
|
+
# underlying Compute Engine resources.
|
1400
1508
|
# Corresponds to the JSON property `labels`
|
1401
1509
|
# @return [Hash<String,String>]
|
1402
1510
|
attr_accessor :labels
|
1403
1511
|
|
1404
|
-
# Full name of this
|
1512
|
+
# Full name of this workstation.
|
1405
1513
|
# Corresponds to the JSON property `name`
|
1406
1514
|
# @return [String]
|
1407
1515
|
attr_accessor :name
|
1408
1516
|
|
1409
|
-
# Output only. Indicates whether this
|
1517
|
+
# Output only. Indicates whether this workstation is currently being updated to
|
1410
1518
|
# match its intended state.
|
1411
1519
|
# Corresponds to the JSON property `reconciling`
|
1412
1520
|
# @return [Boolean]
|
1413
1521
|
attr_accessor :reconciling
|
1414
1522
|
alias_method :reconciling?, :reconciling
|
1415
1523
|
|
1524
|
+
# Output only. Time when this workstation was most recently successfully started,
|
1525
|
+
# regardless of the workstation's initial state.
|
1526
|
+
# Corresponds to the JSON property `startTime`
|
1527
|
+
# @return [String]
|
1528
|
+
attr_accessor :start_time
|
1529
|
+
|
1416
1530
|
# Output only. Current state of the workstation.
|
1417
1531
|
# Corresponds to the JSON property `state`
|
1418
1532
|
# @return [String]
|
1419
1533
|
attr_accessor :state
|
1420
1534
|
|
1421
|
-
# Output only. A system-assigned unique identifier for this
|
1535
|
+
# Output only. A system-assigned unique identifier for this workstation.
|
1422
1536
|
# Corresponds to the JSON property `uid`
|
1423
1537
|
# @return [String]
|
1424
1538
|
attr_accessor :uid
|
1425
1539
|
|
1426
|
-
# Output only. Time when this
|
1540
|
+
# Output only. Time when this workstation was most recently updated.
|
1427
1541
|
# Corresponds to the JSON property `updateTime`
|
1428
1542
|
# @return [String]
|
1429
1543
|
attr_accessor :update_time
|
@@ -1444,106 +1558,110 @@ module Google
|
|
1444
1558
|
@labels = args[:labels] if args.key?(:labels)
|
1445
1559
|
@name = args[:name] if args.key?(:name)
|
1446
1560
|
@reconciling = args[:reconciling] if args.key?(:reconciling)
|
1561
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
1447
1562
|
@state = args[:state] if args.key?(:state)
|
1448
1563
|
@uid = args[:uid] if args.key?(:uid)
|
1449
1564
|
@update_time = args[:update_time] if args.key?(:update_time)
|
1450
1565
|
end
|
1451
1566
|
end
|
1452
1567
|
|
1453
|
-
# A
|
1454
|
-
#
|
1568
|
+
# A workstation cluster resource in the Cloud Workstations API. Defines a group
|
1569
|
+
# of workstations in a particular region and the VPC network they're attached to.
|
1455
1570
|
class WorkstationCluster
|
1456
1571
|
include Google::Apis::Core::Hashable
|
1457
1572
|
|
1458
|
-
# Client-specified annotations.
|
1573
|
+
# Optional. Client-specified annotations.
|
1459
1574
|
# Corresponds to the JSON property `annotations`
|
1460
1575
|
# @return [Hash<String,String>]
|
1461
1576
|
attr_accessor :annotations
|
1462
1577
|
|
1463
|
-
# Output only. Status conditions describing the
|
1578
|
+
# Output only. Status conditions describing the workstation cluster's current
|
1579
|
+
# state.
|
1464
1580
|
# Corresponds to the JSON property `conditions`
|
1465
1581
|
# @return [Array<Google::Apis::WorkstationsV1beta::Status>]
|
1466
1582
|
attr_accessor :conditions
|
1467
1583
|
|
1468
|
-
# Output only. The private IP address of the control plane for this
|
1469
|
-
# Workstation VMs need access to this IP address to work with the
|
1470
|
-
# make sure that your firewall rules allow egress from the
|
1471
|
-
# this address.
|
1584
|
+
# Output only. The private IP address of the control plane for this workstation
|
1585
|
+
# cluster. Workstation VMs need access to this IP address to work with the
|
1586
|
+
# service, so make sure that your firewall rules allow egress from the
|
1587
|
+
# workstation VMs to this address.
|
1472
1588
|
# Corresponds to the JSON property `controlPlaneIp`
|
1473
1589
|
# @return [String]
|
1474
1590
|
attr_accessor :control_plane_ip
|
1475
1591
|
|
1476
|
-
# Output only. Time when this
|
1592
|
+
# Output only. Time when this workstation cluster was created.
|
1477
1593
|
# Corresponds to the JSON property `createTime`
|
1478
1594
|
# @return [String]
|
1479
1595
|
attr_accessor :create_time
|
1480
1596
|
|
1481
|
-
# Output only. Whether this
|
1482
|
-
# require user action to restore full functionality. Details can be
|
1483
|
-
#
|
1597
|
+
# Output only. Whether this workstation cluster is in degraded mode, in which
|
1598
|
+
# case it may require user action to restore full functionality. Details can be
|
1599
|
+
# found in conditions.
|
1484
1600
|
# Corresponds to the JSON property `degraded`
|
1485
1601
|
# @return [Boolean]
|
1486
1602
|
attr_accessor :degraded
|
1487
1603
|
alias_method :degraded?, :degraded
|
1488
1604
|
|
1489
|
-
# Output only. Time when this
|
1605
|
+
# Output only. Time when this workstation cluster was soft-deleted.
|
1490
1606
|
# Corresponds to the JSON property `deleteTime`
|
1491
1607
|
# @return [String]
|
1492
1608
|
attr_accessor :delete_time
|
1493
1609
|
|
1494
|
-
# Human-readable name for this
|
1610
|
+
# Optional. Human-readable name for this workstation cluster.
|
1495
1611
|
# Corresponds to the JSON property `displayName`
|
1496
1612
|
# @return [String]
|
1497
1613
|
attr_accessor :display_name
|
1498
1614
|
|
1499
|
-
# Checksum computed by the server. May be sent on update and delete
|
1500
|
-
# make sure that the client has an up-to-date value before
|
1615
|
+
# Optional. Checksum computed by the server. May be sent on update and delete
|
1616
|
+
# requests to make sure that the client has an up-to-date value before
|
1617
|
+
# proceeding.
|
1501
1618
|
# Corresponds to the JSON property `etag`
|
1502
1619
|
# @return [String]
|
1503
1620
|
attr_accessor :etag
|
1504
1621
|
|
1505
|
-
#
|
1506
|
-
#
|
1622
|
+
# Optional. [Labels](https://cloud.google.com/workstations/docs/label-resources)
|
1623
|
+
# that are applied to the workstation cluster and that are also propagated to
|
1624
|
+
# the underlying Compute Engine resources.
|
1507
1625
|
# Corresponds to the JSON property `labels`
|
1508
1626
|
# @return [Hash<String,String>]
|
1509
1627
|
attr_accessor :labels
|
1510
1628
|
|
1511
|
-
# Full name of this
|
1629
|
+
# Full name of this workstation cluster.
|
1512
1630
|
# Corresponds to the JSON property `name`
|
1513
1631
|
# @return [String]
|
1514
1632
|
attr_accessor :name
|
1515
1633
|
|
1516
1634
|
# Immutable. Name of the Compute Engine network in which instances associated
|
1517
|
-
# with this cluster will be created.
|
1635
|
+
# with this workstation cluster will be created.
|
1518
1636
|
# Corresponds to the JSON property `network`
|
1519
1637
|
# @return [String]
|
1520
1638
|
attr_accessor :network
|
1521
1639
|
|
1522
|
-
# Configuration options for private clusters.
|
1640
|
+
# Configuration options for private workstation clusters.
|
1523
1641
|
# Corresponds to the JSON property `privateClusterConfig`
|
1524
1642
|
# @return [Google::Apis::WorkstationsV1beta::PrivateClusterConfig]
|
1525
1643
|
attr_accessor :private_cluster_config
|
1526
1644
|
|
1527
|
-
# Output only. Indicates whether this
|
1528
|
-
# match its intended state.
|
1645
|
+
# Output only. Indicates whether this workstation cluster is currently being
|
1646
|
+
# updated to match its intended state.
|
1529
1647
|
# Corresponds to the JSON property `reconciling`
|
1530
1648
|
# @return [Boolean]
|
1531
1649
|
attr_accessor :reconciling
|
1532
1650
|
alias_method :reconciling?, :reconciling
|
1533
1651
|
|
1534
1652
|
# Immutable. Name of the Compute Engine subnetwork in which instances associated
|
1535
|
-
# with this cluster will be created. Must be part of the subnetwork
|
1536
|
-
# for this cluster.
|
1653
|
+
# with this workstation cluster will be created. Must be part of the subnetwork
|
1654
|
+
# specified for this workstation cluster.
|
1537
1655
|
# Corresponds to the JSON property `subnetwork`
|
1538
1656
|
# @return [String]
|
1539
1657
|
attr_accessor :subnetwork
|
1540
1658
|
|
1541
|
-
# Output only. A system-assigned unique identifier for this
|
1659
|
+
# Output only. A system-assigned unique identifier for this workstation cluster.
|
1542
1660
|
# Corresponds to the JSON property `uid`
|
1543
1661
|
# @return [String]
|
1544
1662
|
attr_accessor :uid
|
1545
1663
|
|
1546
|
-
# Output only. Time when this
|
1664
|
+
# Output only. Time when this workstation cluster was most recently updated.
|
1547
1665
|
# Corresponds to the JSON property `updateTime`
|
1548
1666
|
# @return [String]
|
1549
1667
|
attr_accessor :update_time
|
@@ -1573,13 +1691,17 @@ module Google
|
|
1573
1691
|
end
|
1574
1692
|
end
|
1575
1693
|
|
1576
|
-
# A
|
1577
|
-
# Workstation configurations
|
1578
|
-
#
|
1694
|
+
# A workstation configuration resource in the Cloud Workstations API.
|
1695
|
+
# Workstation configurations act as templates for workstations. The workstation
|
1696
|
+
# configuration defines details such as the workstation virtual machine (VM)
|
1697
|
+
# instance type, persistent storage, container image defining environment, which
|
1698
|
+
# IDE or Code Editor to use, and more. Administrators and platform teams can
|
1699
|
+
# also use [Identity and Access Management (IAM)](https://cloud.google.com/iam/
|
1700
|
+
# docs/overview) rules to grant access to teams or to individual developers.
|
1579
1701
|
class WorkstationConfig
|
1580
1702
|
include Google::Apis::Core::Hashable
|
1581
1703
|
|
1582
|
-
# Client-specified annotations.
|
1704
|
+
# Optional. Client-specified annotations.
|
1583
1705
|
# Corresponds to the JSON property `annotations`
|
1584
1706
|
# @return [Hash<String,String>]
|
1585
1707
|
attr_accessor :annotations
|
@@ -1594,32 +1716,33 @@ module Google
|
|
1594
1716
|
# @return [Google::Apis::WorkstationsV1beta::Container]
|
1595
1717
|
attr_accessor :container
|
1596
1718
|
|
1597
|
-
# Output only. Time when this
|
1719
|
+
# Output only. Time when this workstation configuration was created.
|
1598
1720
|
# Corresponds to the JSON property `createTime`
|
1599
1721
|
# @return [String]
|
1600
1722
|
attr_accessor :create_time
|
1601
1723
|
|
1602
1724
|
# Output only. Whether this resource is degraded, in which case it may require
|
1603
|
-
# user action to restore full functionality. See also the
|
1725
|
+
# user action to restore full functionality. See also the conditions field.
|
1604
1726
|
# Corresponds to the JSON property `degraded`
|
1605
1727
|
# @return [Boolean]
|
1606
1728
|
attr_accessor :degraded
|
1607
1729
|
alias_method :degraded?, :degraded
|
1608
1730
|
|
1609
|
-
# Output only. Time when this
|
1731
|
+
# Output only. Time when this workstation configuration was soft-deleted.
|
1610
1732
|
# Corresponds to the JSON property `deleteTime`
|
1611
1733
|
# @return [String]
|
1612
1734
|
attr_accessor :delete_time
|
1613
1735
|
|
1614
|
-
# Human-readable name for this
|
1736
|
+
# Optional. Human-readable name for this workstation configuration.
|
1615
1737
|
# Corresponds to the JSON property `displayName`
|
1616
1738
|
# @return [String]
|
1617
1739
|
attr_accessor :display_name
|
1618
1740
|
|
1619
|
-
# Whether to enable Linux `auditd` logging on the workstation. When
|
1620
|
-
# service account must also be specified that has `logging.buckets.
|
1621
|
-
# permission on the project. Operating system audit logging is distinct
|
1622
|
-
# Cloud Audit Logs](https://cloud.google.com/workstations/docs/audit-
|
1741
|
+
# Optional. Whether to enable Linux `auditd` logging on the workstation. When
|
1742
|
+
# enabled, a service account must also be specified that has `logging.buckets.
|
1743
|
+
# write` permission on the project. Operating system audit logging is distinct
|
1744
|
+
# from [Cloud Audit Logs](https://cloud.google.com/workstations/docs/audit-
|
1745
|
+
# logging).
|
1623
1746
|
# Corresponds to the JSON property `enableAuditAgent`
|
1624
1747
|
# @return [Boolean]
|
1625
1748
|
attr_accessor :enable_audit_agent
|
@@ -1634,8 +1757,15 @@ module Google
|
|
1634
1757
|
# @return [Google::Apis::WorkstationsV1beta::CustomerEncryptionKey]
|
1635
1758
|
attr_accessor :encryption_key
|
1636
1759
|
|
1637
|
-
#
|
1638
|
-
#
|
1760
|
+
# Optional. Ephemeral directories which won't persist across workstation
|
1761
|
+
# sessions.
|
1762
|
+
# Corresponds to the JSON property `ephemeralDirectories`
|
1763
|
+
# @return [Array<Google::Apis::WorkstationsV1beta::EphemeralDirectory>]
|
1764
|
+
attr_accessor :ephemeral_directories
|
1765
|
+
|
1766
|
+
# Optional. Checksum computed by the server. May be sent on update and delete
|
1767
|
+
# requests to make sure that the client has an up-to-date value before
|
1768
|
+
# proceeding.
|
1639
1769
|
# Corresponds to the JSON property `etag`
|
1640
1770
|
# @return [String]
|
1641
1771
|
attr_accessor :etag
|
@@ -1645,69 +1775,81 @@ module Google
|
|
1645
1775
|
# @return [Google::Apis::WorkstationsV1beta::Host]
|
1646
1776
|
attr_accessor :host
|
1647
1777
|
|
1648
|
-
# Number of seconds to wait before automatically stopping a
|
1649
|
-
# last received user traffic. A value of `0s` indicates
|
1650
|
-
# VMs created with this configuration should never time
|
1651
|
-
# Provide [duration](https://developers.google.com/protocol-
|
1652
|
-
# reference/google.protobuf#duration) terminated by `s` for seconds—
|
1653
|
-
# `7200s` (2 hours). The default is `1200s` (20 minutes).
|
1778
|
+
# Optional. Number of seconds to wait before automatically stopping a
|
1779
|
+
# workstation after it last received user traffic. A value of `"0s"` indicates
|
1780
|
+
# that Cloud Workstations VMs created with this configuration should never time
|
1781
|
+
# out due to idleness. Provide [duration](https://developers.google.com/protocol-
|
1782
|
+
# buffers/docs/reference/google.protobuf#duration) terminated by `s` for seconds—
|
1783
|
+
# for example, `"7200s"` (2 hours). The default is `"1200s"` (20 minutes).
|
1654
1784
|
# Corresponds to the JSON property `idleTimeout`
|
1655
1785
|
# @return [String]
|
1656
1786
|
attr_accessor :idle_timeout
|
1657
1787
|
|
1658
|
-
#
|
1659
|
-
#
|
1788
|
+
# Optional. [Labels](https://cloud.google.com/workstations/docs/label-resources)
|
1789
|
+
# that are applied to the workstation configuration and that are also propagated
|
1790
|
+
# to the underlying Compute Engine resources.
|
1660
1791
|
# Corresponds to the JSON property `labels`
|
1661
1792
|
# @return [Hash<String,String>]
|
1662
1793
|
attr_accessor :labels
|
1663
1794
|
|
1664
|
-
# Full name of this
|
1795
|
+
# Full name of this workstation configuration.
|
1665
1796
|
# Corresponds to the JSON property `name`
|
1666
1797
|
# @return [String]
|
1667
1798
|
attr_accessor :name
|
1668
1799
|
|
1669
|
-
# Directories to persist across workstation sessions.
|
1800
|
+
# Optional. Directories to persist across workstation sessions.
|
1670
1801
|
# Corresponds to the JSON property `persistentDirectories`
|
1671
1802
|
# @return [Array<Google::Apis::WorkstationsV1beta::PersistentDirectory>]
|
1672
1803
|
attr_accessor :persistent_directories
|
1673
1804
|
|
1674
|
-
# Readiness checks to perform when starting a workstation using this
|
1675
|
-
# configuration. Mark a workstation as running only after all
|
1676
|
-
# readiness checks return 200 status codes.
|
1805
|
+
# Optional. Readiness checks to perform when starting a workstation using this
|
1806
|
+
# workstation configuration. Mark a workstation as running only after all
|
1807
|
+
# specified readiness checks return 200 status codes.
|
1677
1808
|
# Corresponds to the JSON property `readinessChecks`
|
1678
1809
|
# @return [Array<Google::Apis::WorkstationsV1beta::ReadinessCheck>]
|
1679
1810
|
attr_accessor :readiness_checks
|
1680
1811
|
|
1681
|
-
# Output only. Indicates whether this
|
1682
|
-
# match its intended state.
|
1812
|
+
# Output only. Indicates whether this workstation configuration is currently
|
1813
|
+
# being updated to match its intended state.
|
1683
1814
|
# Corresponds to the JSON property `reconciling`
|
1684
1815
|
# @return [Boolean]
|
1685
1816
|
attr_accessor :reconciling
|
1686
1817
|
alias_method :reconciling?, :reconciling
|
1687
1818
|
|
1688
|
-
#
|
1689
|
-
#
|
1690
|
-
#
|
1691
|
-
#
|
1692
|
-
#
|
1693
|
-
#
|
1694
|
-
#
|
1695
|
-
|
1696
|
-
|
1697
|
-
#
|
1698
|
-
#
|
1699
|
-
#
|
1700
|
-
#
|
1819
|
+
# Optional. Immutable. Specifies the zones used to replicate the VM and disk
|
1820
|
+
# resources within the region. If set, exactly two zones within the workstation
|
1821
|
+
# cluster's region must be specified—for example, `['us-central1-a', 'us-
|
1822
|
+
# central1-f']`. If this field is empty, two default zones within the region are
|
1823
|
+
# used. Immutable after the workstation configuration is created.
|
1824
|
+
# Corresponds to the JSON property `replicaZones`
|
1825
|
+
# @return [Array<String>]
|
1826
|
+
attr_accessor :replica_zones
|
1827
|
+
|
1828
|
+
# Optional. Number of seconds that a workstation can run until it is
|
1829
|
+
# automatically shut down. We recommend that workstations be shut down daily to
|
1830
|
+
# reduce costs and so that security updates can be applied upon restart. The
|
1831
|
+
# idle_timeout and running_timeout fields are independent of each other. Note
|
1832
|
+
# that the running_timeout field shuts down VMs after the specified time,
|
1833
|
+
# regardless of whether or not the VMs are idle. Provide duration terminated by `
|
1834
|
+
# s` for seconds—for example, `"54000s"` (15 hours). Defaults to `"43200s"` (12
|
1835
|
+
# hours). A value of `"0s"` indicates that workstations using this configuration
|
1836
|
+
# should never time out. If encryption_key is set, it must be greater than `"0s"`
|
1837
|
+
# and less than `"86400s"` (24 hours). Warning: A value of `"0s"` indicates
|
1838
|
+
# that Cloud Workstations VMs created with this configuration have no maximum
|
1839
|
+
# running time. This is strongly discouraged because you incur costs and will
|
1840
|
+
# not pick up security updates.
|
1701
1841
|
# Corresponds to the JSON property `runningTimeout`
|
1702
1842
|
# @return [String]
|
1703
1843
|
attr_accessor :running_timeout
|
1704
1844
|
|
1705
|
-
# Output only. A system-assigned unique identifier for this
|
1845
|
+
# Output only. A system-assigned unique identifier for this workstation
|
1846
|
+
# configuration.
|
1706
1847
|
# Corresponds to the JSON property `uid`
|
1707
1848
|
# @return [String]
|
1708
1849
|
attr_accessor :uid
|
1709
1850
|
|
1710
|
-
# Output only. Time when this
|
1851
|
+
# Output only. Time when this workstation configuration was most recently
|
1852
|
+
# updated.
|
1711
1853
|
# Corresponds to the JSON property `updateTime`
|
1712
1854
|
# @return [String]
|
1713
1855
|
attr_accessor :update_time
|
@@ -1727,6 +1869,7 @@ module Google
|
|
1727
1869
|
@display_name = args[:display_name] if args.key?(:display_name)
|
1728
1870
|
@enable_audit_agent = args[:enable_audit_agent] if args.key?(:enable_audit_agent)
|
1729
1871
|
@encryption_key = args[:encryption_key] if args.key?(:encryption_key)
|
1872
|
+
@ephemeral_directories = args[:ephemeral_directories] if args.key?(:ephemeral_directories)
|
1730
1873
|
@etag = args[:etag] if args.key?(:etag)
|
1731
1874
|
@host = args[:host] if args.key?(:host)
|
1732
1875
|
@idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout)
|
@@ -1735,6 +1878,7 @@ module Google
|
|
1735
1878
|
@persistent_directories = args[:persistent_directories] if args.key?(:persistent_directories)
|
1736
1879
|
@readiness_checks = args[:readiness_checks] if args.key?(:readiness_checks)
|
1737
1880
|
@reconciling = args[:reconciling] if args.key?(:reconciling)
|
1881
|
+
@replica_zones = args[:replica_zones] if args.key?(:replica_zones)
|
1738
1882
|
@running_timeout = args[:running_timeout] if args.key?(:running_timeout)
|
1739
1883
|
@uid = args[:uid] if args.key?(:uid)
|
1740
1884
|
@update_time = args[:update_time] if args.key?(:update_time)
|