google-api-client 0.39.3 → 0.39.4

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  4. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  5. data/generated/google/apis/bigtableadmin_v2/service.rb +4 -4
  6. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  7. data/generated/google/apis/cloudsearch_v1/classes.rb +8 -6
  8. data/generated/google/apis/composer_v1beta1.rb +1 -1
  9. data/generated/google/apis/composer_v1beta1/classes.rb +58 -0
  10. data/generated/google/apis/composer_v1beta1/representations.rb +30 -0
  11. data/generated/google/apis/composer_v1beta1/service.rb +5 -0
  12. data/generated/google/apis/compute_alpha.rb +1 -1
  13. data/generated/google/apis/compute_alpha/classes.rb +142 -58
  14. data/generated/google/apis/compute_alpha/representations.rb +27 -0
  15. data/generated/google/apis/compute_alpha/service.rb +825 -668
  16. data/generated/google/apis/compute_beta.rb +1 -1
  17. data/generated/google/apis/compute_beta/classes.rb +171 -54
  18. data/generated/google/apis/compute_beta/representations.rb +47 -0
  19. data/generated/google/apis/compute_beta/service.rb +591 -591
  20. data/generated/google/apis/compute_v1.rb +1 -1
  21. data/generated/google/apis/compute_v1/classes.rb +111 -50
  22. data/generated/google/apis/compute_v1/representations.rb +16 -0
  23. data/generated/google/apis/compute_v1/service.rb +83 -0
  24. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  25. data/generated/google/apis/datacatalog_v1beta1/classes.rb +26 -10
  26. data/generated/google/apis/dialogflow_v2.rb +1 -1
  27. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  28. data/generated/google/apis/file_v1.rb +1 -1
  29. data/generated/google/apis/file_v1/classes.rb +1156 -0
  30. data/generated/google/apis/file_v1/representations.rb +381 -0
  31. data/generated/google/apis/file_v1beta1.rb +1 -1
  32. data/generated/google/apis/file_v1beta1/classes.rb +1156 -0
  33. data/generated/google/apis/file_v1beta1/representations.rb +381 -0
  34. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  35. data/generated/google/apis/firebase_v1beta1/classes.rb +2 -12
  36. data/generated/google/apis/jobs_v3.rb +1 -1
  37. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  38. data/generated/google/apis/memcache_v1beta2/classes.rb +24 -12
  39. data/generated/google/apis/memcache_v1beta2/service.rb +5 -2
  40. data/generated/google/apis/ml_v1.rb +1 -1
  41. data/generated/google/apis/ml_v1/classes.rb +84 -18
  42. data/generated/google/apis/ml_v1/representations.rb +4 -0
  43. data/generated/google/apis/ml_v1/service.rb +11 -6
  44. data/generated/google/apis/monitoring_v3.rb +1 -1
  45. data/generated/google/apis/monitoring_v3/service.rb +1 -1
  46. data/generated/google/apis/people_v1.rb +1 -1
  47. data/generated/google/apis/people_v1/service.rb +1 -1
  48. data/generated/google/apis/pubsub_v1.rb +1 -1
  49. data/generated/google/apis/pubsub_v1/classes.rb +6 -7
  50. data/generated/google/apis/secretmanager_v1.rb +1 -1
  51. data/generated/google/apis/secretmanager_v1/classes.rb +26 -13
  52. data/generated/google/apis/secretmanager_v1/service.rb +3 -0
  53. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  54. data/generated/google/apis/secretmanager_v1beta1/classes.rb +23 -10
  55. data/generated/google/apis/secretmanager_v1beta1/service.rb +3 -0
  56. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  57. data/generated/google/apis/servicecontrol_v1/classes.rb +3 -3
  58. data/lib/google/apis/version.rb +1 -1
  59. metadata +3 -3
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200331'
28
+ REVISION = '20200427'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -2782,7 +2782,7 @@ module Google
2782
2782
  # and the backends are instance groups. The named port must be defined on each
2783
2783
  # backend instance group. This parameter has no meaning if the backends are NEGs.
2784
2784
  # Must be omitted when the loadBalancingScheme is INTERNAL (Internal TCP/UDP
