google-apis-workstations_v1 0.8.0 → 0.10.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f203bb15e03cc0139962624acca01f3ac94cd0b43cb1be9993771b2017ec323f
4
- data.tar.gz: eb3cffe067018fdead29d54e80a6b638a18c60a4cd45a3235dd27cd83dbee90c
3
+ metadata.gz: 0323e50eb476dc48e342709eb4b7b7d5c07bb1c386a6e5cc40cc97c6d018de90
4
+ data.tar.gz: 03b442c7704a3c3185dc92970a56fc461a4ca5793a5b264631b7a44da55355b4
5
5
  SHA512:
6
- metadata.gz: 212022ccfe892cb65e9b465654adc68ca28d99bb59f5940ef865abcc1f5eb5015d5a65f6ca3891b4e877548f412db5f02c46b0395a7dd5dc5f6cf5b48b6d54c3
7
- data.tar.gz: 6682c938cc2163bc4b6a374cf6a3fc4b36e33629c83b0588500764f0c58e3f8756afd1105d0f52564f6a4428ff609d1131980864b609a836223959bf07b5d09b
6
+ metadata.gz: 4a382a9307d755e8aee6f6f61f4452791fa11234673305d385e5940d793b4c7b58d5d274b88edcb35d155ce16a43cccb2a9f5c284885baf86440e0288735638e
7
+ data.tar.gz: b58e574a710d102fa4fd5596f130cf3145ed39f7021acd331becc282efe06f26fde5ba29cb6e2619a197c9d2c6293393a437a6561fc4555b3a412a2123acdf3f
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release history for google-apis-workstations_v1
2
2
 
3
+ ### v0.10.0 (2024-05-05)
4
+
5
+ * Regenerated from discovery document revision 20240424
6
+
7
+ ### v0.9.0 (2024-03-10)
8
+
9
+ * Regenerated from discovery document revision 20240301
10
+
3
11
  ### v0.8.0 (2024-02-23)
4
12
 
5
13
  * Regenerated using generator version 0.14.0
@@ -22,6 +22,32 @@ module Google
22
22
  module Apis
23
23
  module WorkstationsV1
24
24
 
25
+ # An accelerator card attached to the instance.
26
+ class Accelerator
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Optional. Number of accelerator cards exposed to the instance.
30
+ # Corresponds to the JSON property `count`
31
+ # @return [Fixnum]
32
+ attr_accessor :count
33
+
34
+ # Optional. Type of accelerator resource to attach to the instance, for example,
35
+ # `"nvidia-tesla-p100"`.
36
+ # Corresponds to the JSON property `type`
37
+ # @return [String]
38
+ attr_accessor :type
39
+
40
+ def initialize(**args)
41
+ update!(**args)
42
+ end
43
+
44
+ # Update properties of this object
45
+ def update!(**args)
46
+ @count = args[:count] if args.key?(:count)
47
+ @type = args[:type] if args.key?(:type)
48
+ end
49
+ end
50
+
25
51
  # Specifies the audit configuration for a service. The configuration determines
26
52
  # which permission types are logged, and what identities, if any, are exempted
27
53
  # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
@@ -320,6 +346,32 @@ module Google
320
346
  end
321
347
  end
322
348
 
349
+ # An ephemeral directory which won't persist across workstation sessions. It is
350
+ # freshly created on every workstation start operation.
351
+ class EphemeralDirectory
352
+ include Google::Apis::Core::Hashable
353
+
354
+ # An EphemeralDirectory is backed by a Compute Engine persistent disk.
355
+ # Corresponds to the JSON property `gcePd`
356
+ # @return [Google::Apis::WorkstationsV1::GcePersistentDisk]
357
+ attr_accessor :gce_pd
358
+
359
+ # Required. Location of this directory in the running workstation.
360
+ # Corresponds to the JSON property `mountPath`
361
+ # @return [String]
362
+ attr_accessor :mount_path
363
+
364
+ def initialize(**args)
365
+ update!(**args)
366
+ end
367
+
368
+ # Update properties of this object
369
+ def update!(**args)
370
+ @gce_pd = args[:gce_pd] if args.key?(:gce_pd)
371
+ @mount_path = args[:mount_path] if args.key?(:mount_path)
372
+ end
373
+ end
374
+
323
375
  # Represents a textual expression in the Common Expression Language (CEL) syntax.
