google-api-client 0.39.3 → 0.39.4

Sign up to get free protection for your applications and to get access to all the features.
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.