2785
- # Load Blaancing).
2785
+ # Load Balancing).
2786
2786
  # Corresponds to the JSON property `portName`
2787
2787
  # @return [String]
2788
2788
  attr_accessor :port_name
@@ -4220,13 +4220,15 @@ module Google
4220
4220
  # Specifies the regualar expression patterns that match allowed origins. For
4221
4221
  # regular expression grammar please see en.cppreference.com/w/cpp/regex/
4222
4222
  # ecmascript
4223
- # An origin is allowed if it matches either allow_origins or allow_origin_regex.
4223
+ # An origin is allowed if it matches either an item in allowOrigins or an item
4224
+ # in allowOriginRegexes.
4224
4225
  # Corresponds to the JSON property `allowOriginRegexes`
4225
4226
  # @return [Array<String>]
4226
4227
  attr_accessor :allow_origin_regexes
4227
4228
 
4228
4229
  # Specifies the list of origins that will be allowed to do CORS requests.
4229
- # An origin is allowed if it matches either allow_origins or allow_origin_regex.
4230
+ # An origin is allowed if it matches either an item in allowOrigins or an item
4231
+ # in allowOriginRegexes.
4230
4232
  # Corresponds to the JSON property `allowOrigins`
4231
4233
  # @return [Array<String>]
4232
4234
  attr_accessor :allow_origins
@@ -5861,12 +5863,15 @@ module Google
5861
5863
  end
5862
5864
  end
5863
5865
 
5866
+ # Represents an external VPN gateway.
5864
5867
  # External VPN gateway is the on-premises VPN gateway(s) or another cloud
5865
- # provider's VPN gateway that connects to your Google Cloud VPN gateway. To
5866
- # create a highly available VPN from Google Cloud to your on-premises side or
5867
- # another Cloud provider's VPN gateway, you must create a external VPN gateway
5868
- # resource in GCP, which provides the information to GCP about your external VPN
5869
- # gateway.
5868
+ # provider's VPN gateway that connects to your Google Cloud VPN gateway.
5869
+ # To create a highly available VPN from Google Cloud Platform to your VPN
5870
+ # gateway or another cloud provider's VPN gateway, you must create a external
5871
+ # VPN gateway resource with information about the other gateway.
5872
+ # For more information about using external VPN gateways, see Creating an HA
5873
+ # VPN gateway and tunnel pair to a peer VPN. (== resource_for `$api_version`.
5874
+ # externalVpnGateways ==)
5870
5875
  class ExternalVpnGateway
5871
5876
  include Google::Apis::Core::Hashable
5872
5877
 
@@ -6122,7 +6127,7 @@ module Google
6122
6127
  # @return [String]
6123
6128
  attr_accessor :content
6124
6129
 
6125
- #
6130
+ # The file type of source file.
6126
6131
  # Corresponds to the JSON property `fileType`
6127
6132
  # @return [String]
6128
6133
  attr_accessor :file_type
@@ -7331,16 +7336,18 @@ module Google
7331
7336
  # Google groups, and domains (such as G Suite). A `role` is a named list of
7332
7337
  # permissions; each `role` can be an IAM predefined role or a user-created
7333
7338
  # custom role.
7334
- # Optionally, a `binding` can specify a `condition`, which is a logical
7335
- # expression that allows access to a resource only if the expression evaluates
7336
- # to `true`. A condition can add constraints based on attributes of the request,
7337
- # the resource, or both.
7339
+ # For some types of Google Cloud resources, a `binding` can also specify a `
7340
+ # condition`, which is a logical expression that allows access to a resource
7341
+ # only if the expression evaluates to `true`. A condition can add constraints
7342
+ # based on attributes of the request, the resource, or both. To learn which
7343
+ # resources support conditions in their IAM policies, see the [IAM documentation]
7344
+ # (https://cloud.google.com/iam/help/conditions/resource-policies).
7338
7345
  # **JSON example:**
7339
7346
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
7340
7347
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
7341
7348
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
7342
- # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
7343
- # "condition": ` "title": "expirable access", "description": "Does not grant
7349
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
7350
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
7344
7351
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
7345
7352
  # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
7346
7353
  # **YAML example:**
@@ -10027,7 +10034,7 @@ module Google
10027
10034
  # @return [Array<String>]