324
376
  # CEL is a C-like expression language. The syntax and semantics of CEL are
325
377
  # documented at https://github.com/google/cel-spec. Example (Comparison): title:
@@ -398,6 +450,12 @@ module Google
398
450
  class GceInstance
399
451
  include Google::Apis::Core::Hashable
400
452
 
453
+ # Optional. A list of the type and count of accelerator cards attached to the
454
+ # instance.
455
+ # Corresponds to the JSON property `accelerators`
456
+ # @return [Array<Google::Apis::WorkstationsV1::Accelerator>]
457
+ attr_accessor :accelerators
458
+
401
459
  # Optional. The size of the boot disk for the VM in gigabytes (GB). The minimum
402
460
  # boot disk size is `30` GB. Defaults to `50` GB.
403
461
  # Corresponds to the JSON property `bootDiskSizeGb`
@@ -420,8 +478,14 @@ module Google
420
478
  attr_accessor :disable_public_ip_addresses
421
479
  alias_method :disable_public_ip_addresses?, :disable_public_ip_addresses
422
480
 
481
+ # Optional. Whether to disable SSH access to the VM.
482
+ # Corresponds to the JSON property `disableSsh`
483
+ # @return [Boolean]
484
+ attr_accessor :disable_ssh
485
+ alias_method :disable_ssh?, :disable_ssh
486
+
423
487
  # Optional. Whether to enable nested virtualization on Cloud Workstations VMs
424
- # created under this workstation configuration. Nested virtualization lets you
488
+ # created using this workstation configuration. Nested virtualization lets you
425
489
  # run virtual machine (VM) instances inside your workstation. Before enabling
426
490
  # nested virtualization, consider the following important considerations. Cloud
427
491
  # Workstations instances are subject to the [same restrictions as Compute Engine
@@ -471,23 +535,22 @@ module Google
471
535
 
472
536
  # Optional. The email address of the service account for Cloud Workstations VMs
473
537
  # created with this configuration. When specified, be sure that the service
474
- # account has `logginglogEntries.create` permission on the project so it can
475
- # write logs out to Cloud Logging. If using a custom container image, the
476
- # service account must have [Artifact Registry Reader](https://cloud.google.com/
477
- # artifact-registry/docs/access-control#roles) permission to pull the specified
478
- # image. If you as the administrator want to be able to `ssh` into the
479
- # underlying VM, you need to set this value to a service account for which you
480
- # have the `iam.serviceAccounts.actAs` permission. Conversely, if you don't want
481
- # anyone to be able to `ssh` into the underlying VM, use a service account where
482
- # no one has that permission. If not set, VMs run with a service account
483
- # provided by the Cloud Workstations service, and the image must be publicly
484
- # accessible.
538
+ # account has `logging.logEntries.create` and `monitoring.timeSeries.create`
539
+ # permissions on the project so it can write logs out to Cloud Logging. If using
540
+ # a custom container image, the service account must have [Artifact Registry
541
+ # Reader](https://cloud.google.com/artifact-registry/docs/access-control#roles)
542
+ # permission to pull the specified image. If you as the administrator want to be
543
+ # able to `ssh` into the underlying VM, you need to set this value to a service
544
+ # account for which you have the `iam.serviceAccounts.actAs` permission.
545
+ # Conversely, if you don't want anyone to be able to `ssh` into the underlying
546
+ # VM, use a service account where no one has that permission. If not set, VMs
547
+ # run with a service account provided by the Cloud Workstations service, and the
548
+ # image must be publicly accessible.
485
549
  # Corresponds to the JSON property `serviceAccount`
486
550
  # @return [String]
487
551
  attr_accessor :service_account
488
552
 