10028
10035
  attr_accessor :resource_policies
10029
10036
 
10030
- # Sets the scheduling options for an Instance. NextID: 10
10037
+ # Sets the scheduling options for an Instance. NextID: 11
10031
10038
  # Corresponds to the JSON property `scheduling`
10032
10039
  # @return [Google::Apis::ComputeV1::Scheduling]
10033
10040
  attr_accessor :scheduling
@@ -12363,7 +12370,7 @@ module Google
12363
12370
  # @return [Array<String>]
12364
12371
  attr_accessor :resource_policies
12365
12372
 
12366
- # Sets the scheduling options for an Instance. NextID: 10
12373
+ # Sets the scheduling options for an Instance. NextID: 11
12367
12374
  # Corresponds to the JSON property `scheduling`
12368
12375
  # @return [Google::Apis::ComputeV1::Scheduling]
12369
12376
  attr_accessor :scheduling
@@ -14955,10 +14962,7 @@ module Google
14955
14962
  class LogConfigDataAccessOptions
14956
14963
  include Google::Apis::Core::Hashable
14957
14964
 
14958
- # Whether Gin logging should happen in a fail-closed manner at the caller. This
14959
- # is currently supported in the LocalIAM implementation, Stubby C++, and Stubby
14960
- # Java. For Apps Framework, see go/af-audit-logging#failclosed. TODO(b/77591626):
14961
- # Add support for Stubby Go. TODO(b/129671387): Add support for Scaffolding.
14965
+ #
14962
14966
  # Corresponds to the JSON property `logMode`
14963
14967
  # @return [String]
14964
14968
  attr_accessor :log_mode
@@ -14980,6 +14984,12 @@ module Google
14980
14984
  class MachineType
14981
14985
  include Google::Apis::Core::Hashable
14982
14986
 
14987
+ # [Output Only] A list of accelerator configurations assigned to this machine
14988
+ # type.
14989
+ # Corresponds to the JSON property `accelerators`
14990
+ # @return [Array<Google::Apis::ComputeV1::MachineType::Accelerator>]
14991
+ attr_accessor :accelerators
14992
+
14983
14993
  # [Output Only] Creation timestamp in RFC3339 text format.
14984
14994
  # Corresponds to the JSON property `creationTimestamp`
14985
14995
  # @return [String]
@@ -15068,6 +15078,7 @@ module Google
15068
15078
 
15069
15079
  # Update properties of this object
15070
15080
  def update!(**args)
15081
+ @accelerators = args[:accelerators] if args.key?(:accelerators)
15071
15082
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
15072
15083
  @deprecated = args[:deprecated] if args.key?(:deprecated)
15073
15084
  @description = args[:description] if args.key?(:description)
@@ -15085,6 +15096,31 @@ module Google
15085
15096
  @zone = args[:zone] if args.key?(:zone)
15086
15097
  end
15087
15098
 
15099
+ #
15100
+ class Accelerator
15101
+ include Google::Apis::Core::Hashable
15102
+
15103
+ # Number of accelerator cards exposed to the guest.
15104
+ # Corresponds to the JSON property `guestAcceleratorCount`
15105
+ # @return [Fixnum]
15106
+ attr_accessor :guest_accelerator_count
15107
+
15108
+ # The accelerator type resource name, not a full URL, e.g. 'nvidia-tesla-k80'.
15109
+ # Corresponds to the JSON property `guestAcceleratorType`
15110
+ # @return [String]
15111
+ attr_accessor :guest_accelerator_type
15112
+
15113
+ def initialize(**args)
15114
+ update!(**args)
15115
+ end
15116
+
15117
+ # Update properties of this object
15118
+ def update!(**args)
15119
+ @guest_accelerator_count = args[:guest_accelerator_count] if args.key?(:guest_accelerator_count)
15120
+ @guest_accelerator_type = args[:guest_accelerator_type] if args.key?(:guest_accelerator_type)
15121
+ end
15122
+ end
15123
+
15088
15124
  #
15089
15125
  class ScratchDisk
15090
15126
  include Google::Apis::Core::Hashable
@@ -15959,8 +15995,11 @@ module Google
15959
15995
  end
15960
15996
 
15961
15997
  # Represents a collection of network endpoints.
15962
- # For more information read Network endpoint groups overview. (== resource_for `$
15963
- # api_version`.networkEndpointGroups ==) Next ID: 21
15998
+ # A network endpoint group (NEG) defines how a set of endpoints should be
15999
+ # reached, whether they are reachable, and where they are located. For more
16000
+ # information about using NEGs, see Setting up internet NEGs or Setting up
16001
+ # zonal NEGs. (== resource_for `$api_version`.networkEndpointGroups ==) (==
16002
+ # resource_for `$api_version`.globalNetworkEndpointGroups ==)
15964
16003
  class NetworkEndpointGroup
15965
16004
  include Google::Apis::Core::Hashable
15966
16005
 
@@ -16336,7 +16375,7 @@ module Google
16336
16375
  include Google::Apis::Core::Hashable
16337
16376
 
16338
16377
  # Optional query parameter for showing the health status of each network
16339
- # endpoint. Valid options are SKIP or SHOW. If you don't specifiy this parameter,
16378
+ # endpoint. Valid options are SKIP or SHOW. If you don't specify this parameter,
16340
16379
  # the health status of network endpoints will not be provided.
16341
16380
  # Corresponds to the JSON property `healthStatus`
16342
16381
  # @return [String]
@@ -19328,7 +19367,12 @@ module Google
19328
19367
  end
19329
19368
  end
19330
19369
 
19331
- # Represents a PacketMirroring resource.
19370
+ # Represents a Packet Mirroring resource.
19371
+ # Packet Mirroring clones the traffic of specified instances in your Virtual
19372
+ # Private Cloud (VPC) network and forwards it to a collector destination, such
19373
+ # as an instance group of an internal TCP/UDP load balancer, for analysis or
19374
+ # examination. For more information about setting up Packet Mirroring, see Using
19375
+ # Packet Mirroring. (== resource_for `$api_version`.packetMirrorings ==)
19332
19376
  class PacketMirroring
19333
19377
  include Google::Apis::Core::Hashable
19334
19378
 
@@ -20126,16 +20170,18 @@ module Google
20126
20170
  # Google groups, and domains (such as G Suite). A `role` is a named list of
20127
20171
  # permissions; each `role` can be an IAM predefined role or a user-created
20128
20172
  # custom role.
20129
- # Optionally, a `binding` can specify a `condition`, which is a logical
20130
- # expression that allows access to a resource only if the expression evaluates
20131
- # to `true`. A condition can add constraints based on attributes of the request,
20132
- # the resource, or both.
20173
+ # For some types of Google Cloud resources, a `binding` can also specify a `
20174
+ # condition`, which is a logical expression that allows access to a resource
20175
+ # only if the expression evaluates to `true`. A condition can add constraints
20176
+ # based on attributes of the request, the resource, or both. To learn which
20177
+ # resources support conditions in their IAM policies, see the [IAM documentation]
20178
+ # (https://cloud.google.com/iam/help/conditions/resource-policies).
20133
20179
  # **JSON example:**
20134
20180
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
20135
20181
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
20136
20182
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
20137
- # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
20138
- # "condition": ` "title": "expirable access", "description": "Does not grant
20183
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
20184
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
20139
20185
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
20140
20186
  # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
20141
20187
  # **YAML example:**
@@ -20210,6 +20256,9 @@ module Google
20210
20256
  # conditions in the version `3` policy are lost.
20211
20257
  # If a policy does not include any conditions, operations on that policy may
20212
20258
  # specify any valid version or leave the field unset.
20259
+ # To learn which resources support conditions in their IAM policies, see the [
20260
+ # IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
20261
+ # policies).
20213
20262
  # Corresponds to the JSON property `version`
20214
20263
  # @return [Fixnum]
20215
20264
  attr_accessor :version
@@ -21728,16 +21777,18 @@ module Google
21728
21777
  # Google groups, and domains (such as G Suite). A `role` is a named list of
21729
21778
  # permissions; each `role` can be an IAM predefined role or a user-created
21730
21779
  # custom role.