489
- # Optional. Scopes to grant to the service_account. Various scopes are
490
- # automatically added based on feature usage. When specified, users of
553
+ # Optional. Scopes to grant to the service_account. When specified, users of
491
554
  # workstations under this configuration must have `iam.serviceAccounts.actAs` on
492
555
  # the service account.
493
556
  # Corresponds to the JSON property `serviceAccountScopes`
@@ -514,9 +577,11 @@ module Google
514
577
 
515
578
  # Update properties of this object
516
579
  def update!(**args)
580
+ @accelerators = args[:accelerators] if args.key?(:accelerators)
517
581
  @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb)
518
582
  @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config)
519
583
  @disable_public_ip_addresses = args[:disable_public_ip_addresses] if args.key?(:disable_public_ip_addresses)
584
+ @disable_ssh = args[:disable_ssh] if args.key?(:disable_ssh)
520
585
  @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
521
586
  @machine_type = args[:machine_type] if args.key?(:machine_type)
522
587
  @pool_size = args[:pool_size] if args.key?(:pool_size)
@@ -528,10 +593,55 @@ module Google
528
593
  end
529
594
  end
530
595
 
531
- # A PersistentDirectory backed by a Compute Engine regional persistent disk. The
532
- # persistent_directories field is repeated, but it may contain only one entry.
533
- # It creates a [persistent disk](https://cloud.google.com/compute/docs/disks/
534
- # persistent-disks) that mounts to the workstation VM at `/home` when the
596
+ # An EphemeralDirectory is backed by a Compute Engine persistent disk.
597
+ class GcePersistentDisk
598
+ include Google::Apis::Core::Hashable
599
+
600
+ # Optional. Type of the disk to use. Defaults to `"pd-standard"`.
601
+ # Corresponds to the JSON property `diskType`
602
+ # @return [String]
603
+ attr_accessor :disk_type
604
+
605
+ # Optional. Whether the disk is read only. If true, the disk may be shared by
606
+ # multiple VMs and source_snapshot must be set.
607
+ # Corresponds to the JSON property `readOnly`
608
+ # @return [Boolean]
609
+ attr_accessor :read_only
610
+ alias_method :read_only?, :read_only
611
+
612
+ # Optional. Name of the disk image to use as the source for the disk. Must be
613
+ # empty if source_snapshot is set. Updating source_image will update content in
614
+ # the ephemeral directory after the workstation is restarted. This field is
615
+ # mutable.
616
+ # Corresponds to the JSON property `sourceImage`
617
+ # @return [String]
618
+ attr_accessor :source_image
619
+
620
+ # Optional. Name of the snapshot to use as the source for the disk. Must be
621
+ # empty if source_image is set. Must be empty if read_only is false. Updating
622
+ # source_snapshot will update content in the ephemeral directory after the
623
+ # workstation is restarted. This field is mutable.
624
+ # Corresponds to the JSON property `sourceSnapshot`
625
+ # @return [String]
626
+ attr_accessor :source_snapshot
627
+
628
+ def initialize(**args)
629
+ update!(**args)
630
+ end
631
+
632
+ # Update properties of this object
633
+ def update!(**args)
634
+ @disk_type = args[:disk_type] if args.key?(:disk_type)
635
+ @read_only = args[:read_only] if args.key?(:read_only)
636
+ @source_image = args[:source_image] if args.key?(:source_image)
637
+ @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
638
+ end
639
+ end
640
+
641
+ # A Persistent Directory backed by a Compute Engine regional persistent disk.
642
+ # The persistent_directories field is repeated, but it may contain only one
643
+ # entry. It creates a [persistent disk](https://cloud.google.com/compute/docs/
644
+ # disks/persistent-disks) that mounts to the workstation VM at `/home` when the
535
645
  # session starts and detaches when the session ends. If this field is empty,
536
646
  # workstations created with this configuration do not have a persistent home
537
647
  # directory.
@@ -1090,10 +1200,10 @@ module Google
1090
1200
  class PersistentDirectory
1091
1201
  include Google::Apis::Core::Hashable
1092
1202
 