21731
- # Optionally, a `binding` can specify a `condition`, which is a logical
21732
- # expression that allows access to a resource only if the expression evaluates
21733
- # to `true`. A condition can add constraints based on attributes of the request,
21734
- # the resource, or both.
21780
+ # For some types of Google Cloud resources, a `binding` can also specify a `
21781
+ # condition`, which is a logical expression that allows access to a resource
21782
+ # only if the expression evaluates to `true`. A condition can add constraints
21783
+ # based on attributes of the request, the resource, or both. To learn which
21784
+ # resources support conditions in their IAM policies, see the [IAM documentation]
21785
+ # (https://cloud.google.com/iam/help/conditions/resource-policies).
21735
21786
  # **JSON example:**
21736
21787
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
21737
21788
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
21738
21789
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
21739
- # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
21740
- # "condition": ` "title": "expirable access", "description": "Does not grant
21790
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
21791
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
21741
21792
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
21742
21793
  # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
21743
21794
  # **YAML example:**
@@ -24602,7 +24653,7 @@ module Google
24602
24653
  end
24603
24654
  end
24604
24655
 
24605
- # Sets the scheduling options for an Instance. NextID: 10
24656
+ # Sets the scheduling options for an Instance. NextID: 11
24606
24657
  class Scheduling
24607
24658
  include Google::Apis::Core::Hashable
24608
24659
 
@@ -25166,19 +25217,20 @@ module Google
25166
25217
  class ShieldedInstanceConfig
25167
25218
  include Google::Apis::Core::Hashable
25168
25219
 
25169
- # Defines whether the instance has integrity monitoring enabled.
25220
+ # Defines whether the instance has integrity monitoring enabled. Enabled by
25221
+ # default.
25170
25222
  # Corresponds to the JSON property `enableIntegrityMonitoring`
25171
25223
  # @return [Boolean]
25172
25224
  attr_accessor :enable_integrity_monitoring
25173
25225
  alias_method :enable_integrity_monitoring?, :enable_integrity_monitoring
25174
25226
 
25175
- # Defines whether the instance has Secure Boot enabled.
25227
+ # Defines whether the instance has Secure Boot enabled. Disabled by default.
25176
25228
  # Corresponds to the JSON property `enableSecureBoot`
25177
25229
  # @return [Boolean]
25178
25230
  attr_accessor :enable_secure_boot
25179
25231
  alias_method :enable_secure_boot?, :enable_secure_boot
25180
25232
 
25181
- # Defines whether the instance has the vTPM enabled.
25233
+ # Defines whether the instance has the vTPM enabled. Enabled by default.
25182
25234
  # Corresponds to the JSON property `enableVtpm`
25183
25235
  # @return [Boolean]
25184
25236
  attr_accessor :enable_vtpm
@@ -26481,7 +26533,8 @@ module Google
26481
26533
 
26482
26534
  # Whether to enable flow logging for this subnetwork. If this field is not
26483
26535
  # explicitly set, it will not appear in get listings. If not set the default
26484
- # behavior is to disable flow logging.
26536
+ # behavior is to disable flow logging. This field isn't supported with the
26537
+ # purpose field set to INTERNAL_HTTPS_LOAD_BALANCER.
26485
26538
  # Corresponds to the JSON property `enableFlowLogs`
26486
26539
  # @return [Boolean]
26487
26540
  attr_accessor :enable_flow_logs
@@ -26559,7 +26612,8 @@ module Google
26559
26612
  # INTERNAL_HTTPS_LOAD_BALANCER. A subnetwork with purpose set to
26560
26613
  # INTERNAL_HTTPS_LOAD_BALANCER is a user-created subnetwork that is reserved for
26561
26614
  # Internal HTTP(S) Load Balancing. If unspecified, the purpose defaults to
26562
- # PRIVATE_RFC_1918.
26615
+ # PRIVATE_RFC_1918. The enableFlowLogs field isn't supported with the purpose
26616
+ # field set to INTERNAL_HTTPS_LOAD_BALANCER.
26563
26617
  # Corresponds to the JSON property `purpose`
26564
26618
  # @return [String]
26565
26619
  attr_accessor :purpose
@@ -31068,7 +31122,12 @@ module Google
31068
31122
  end
31069
31123
  end