1093
- # A PersistentDirectory backed by a Compute Engine regional persistent disk. The
1094
- # persistent_directories field is repeated, but it may contain only one entry.
1095
- # It creates a [persistent disk](https://cloud.google.com/compute/docs/disks/
1096
- # persistent-disks) that mounts to the workstation VM at `/home` when the
1203
+ # A Persistent Directory backed by a Compute Engine regional persistent disk.
1204
+ # The persistent_directories field is repeated, but it may contain only one
1205
+ # entry. It creates a [persistent disk](https://cloud.google.com/compute/docs/
1206
+ # disks/persistent-disks) that mounts to the workstation VM at `/home` when the
1097
1207
  # session starts and detaches when the session ends. If this field is empty,
1098
1208
  # workstations created with this configuration do not have a persistent home
1099
1209
  # directory.
@@ -1764,10 +1874,10 @@ module Google
1764
1874
  attr_accessor :delete_time
1765
1875
 
1766
1876
  # Optional. Disables support for plain TCP connections in the workstation. By
1767
- # default the service supports TCP connections via a websocket relay. Setting
1768
- # this option to true disables that relay, which prevents the usage of services
1769
- # that require plain tcp connections, such as ssh. When enabled, all
1770
- # communication must occur over https or wss.
1877
+ # default the service supports TCP connections through a websocket relay.
1878
+ # Setting this option to true disables that relay, which prevents the usage of
1879
+ # services that require plain TCP connections, such as SSH. When enabled, all
1880
+ # communication must occur over HTTPS or WSS.
1771
1881
  # Corresponds to the JSON property `disableTcpConnections`
1772
1882
  # @return [Boolean]
1773
1883
  attr_accessor :disable_tcp_connections
@@ -1797,6 +1907,12 @@ module Google
1797
1907
  # @return [Google::Apis::WorkstationsV1::CustomerEncryptionKey]
1798
1908
  attr_accessor :encryption_key
1799
1909
 
1910
+ # Optional. Ephemeral directories which won't persist across workstation
1911
+ # sessions.
1912
+ # Corresponds to the JSON property `ephemeralDirectories`
1913
+ # @return [Array<Google::Apis::WorkstationsV1::EphemeralDirectory>]
1914
+ attr_accessor :ephemeral_directories
1915
+
1800
1916
  # Optional. Checksum computed by the server. May be sent on update and delete
1801
1917
  # requests to make sure that the client has an up-to-date value before
1802
1918
  # proceeding.
@@ -1904,6 +2020,7 @@ module Google
1904
2020
  @display_name = args[:display_name] if args.key?(:display_name)
1905
2021
  @enable_audit_agent = args[:enable_audit_agent] if args.key?(:enable_audit_agent)
1906
2022
  @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
2023
+ @ephemeral_directories = args[:ephemeral_directories] if args.key?(:ephemeral_directories)
1907
2024
  @etag = args[:etag] if args.key?(:etag)
1908
2025
  @host = args[:host] if args.key?(:host)
1909
2026
  @idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout)
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module WorkstationsV1
18
18
  # Version of the google-apis-workstations_v1 gem
19
- GEM_VERSION = "0.8.0"
19
+ GEM_VERSION = "0.10.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.14.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20240130"
25
+ REVISION = "20240424"
26
26
  end
27
27
  end
28
28
  end
@@ -22,6 +22,12 @@ module Google
22
22
  module Apis
23
23
  module WorkstationsV1
24
24
 
25
+ class Accelerator
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class AuditConfig
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
@@ -64,6 +70,12 @@ module Google
64
70
  include Google::Apis::Core::JsonObjectSupport
65
71
  end
66
72
 
73
+ class EphemeralDirectory
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
67
79
  class Expr
68
80
  class Representation < Google::Apis::Core::JsonRepresentation; end
69
81
 
@@ -82,6 +94,12 @@ module Google
82
94
  include Google::Apis::Core::JsonObjectSupport
83
95
  end
84
96
 
97
+ class GcePersistentDisk
98
+ class Representation < Google::Apis::Core::JsonRepresentation; end
99
+
100
+ include Google::Apis::Core::JsonObjectSupport
101
+ end
102
+
85
103
  class GceRegionalPersistentDisk
86
104
  class Representation < Google::Apis::Core::JsonRepresentation; end
87
105
 
@@ -256,6 +274,14 @@ module Google
256
274
  include Google::Apis::Core::JsonObjectSupport
257
275
  end
258
276
 
277
+ class Accelerator
278
+ # @private
279
+ class Representation < Google::Apis::Core::JsonRepresentation
280
+ property :count, as: 'count'
281
+ property :type, as: 'type'
282
+ end
283
+ end
284
+
259
285
  class AuditConfig
260
286
  # @private
261
287
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -316,6 +342,15 @@ module Google
316
342
  end
317
343
  end
318
344
 
345
+ class EphemeralDirectory
346
+ # @private
347
+ class Representation < Google::Apis::Core::JsonRepresentation
348
+ property :gce_pd, as: 'gcePd', class: Google::Apis::WorkstationsV1::GcePersistentDisk, decorator: Google::Apis::WorkstationsV1::GcePersistentDisk::Representation
349
+
350
+ property :mount_path, as: 'mountPath'
351
+ end
352
+ end
353
+
319
354
  class Expr
320
355
  # @private
321
356
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -336,10 +371,13 @@ module Google
336
371
  class GceInstance
337
372
  # @private
338
373
  class Representation < Google::Apis::Core::JsonRepresentation
374
+ collection :accelerators, as: 'accelerators', class: Google::Apis::WorkstationsV1::Accelerator, decorator: Google::Apis::WorkstationsV1::Accelerator::Representation
375
+
339
376
  property :boot_disk_size_gb, as: 'bootDiskSizeGb'
340
377
  property :confidential_instance_config, as: 'confidentialInstanceConfig', class: Google::Apis::WorkstationsV1::GceConfidentialInstanceConfig, decorator: Google::Apis::WorkstationsV1::GceConfidentialInstanceConfig::Representation
341
378
 
342
379
  property :disable_public_ip_addresses, as: 'disablePublicIpAddresses'
380
+ property :disable_ssh, as: 'disableSsh'
343
381
  property :enable_nested_virtualization, as: 'enableNestedVirtualization'
344
382
  property :machine_type, as: 'machineType'
345
383
  property :pool_size, as: 'poolSize'
@@ -352,6 +390,16 @@ module Google
352
390
  end
353
391
  end
354
392
 
393
+ class GcePersistentDisk
394
+ # @private
395
+ class Representation < Google::Apis::Core::JsonRepresentation
396
+ property :disk_type, as: 'diskType'
397
+ property :read_only, as: 'readOnly'
398
+ property :source_image, as: 'sourceImage'
399
+ property :source_snapshot, as: 'sourceSnapshot'
400
+ end
401
+ end
402
+
355
403
  class GceRegionalPersistentDisk
356
404
  # @private
357
405
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -656,6 +704,8 @@ module Google
656
704
  property :enable_audit_agent, as: 'enableAuditAgent'
657
705
  property :encryption_key, as: 'encryptionKey', class: Google::Apis::WorkstationsV1::CustomerEncryptionKey, decorator: Google::Apis::WorkstationsV1::CustomerEncryptionKey::Representation
658
706
 
707
+ collection :ephemeral_directories, as: 'ephemeralDirectories', class: Google::Apis::WorkstationsV1::EphemeralDirectory, decorator: Google::Apis::WorkstationsV1::EphemeralDirectory::Representation
708
+
659
709
  property :etag, as: 'etag'
660
710
  property :host, as: 'host', class: Google::Apis::WorkstationsV1::Host, decorator: Google::Apis::WorkstationsV1::Host::Representation
661
711
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-workstations_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-25 00:00:00.000000000 Z
11
+ date: 2024-05-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-workstations_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-workstations_v1/v0.8.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-workstations_v1/v0.10.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-workstations_v1
63
63
  post_install_message:
64
64
  rdoc_options: []