31070
31124
 
31071
- # Represents a VPN gateway resource. Next ID: 13
31125
+ # Represents a HA VPN gateway.
31126
+ # HA VPN is a high-availability (HA) Cloud VPN solution that lets you securely
31127
+ # connect your on-premises network to your Google Cloud Virtual Private Cloud
31128
+ # network through an IPsec VPN connection in a single region. For more
31129
+ # information about Cloud HA VPN solutions, see Cloud VPN topologies . (==
31130
+ # resource_for `$api_version`.vpnGateways ==)
31072
31131
  class VpnGateway
31073
31132
  include Google::Apis::Core::Hashable
31074
31133
 
@@ -32670,16 +32729,18 @@ module Google
32670
32729
  # Google groups, and domains (such as G Suite). A `role` is a named list of
32671
32730
  # permissions; each `role` can be an IAM predefined role or a user-created
32672
32731
  # custom role.
32673
- # Optionally, a `binding` can specify a `condition`, which is a logical
32674
- # expression that allows access to a resource only if the expression evaluates
32675
- # to `true`. A condition can add constraints based on attributes of the request,
32676
- # the resource, or both.
32732
+ # For some types of Google Cloud resources, a `binding` can also specify a `
32733
+ # condition`, which is a logical expression that allows access to a resource
32734
+ # only if the expression evaluates to `true`. A condition can add constraints
32735
+ # based on attributes of the request, the resource, or both. To learn which
32736
+ # resources support conditions in their IAM policies, see the [IAM documentation]
32737
+ # (https://cloud.google.com/iam/help/conditions/resource-policies).
32677
32738
  # **JSON example:**
32678
32739
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
32679
32740
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
32680
32741
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
32681
- # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
32682
- # "condition": ` "title": "expirable access", "description": "Does not grant
32742
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
32743
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
32683
32744
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
32684
32745
  # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
32685
32746
  # **YAML example:**
@@ -1921,6 +1921,12 @@ module Google
1921
1921
  class MachineType
1922
1922
  class Representation < Google::Apis::Core::JsonRepresentation; end
1923
1923
 
1924
+ class Accelerator
1925
+ class Representation < Google::Apis::Core::JsonRepresentation; end
1926
+
1927
+ include Google::Apis::Core::JsonObjectSupport
1928
+ end
1929
+
1924
1930
  class ScratchDisk
1925
1931
  class Representation < Google::Apis::Core::JsonRepresentation; end
1926
1932
 
@@ -8087,6 +8093,8 @@ module Google
8087
8093
  class MachineType
8088
8094
  # @private
8089
8095
  class Representation < Google::Apis::Core::JsonRepresentation
8096
+ collection :accelerators, as: 'accelerators', class: Google::Apis::ComputeV1::MachineType::Accelerator, decorator: Google::Apis::ComputeV1::MachineType::Accelerator::Representation
8097
+
8090
8098
  property :creation_timestamp, as: 'creationTimestamp'
8091
8099
  property :deprecated, as: 'deprecated', class: Google::Apis::ComputeV1::DeprecationStatus, decorator: Google::Apis::ComputeV1::DeprecationStatus::Representation
8092
8100
 
@@ -8106,6 +8114,14 @@ module Google
8106
8114
  property :zone, as: 'zone'
8107
8115
  end
8108
8116
 
8117
+ class Accelerator
8118
+ # @private
8119
+ class Representation < Google::Apis::Core::JsonRepresentation
8120
+ property :guest_accelerator_count, as: 'guestAcceleratorCount'
8121
+ property :guest_accelerator_type, as: 'guestAcceleratorType'
8122
+ end
8123
+ end
8124
+
8109
8125
  class ScratchDisk
8110
8126
  # @private
8111
8127
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -16598,6 +16598,46 @@ module Google
16598
16598
  execute_or_queue_command(command, &block)
16599
16599
  end
16600
16600
 
16601
+ # Gets the access control policy for a resource. May be empty if no such policy
16602
+ # or resource exists.
16603
+ # @param [String] project
16604
+ # Project ID for this request.
16605
+ # @param [String] region
16606
+ # The name of the region for this request.
16607
+ # @param [String] resource
16608
+ # Name or id of the resource for this request.
16609
+ # @param [String] fields
16610
+ # Selector specifying which fields to include in a partial response.
16611
+ # @param [String] quota_user
16612
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
16613
+ # characters.
16614
+ # @param [String] user_ip
16615
+ # Deprecated. Please use quotaUser instead.
16616
+ # @param [Google::Apis::RequestOptions] options
16617
+ # Request-specific options
16618
+ #
16619
+ # @yield [result, err] Result & error if block supplied
16620
+ # @yieldparam result [Google::Apis::ComputeV1::Policy] parsed result object
16621
+ # @yieldparam err [StandardError] error object if request failed
16622
+ #
16623
+ # @return [Google::Apis::ComputeV1::Policy]
16624
+ #
16625
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
16626
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
16627
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
16628
+ def get_region_disk_iam_policy(project, region, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
16629
+ command = make_simple_command(:get, '{project}/regions/{region}/disks/{resource}/getIamPolicy', options)
16630
+ command.response_representation = Google::Apis::ComputeV1::Policy::Representation
16631
+ command.response_class = Google::Apis::ComputeV1::Policy
16632
+ command.params['project'] = project unless project.nil?
16633
+ command.params['region'] = region unless region.nil?
16634
+ command.params['resource'] = resource unless resource.nil?
16635
+ command.query['fields'] = fields unless fields.nil?
16636
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
16637
+ command.query['userIp'] = user_ip unless user_ip.nil?
16638
+ execute_or_queue_command(command, &block)
16639
+ end
16640
+
16601
16641
  # Creates a persistent regional disk in the specified project using the data
16602
16642
  # included in the request.
16603
16643
  # @param [String] project
@@ -16835,6 +16875,49 @@ module Google
16835
16875
  execute_or_queue_command(command, &block)
16836
16876
  end
16837
16877
 
16878
+ # Sets the access control policy on the specified resource. Replaces any
16879
+ # existing policy.
16880
+ # @param [String] project
16881
+ # Project ID for this request.
16882
+ # @param [String] region
16883
+ # The name of the region for this request.
16884
+ # @param [String] resource
16885
+ # Name or id of the resource for this request.
16886
+ # @param [Google::Apis::ComputeV1::RegionSetPolicyRequest] region_set_policy_request_object
16887
+ # @param [String] fields
16888
+ # Selector specifying which fields to include in a partial response.
16889
+ # @param [String] quota_user
16890
+ # An opaque string that represents a user for quota purposes. Must not exceed 40
16891
+ # characters.
16892
+ # @param [String] user_ip
16893
+ # Deprecated. Please use quotaUser instead.
16894
+ # @param [Google::Apis::RequestOptions] options
16895
+ # Request-specific options
16896
+ #
16897
+ # @yield [result, err] Result & error if block supplied
16898
+ # @yieldparam result [Google::Apis::ComputeV1::Policy] parsed result object
16899
+ # @yieldparam err [StandardError] error object if request failed
16900
+ #
16901
+ # @return [Google::Apis::ComputeV1::Policy]
16902
+ #
16903
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
16904
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
16905
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
16906
+ def set_region_disk_iam_policy(project, region, resource, region_set_policy_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
16907
+ command = make_simple_command(:post, '{project}/regions/{region}/disks/{resource}/setIamPolicy', options)
16908
+ command.request_representation = Google::Apis::ComputeV1::RegionSetPolicyRequest::Representation
16909
+ command.request_object = region_set_policy_request_object
16910
+ command.response_representation = Google::Apis::ComputeV1::Policy::Representation
16911
+ command.response_class = Google::Apis::ComputeV1::Policy
16912
+ command.params['project'] = project unless project.nil?
16913
+ command.params['region'] = region unless region.nil?
16914
+ command.params['resource'] = resource unless resource.nil?
16915
+ command.query['fields'] = fields unless fields.nil?
16916
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
16917
+ command.query['userIp'] = user_ip unless user_ip.nil?
16918
+ execute_or_queue_command(command, &block)
16919
+ end
16920
+
16838
16921
  # Sets the labels on the target regional disk.
16839
16922
  # @param [String] project
16840
16923
  # Project ID for this request.