google-api-client 0.36.1 → 0.36.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -0
  3. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  4. data/generated/google/apis/androidenterprise_v1/classes.rb +29 -58
  5. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  6. data/generated/google/apis/androidmanagement_v1/classes.rb +188 -0
  7. data/generated/google/apis/androidmanagement_v1/representations.rb +67 -0
  8. data/generated/google/apis/androidmanagement_v1/service.rb +6 -1
  9. data/generated/google/apis/bigquery_v2.rb +1 -1
  10. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  11. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  12. data/generated/google/apis/bigquery_v2/service.rb +19 -2
  13. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  14. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +6 -0
  15. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +1 -0
  16. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  17. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +6 -0
  18. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +1 -0
  19. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  20. data/generated/google/apis/cloudbuild_v1alpha1.rb +34 -0
  21. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +1174 -0
  22. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +435 -0
  23. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +223 -0
  24. data/generated/google/apis/compute_alpha.rb +1 -1
  25. data/generated/google/apis/compute_alpha/classes.rb +234 -240
  26. data/generated/google/apis/compute_alpha/representations.rb +7 -47
  27. data/generated/google/apis/compute_alpha/service.rb +1233 -1068
  28. data/generated/google/apis/compute_beta.rb +1 -1
  29. data/generated/google/apis/compute_beta/classes.rb +936 -164
  30. data/generated/google/apis/compute_beta/representations.rb +371 -0
  31. data/generated/google/apis/compute_beta/service.rb +1394 -899
  32. data/generated/google/apis/compute_v1.rb +1 -1
  33. data/generated/google/apis/compute_v1/classes.rb +479 -147
  34. data/generated/google/apis/compute_v1/representations.rb +127 -0
  35. data/generated/google/apis/compute_v1/service.rb +813 -748
  36. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  37. data/generated/google/apis/datacatalog_v1beta1/classes.rb +9 -7
  38. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -0
  39. data/generated/google/apis/datacatalog_v1beta1/service.rb +8 -3
  40. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  41. data/generated/google/apis/dataflow_v1b3/classes.rb +69 -0
  42. data/generated/google/apis/dataflow_v1b3/representations.rb +34 -0
  43. data/generated/google/apis/dataproc_v1.rb +1 -1
  44. data/generated/google/apis/dataproc_v1/classes.rb +73 -43
  45. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  46. data/generated/google/apis/dataproc_v1beta2/classes.rb +73 -43
  47. data/generated/google/apis/dialogflow_v2.rb +1 -1
  48. data/generated/google/apis/dialogflow_v2/classes.rb +44 -11
  49. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  50. data/generated/google/apis/dialogflow_v2beta1/classes.rb +44 -11
  51. data/generated/google/apis/dialogflow_v2beta1/service.rb +20 -0
  52. data/generated/google/apis/dns_v1.rb +1 -1
  53. data/generated/google/apis/dns_v1/classes.rb +70 -0
  54. data/generated/google/apis/dns_v1/representations.rb +32 -0
  55. data/generated/google/apis/dns_v2beta1.rb +1 -1
  56. data/generated/google/apis/dns_v2beta1/classes.rb +70 -0
  57. data/generated/google/apis/dns_v2beta1/representations.rb +32 -0
  58. data/generated/google/apis/docs_v1.rb +1 -1
  59. data/generated/google/apis/docs_v1/classes.rb +152 -0
  60. data/generated/google/apis/docs_v1/representations.rb +56 -0
  61. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  62. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  63. data/generated/google/apis/driveactivity_v2.rb +1 -1
  64. data/generated/google/apis/driveactivity_v2/classes.rb +6 -0
  65. data/generated/google/apis/driveactivity_v2/representations.rb +2 -0
  66. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  67. data/generated/google/apis/firestore_v1.rb +1 -1
  68. data/generated/google/apis/firestore_v1/classes.rb +1 -1
  69. data/generated/google/apis/firestore_v1/service.rb +24 -22
  70. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  71. data/generated/google/apis/firestore_v1beta1/classes.rb +1 -1
  72. data/generated/google/apis/firestore_v1beta1/service.rb +16 -14
  73. data/generated/google/apis/fitness_v1.rb +11 -11
  74. data/generated/google/apis/games_management_v1management.rb +1 -1
  75. data/generated/google/apis/games_management_v1management/service.rb +5 -7
  76. data/generated/google/apis/iam_v1.rb +1 -1
  77. data/generated/google/apis/iam_v1/classes.rb +83 -141
  78. data/generated/google/apis/iam_v1/representations.rb +0 -6
  79. data/generated/google/apis/iam_v1/service.rb +11 -21
  80. data/generated/google/apis/language_v1beta2.rb +1 -1
  81. data/generated/google/apis/language_v1beta2/classes.rb +15 -0
  82. data/generated/google/apis/language_v1beta2/representations.rb +2 -0
  83. data/generated/google/apis/logging_v2.rb +3 -2
  84. data/generated/google/apis/logging_v2/service.rb +2 -1
  85. data/generated/google/apis/{surveys_v2.rb → prod_tt_sasportal_v1alpha1.rb} +9 -15
  86. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +1084 -0
  87. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +503 -0
  88. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +1322 -0
  89. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  90. data/generated/google/apis/recommender_v1beta1/classes.rb +6 -0
  91. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  92. data/generated/google/apis/remotebuildexecution_v1/classes.rb +1 -1
  93. data/generated/google/apis/run_v1alpha1.rb +1 -1
  94. data/generated/google/apis/run_v1alpha1/classes.rb +424 -0
  95. data/generated/google/apis/run_v1alpha1/representations.rb +161 -0
  96. data/generated/google/apis/run_v1alpha1/service.rb +862 -46
  97. data/generated/google/apis/run_v1beta1.rb +1 -1
  98. data/generated/google/apis/run_v1beta1/classes.rb +1 -1
  99. data/generated/google/apis/sasportal_v1alpha1.rb +34 -0
  100. data/generated/google/apis/sasportal_v1alpha1/classes.rb +1084 -0
  101. data/generated/google/apis/sasportal_v1alpha1/representations.rb +503 -0
  102. data/generated/google/apis/sasportal_v1alpha1/service.rb +1322 -0
  103. data/generated/google/apis/securitycenter_v1.rb +1 -1
  104. data/generated/google/apis/securitycenter_v1/classes.rb +18 -0
  105. data/generated/google/apis/securitycenter_v1/representations.rb +3 -0
  106. data/generated/google/apis/securitycenter_v1/service.rb +6 -0
  107. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  108. data/generated/google/apis/servicemanagement_v1/classes.rb +16 -1
  109. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  110. data/generated/google/apis/sheets_v4.rb +1 -1
  111. data/generated/google/apis/sheets_v4/classes.rb +187 -2
  112. data/generated/google/apis/sheets_v4/representations.rb +47 -0
  113. data/generated/google/apis/spanner_v1.rb +1 -1
  114. data/generated/google/apis/spanner_v1/classes.rb +104 -51
  115. data/generated/google/apis/spanner_v1/representations.rb +1 -0
  116. data/generated/google/apis/spanner_v1/service.rb +6 -1
  117. data/generated/google/apis/sql_v1beta4.rb +1 -1
  118. data/generated/google/apis/sql_v1beta4/classes.rb +75 -4
  119. data/generated/google/apis/sql_v1beta4/representations.rb +32 -0
  120. data/generated/google/apis/sql_v1beta4/service.rb +83 -2
  121. data/generated/google/apis/toolresults_v1.rb +31 -0
  122. data/generated/google/apis/toolresults_v1/classes.rb +696 -0
  123. data/generated/google/apis/toolresults_v1/representations.rb +438 -0
  124. data/generated/google/apis/toolresults_v1/service.rb +59 -0
  125. data/generated/google/apis/vision_v1.rb +1 -1
  126. data/generated/google/apis/vision_v1/service.rb +1 -1
  127. data/lib/google/apis/version.rb +1 -1
  128. metadata +19 -7
  129. data/generated/google/apis/surveys_v2/classes.rb +0 -691
  130. data/generated/google/apis/surveys_v2/representations.rb +0 -305
  131. data/generated/google/apis/surveys_v2/service.rb +0 -348
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeAlpha
27
27
  VERSION = 'Alpha'
28
- REVISION = '20191025'
28
+ REVISION = '20191125'
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'
@@ -1355,9 +1355,10 @@ module Google
1355
1355
  # @return [String]
1356
1356
  attr_accessor :disk_name
1357
1357
 
1358
- # Specifies the size of the disk in base-2 GB. If not specified, the disk will
1359
- # be the same size as the image (usually 10GB). If specified, the size must be
1360
- # equal to or larger than 10GB.
1358
+ # Specifies the size of the disk in base-2 GB. The size must be at least 10 GB.
1359
+ # If you specify a sourceImage, which is required for boot disks, the default
1360
+ # size is the size of the sourceImage. If you do not specify a sourceImage, the
1361
+ # default disk size is 500 GB.
1361
1362
  # Corresponds to the JSON property `diskSizeGb`
1362
1363
  # @return [Fixnum]
1363
1364
  attr_accessor :disk_size_gb
@@ -3028,6 +3029,8 @@ module Google
3028
3029
  # HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED.
3029
3030
  # - A global backend service with the load_balancing_scheme set to
3030
3031
  # INTERNAL_SELF_MANAGED.
3032
+ # If sessionAffinity is not NONE, and this field is not set to >MAGLEV or
3033
+ # RING_HASH, session affinity settings will not take effect.
3031
3034
  # Corresponds to the JSON property `localityLbPolicy`
3032
3035
  # @return [String]
3033
3036
  attr_accessor :locality_lb_policy
@@ -3124,8 +3127,9 @@ module Google
3124
3127
  # HTTPS.
3125
3128
  # When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP,
3126
3129
  # CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3127
- # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, possible values are
3128
- # NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE.
3130
+ # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED,
3131
+ # possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or
3132
+ # HTTP_COOKIE.
3129
3133
  # Corresponds to the JSON property `sessionAffinity`
3130
3134
  # @return [String]
3131
3135
  attr_accessor :session_affinity
@@ -4043,6 +4047,22 @@ module Google
4043
4047
  # account. For example, `my-other-app@appspot.gserviceaccount.com`.
4044
4048
  # * `group:`emailid``: An email address that represents a Google group. For
4045
4049
  # example, `admins@example.com`.
4050
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
4051
+ # identifier) representing a user that has been recently deleted. For example,`
4052
+ # alice@example.com?uid=123456789012345678901`. If the user is recovered, this
4053
+ # value reverts to `user:`emailid`` and the recovered user retains the role in
4054
+ # the binding.
4055
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
4056
+ # unique identifier) representing a service account that has been recently
4057
+ # deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
4058
+ # 123456789012345678901`. If the service account is undeleted, this value
4059
+ # reverts to `serviceAccount:`emailid`` and the undeleted service account
4060
+ # retains the role in the binding.
4061
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
4062
+ # identifier) representing a Google group that has been recently deleted. For
4063
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
4064
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
4065
+ # retains the role in the binding.
4046
4066
  # * `domain:`domain``: The G Suite domain (primary) that represents all the
4047
4067
  # users of that domain. For example, `google.com` or `example.com`.
4048
4068
  # Corresponds to the JSON property `members`
@@ -5383,6 +5403,14 @@ module Google
5383
5403
  # @return [String]
5384
5404
  attr_accessor :source_snapshot_id
5385
5405
 
5406
+ # The full Google Cloud Storage URI where the disk image is stored. This file
5407
+ # must be a gzip-compressed tarball whose name ends in .tar.gz or virtual
5408
+ # machine disk whose name ends in vmdk. Valid URIs may start with gs:// or https:
5409
+ # //storage.googleapis.com/.
5410
+ # Corresponds to the JSON property `sourceStorageObject`
5411
+ # @return [String]
5412
+ attr_accessor :source_storage_object
5413
+
5386
5414
  # [Output Only] The status of disk creation. CREATING: Disk is provisioning.
5387
5415
  # RESTORING: Source data is being copied into the disk. FAILED: Disk creation
5388
5416
  # failed. READY: Disk is ready for use. DELETING: Disk is deleting.
@@ -5452,6 +5480,7 @@ module Google
5452
5480
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
5453
5481
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
5454
5482
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
5483
+ @source_storage_object = args[:source_storage_object] if args.key?(:source_storage_object)
5455
5484
  @status = args[:status] if args.key?(:status)
5456
5485
  @storage_type = args[:storage_type] if args.key?(:storage_type)
5457
5486
  @type = args[:type] if args.key?(:type)
@@ -7434,8 +7463,8 @@ module Google
7434
7463
  # @return [String]
7435
7464
  attr_accessor :ip_address
7436
7465
 
7437
- # The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP,
7438
- # AH, SCTP or ICMP.
7466
+ # The IP protocol to which this rule applies. For protocol forwarding, valid
7467
+ # options are TCP, UDP, ESP, AH, SCTP or ICMP.
7439
7468
  # For Internal TCP/UDP Load Balancing, the load balancing scheme is INTERNAL,
7440
7469
  # and one of TCP or UDP are valid. For Traffic Director, the load balancing
7441
7470
  # scheme is INTERNAL_SELF_MANAGED, and only TCPis valid. For Internal HTTP(S)
@@ -7560,15 +7589,17 @@ module Google
7560
7589
  attr_accessor :load_balancing_scheme
7561
7590
 
7562
7591
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
7563
- # to a limited set xDS compliant clients. In their xDS requests to Loadbalancer,
7564
- # xDS clients present node metadata. If a match takes place, the relevant
7565
- # routing configuration is made available to those proxies.
7592
+ # to a limited set of xDS compliant clients. In their xDS requests to
7593
+ # Loadbalancer, xDS clients present node metadata. If a match takes place, the
7594
+ # relevant configuration is made available to those proxies. Otherwise, all the
7595
+ # resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule will
7596
+ # not be visible to those proxies.
7566
7597
  # For each metadataFilter in this list, if its filterMatchCriteria is set to
7567
7598
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
7568
7599
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
7569
- # all of its filterLabels must match with corresponding labels in the provided
7600
+ # all of its filterLabels must match with corresponding labels provided in the
7570
7601
  # metadata.
7571
- # metadataFilters specified here can be overridden by those specified in the
7602
+ # metadataFilters specified here will be applifed before those specified in the
7572
7603
  # UrlMap that this ForwardingRule references.
7573
7604
  # metadataFilters only applies to Loadbalancers that have their
7574
7605
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
@@ -7604,23 +7635,16 @@ module Google
7604
7635
  # @return [String]
7605
7636
  attr_accessor :network_tier
7606
7637
 
7607
- # This field is deprecated. See the port
7608
- # field.
7609
- # Corresponds to the JSON property `portRange`
7610
- # @return [String]
7611
- attr_accessor :port_range
7612
-
7613
- # List of comma-separated ports. The forwarding rule forwards packets with
7614
- # matching destination ports. If the forwarding rule's loadBalancingScheme is
7615
- # EXTERNAL, and the forwarding rule references a target pool, specifying ports
7616
- # is optional. You can specify an unlimited number of ports, but they must be
7617
- # contiguous. If you omit ports, GCP forwards traffic on any port of the
7618
- # forwarding rule's protocol.
7619
- # If the forwarding rule's loadBalancingScheme is EXTERNAL, and the forwarding
7620
- # rule references a target HTTP proxy, target HTTPS proxy, target TCP proxy,
7621
- # target SSL proxy, or target VPN gateway, you must specify ports using the
7622
- # following constraints:
7623
- #
7638
+ # When the load balancing scheme is EXTERNAL, INTERNAL_SELF_MANAGED and
7639
+ # INTERNAL_MANAGED, you can specify a port_range. Use with a forwarding rule
7640
+ # that points to a target proxy or a target pool. Do not use with a forwarding
7641
+ # rule that points to a backend service. This field is used along with the
7642
+ # target field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy,
7643
+ # TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.
7644
+ # Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed
7645
+ # to ports in the specified range will be forwarded to target. Forwarding rules
7646
+ # with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
7647
+ # Some types of forwarding target have constraints on the acceptable ports:
7624
7648
  # - TargetHttpProxy: 80, 8080
7625
7649
  # - TargetHttpsProxy: 443
7626
7650
  # - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
@@ -7628,16 +7652,20 @@ module Google
7628
7652
  # - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688,
7629
7653
  # 1883, 5222
7630
7654
  # - TargetVpnGateway: 500, 4500
7631
- # If the forwarding rule's loadBalancingScheme is INTERNAL, you must specify
7655
+ # Corresponds to the JSON property `portRange`
7656
+ # @return [String]
7657
+ attr_accessor :port_range
7658
+
7659
+ # This field is used along with the backend_service field for internal load
7660
+ # balancing.
7661
+ # When the load balancing scheme is INTERNAL, a list of ports can be configured,
7662
+ # for example, ['80'], ['8000','9000']. Only packets addressed to these ports
7663
+ # are forwarded to the backends configured with the forwarding rule.
7664
+ # If the forwarding rule's loadBalancingScheme is INTERNAL, you can specify
7632
7665
  # ports in one of the following ways:
7633
7666
  # * A list of up to five ports, which can be non-contiguous * Keyword ALL, which
7634
7667
  # causes the forwarding rule to forward traffic on any port of the forwarding
7635
7668
  # rule's protocol.
7636
- # The ports field is used along with the target field for TargetHttpProxy,
7637
- # TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool,
7638
- # TargetInstance.
7639
- # Applicable only when IPProtocol is TCP, UDP, or SCTP. Forwarding rules with
7640
- # the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
7641
7669
  # Corresponds to the JSON property `ports`
7642
7670
  # @return [Array<String>]
7643
7671
  attr_accessor :ports
@@ -8173,32 +8201,34 @@ module Google
8173
8201
  # @return [String]
8174
8202
  attr_accessor :etag
8175
8203
 
8176
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
8177
- # access control policies for Cloud Platform resources.
8204
+ # An Identity and Access Management (IAM) policy, which specifies access
8205
+ # controls for Google Cloud resources.
8178
8206
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
8179
8207
  # members` to a single `role`. Members can be user accounts, service accounts,
8180
8208
  # Google groups, and domains (such as G Suite). A `role` is a named list of
8181
- # permissions (defined by IAM or configured by users). A `binding` can
8182
- # optionally specify a `condition`, which is a logic expression that further
8183
- # constrains the role binding based on attributes about the request and/or
8184
- # target resource.
8185
- # **JSON Example**
8209
+ # permissions; each `role` can be an IAM predefined role or a user-created
8210
+ # custom role.
8211
+ # Optionally, a `binding` can specify a `condition`, which is a logical
8212
+ # expression that allows access to a resource only if the expression evaluates
8213
+ # to `true`. A condition can add constraints based on attributes of the request,
8214
+ # the resource, or both.
8215
+ # **JSON example:**
8186
8216
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
8187
8217
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
8188
8218
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
8189
8219
  # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
8190
8220
  # "condition": ` "title": "expirable access", "description": "Does not grant
8191
8221
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
8192
- # 00:00.000Z')", ` ` ] `
8193
- # **YAML Example**
8222
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
8223
+ # **YAML example:**
8194
8224
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
8195
8225
  # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
8196
8226
  # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
8197
8227
  # com role: roles/resourcemanager.organizationViewer condition: title: expirable
8198
8228
  # access description: Does not grant access after Sep 2020 expression: request.
8199
- # time < timestamp('2020-10-01T00:00:00.000Z')
8200
- # For a description of IAM and its features, see the [IAM developer's guide](
8201
- # https://cloud.google.com/iam/docs).
8229
+ # time < timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3
8230
+ # For a description of IAM and its features, see the [IAM documentation](https://
8231
+ # cloud.google.com/iam/docs/).
8202
8232
  # Corresponds to the JSON property `policy`
8203
8233
  # @return [Google::Apis::ComputeAlpha::Policy]
8204
8234
  attr_accessor :policy
@@ -8257,7 +8287,7 @@ module Google
8257
8287
  attr_accessor :kind
8258
8288
 
8259
8289
  # The path to be queried. This can be the default namespace ('/') or a nested
8260
- # namespace ('//') or a specified key ('//')
8290
+ # namespace ('/\/') or a specified key ('/\/\')
8261
8291
  # Corresponds to the JSON property `queryPath`
8262
8292
  # @return [String]
8263
8293
  attr_accessor :query_path
@@ -9695,7 +9725,7 @@ module Google
9695
9725
  attr_accessor :prefix_match
9696
9726
 
9697
9727
  # A header with the contents of headerName must exist. The match takes place
9698
- # whether or not the request's header has a value or not.
9728
+ # whether or not the request's header has a value.
9699
9729
  # Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or
9700
9730
  # rangeMatch must be set.
9701
9731
  # Corresponds to the JSON property `presentMatch`
@@ -10017,7 +10047,7 @@ module Google
10017
10047
 
10018
10048
  # The queryParameterMatch matches if the value of the parameter exactly matches
10019
10049
  # the contents of exactMatch.
10020
- # Only one of presentMatch, exactMatch and regexMatch must be set.
10050
+ # Only one of presentMatch, exactMatch or regexMatch must be set.
10021
10051
  # Corresponds to the JSON property `exactMatch`
10022
10052
  # @return [String]
10023
10053
  attr_accessor :exact_match
@@ -10030,7 +10060,7 @@ module Google
10030
10060
 
10031
10061
  # Specifies that the queryParameterMatch matches if the request contains the
10032
10062
  # query parameter, irrespective of whether the parameter has a value or not.
10033
- # Only one of presentMatch, exactMatch and regexMatch must be set.
10063
+ # Only one of presentMatch, exactMatch or regexMatch must be set.
10034
10064
  # Corresponds to the JSON property `presentMatch`
10035
10065
  # @return [Boolean]
10036
10066
  attr_accessor :present_match
@@ -10039,7 +10069,7 @@ module Google
10039
10069
  # The queryParameterMatch matches if the value of the parameter matches the
10040
10070
  # regular expression specified by regexMatch. For the regular expression grammar,
10041
10071
  # please see en.cppreference.com/w/cpp/regex/ecmascript
10042
- # Only one of presentMatch, exactMatch and regexMatch must be set.
10072
+ # Only one of presentMatch, exactMatch or regexMatch must be set.
10043
10073
  # Corresponds to the JSON property `regexMatch`
10044
10074
  # @return [String]
10045
10075
  attr_accessor :regex_match
@@ -10308,7 +10338,8 @@ module Google
10308
10338
  # forwarding the request to the selected backend. If routeAction specifies any
10309
10339
  # weightedBackendServices, service must not be set. Conversely if service is set,
10310
10340
  # routeAction cannot contain any weightedBackendServices.
10311
- # Only one of routeAction or urlRedirect must be set.
10341
+ # Only one of urlRedirect, service or routeAction.weightedBackendService must be
10342
+ # set.
10312
10343
  # Corresponds to the JSON property `routeAction`
10313
10344
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
10314
10345
  attr_accessor :route_action
@@ -10351,10 +10382,10 @@ module Google
10351
10382
  class HttpRouteRuleMatch
10352
10383
  include Google::Apis::Core::Hashable
10353
10384
 
10354
- # For satifying the matchRule condition, the path of the request must exactly
10385
+ # For satisfying the matchRule condition, the path of the request must exactly
10355
10386
  # match the value specified in fullPathMatch after removing any query parameters
10356
10387
  # and anchor that may be part of the original URL.
10357
- # FullPathMatch must be between 1 and 1024 characters.
10388
+ # fullPathMatch must be between 1 and 1024 characters.
10358
10389
  # Only one of prefixMatch, fullPathMatch or regexMatch must be specified.
10359
10390
  # Corresponds to the JSON property `fullPathMatch`
10360
10391
  # @return [String]
@@ -10368,30 +10399,30 @@ module Google
10368
10399
 
10369
10400
  # Specifies that prefixMatch and fullPathMatch matches are case sensitive.
10370
10401
  # The default value is false.
10371
- # caseSensitive must not be used with regexMatch.
10402
+ # ignoreCase must not be used with regexMatch.
10372
10403
  # Corresponds to the JSON property `ignoreCase`
10373
10404
  # @return [Boolean]
10374
10405
  attr_accessor :ignore_case
10375
10406
  alias_method :ignore_case?, :ignore_case
10376
10407
 
10377
10408
  # Opaque filter criteria used by Loadbalancer to restrict routing configuration
10378
- # to a limited set xDS compliant clients. In their xDS requests to Loadbalancer,
10379
- # xDS clients present node metadata. If a match takes place, the relevant
10380
- # routing configuration is made available to those proxies.
10409
+ # to a limited set of xDS compliant clients. In their xDS requests to
10410
+ # Loadbalancer, xDS clients present node metadata. If a match takes place, the
10411
+ # relevant routing configuration is made available to those proxies.
10381
10412
  # For each metadataFilter in this list, if its filterMatchCriteria is set to
10382
10413
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
10383
10414
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
10384
- # all of its filterLabels must match with corresponding labels in the provided
10415
+ # all of its filterLabels must match with corresponding labels provided in the
10385
10416
  # metadata.
10386
- # metadataFilters specified here can be overrides those specified in
10387
- # ForwardingRule that refers to this UrlMap.
10417
+ # metadataFilters specified here will be applied after those specified in
10418
+ # ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to.
10388
10419
  # metadataFilters only applies to Loadbalancers that have their
10389
10420
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
10390
10421
  # Corresponds to the JSON property `metadataFilters`
10391
10422
  # @return [Array<Google::Apis::ComputeAlpha::MetadataFilter>]
10392
10423
  attr_accessor :metadata_filters
10393
10424
 
10394
- # For satifying the matchRule condition, the request's path must begin with the
10425
+ # For satisfying the matchRule condition, the request's path must begin with the
10395
10426
  # specified prefixMatch. prefixMatch must begin with a /.
10396
10427
  # The value must be between 1 and 1024 characters.
10397
10428
  # Only one of prefixMatch, fullPathMatch or regexMatch must be specified.
@@ -10405,7 +10436,7 @@ module Google
10405
10436
  # @return [Array<Google::Apis::ComputeAlpha::HttpQueryParameterMatch>]
10406
10437
  attr_accessor :query_parameter_matches
10407
10438
 
10408
- # For satifying the matchRule condition, the path of the request must satisfy
10439
+ # For satisfying the matchRule condition, the path of the request must satisfy
10409
10440
  # the regular expression specified in regexMatch after removing any query
10410
10441
  # parameters and anchor supplied with the original URL. For regular expression
10411
10442
  # grammar please see en.cppreference.com/w/cpp/regex/ecmascript
@@ -11538,14 +11569,17 @@ module Google
11538
11569
  end
11539
11570
  end
11540
11571
 
11541
- # Represents an unmanaged Instance Group resource.
11542
- # Use unmanaged instance groups if you need to apply load balancing to groups of
11543
- # heterogeneous instances or if you need to manage the instances yourself. For
11544
- # more information, read Instance groups.
11545
- # For zonal unmanaged Instance Group, use instanceGroups resource.
11546
- # For regional unmanaged Instance Group, use regionInstanceGroups resource. (==
11547
- # resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (==
11548
- # resource_for beta.regionInstanceGroups ==) (== resource_for v1.
11572
+ # Represents an Instance Group resource.
11573
+ # Instance Groups can be used to configure a target for load balancing.
11574
+ # Instance groups can either be managed or unmanaged.
11575
+ # To create managed instance groups, use the instanceGroupManager or
11576
+ # regionInstanceGroupManager resource instead.
11577
+ # Use zonal unmanaged instance groups if you need to apply load balancing to
11578
+ # groups of heterogeneous instances or if you need to manage the instances
11579
+ # yourself. You cannot create regional unmanaged instance groups.
11580
+ # For more information, read Instance groups.
11581
+ # (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==)
11582
+ # (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.
11549
11583
  # regionInstanceGroups ==)
11550
11584
  class InstanceGroup
11551
11585
  include Google::Apis::Core::Hashable
@@ -14028,6 +14062,12 @@ module Google
14028
14062
  # @return [Google::Apis::ComputeAlpha::ReservationAffinity]
14029
14063
  attr_accessor :reservation_affinity
14030
14064
 
14065
+ # Resource policies (names, not ULRs) applied to instances created from this
14066
+ # templae.
14067
+ # Corresponds to the JSON property `resourcePolicies`
14068
+ # @return [Array<String>]
14069
+ attr_accessor :resource_policies
14070
+
14031
14071
  # Sets the scheduling options for an Instance. NextID: 9
14032
14072
  # Corresponds to the JSON property `scheduling`
14033
14073
  # @return [Google::Apis::ComputeAlpha::Scheduling]
@@ -14074,6 +14114,7 @@ module Google
14074
14114
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
14075
14115
  @post_key_revocation_action_type = args[:post_key_revocation_action_type] if args.key?(:post_key_revocation_action_type)
14076
14116
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
14117
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
14077
14118
  @scheduling = args[:scheduling] if args.key?(:scheduling)
14078
14119
  @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
14079
14120
  @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
@@ -17105,12 +17146,12 @@ module Google
17105
17146
 
17106
17147
  # Specifies the number of such disks.
17107
17148
  # Corresponds to the JSON property `diskCount`
17108
- # @return [String]
17149
+ # @return [Fixnum]
17109
17150
  attr_accessor :disk_count
17110
17151
 
17111
17152
  # Specifies the size of the disk in base-2 GB.
17112
17153
  # Corresponds to the JSON property `diskSizeGb`
17113
- # @return [String]
17154
+ # @return [Fixnum]
17114
17155
  attr_accessor :disk_size_gb
17115
17156
 
17116
17157
  # Specifies the desired disk type on the node. This disk type must be a local
@@ -18305,12 +18346,12 @@ module Google
18305
18346
  # Opaque filter criteria used by loadbalancers to restrict routing configuration
18306
18347
  # to a limited set of loadbalancing proxies. Proxies and sidecars involved in
18307
18348
  # loadbalancing would typically present metadata to the loadbalancers which need
18308
- # to match criteria specified here. If a match takes place, the relevant routing
18349
+ # to match criteria specified here. If a match takes place, the relevant
18309
18350
  # configuration is made available to those proxies.
18310
18351
  # For each metadataFilter in this list, if its filterMatchCriteria is set to
18311
18352
  # MATCH_ANY, at least one of the filterLabels must match the corresponding label
18312
18353
  # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
18313
- # all of its filterLabels must match with corresponding labels in the provided
18354
+ # all of its filterLabels must match with corresponding labels provided in the
18314
18355
  # metadata.
18315
18356
  # An example for using metadataFilters would be: if loadbalancing involves
18316
18357
  # Envoys, they will only receive routing configuration when values in
@@ -18503,7 +18544,7 @@ module Google
18503
18544
  # Name of the resource. Provided by the client when the resource is created. The
18504
18545
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
18505
18546
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
18506
- # z0-9]*[a-z0-9])?. The first character must be a lowercase letter, and all
18547
+ # z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all
18507
18548
  # following characters (except for the last character) must be a dash, lowercase
18508
18549
  # letter, or digit. The last character must be a lowercase letter or digit.
18509
18550
  # Corresponds to the JSON property `name`
@@ -18564,7 +18605,7 @@ module Google
18564
18605
  end
18565
18606
  end
18566
18607
 
18567
- # The network endpoint.
18608
+ # The network endpoint. Next ID: 7
18568
18609
  class NetworkEndpoint
18569
18610
  include Google::Apis::Core::Hashable
18570
18611
 
@@ -18620,7 +18661,7 @@ module Google
18620
18661
  # Represents a collection of network endpoints.
18621
18662
  # For more information read Setting up network endpoint groups in load balancing.
18622
18663
  # (== resource_for v1.networkEndpointGroups ==) (== resource_for beta.
18623
- # networkEndpointGroups ==)
18664
+ # networkEndpointGroups ==) Next ID: 21
18624
18665
  class NetworkEndpointGroup
18625
18666
  include Google::Apis::Core::Hashable
18626
18667
 
@@ -19256,7 +19297,7 @@ module Google
19256
19297
  class NetworkEndpointGroupsListEndpointsRequestNetworkEndpointFilter
19257
19298
  include Google::Apis::Core::Hashable
19258
19299
 
19259
- # The network endpoint.
19300
+ # The network endpoint. Next ID: 7
19260
19301
  # Corresponds to the JSON property `networkEndpoint`
19261
19302
  # @return [Google::Apis::ComputeAlpha::NetworkEndpoint]
19262
19303
  attr_accessor :network_endpoint
@@ -19485,7 +19526,7 @@ module Google
19485
19526
  # @return [Array<Google::Apis::ComputeAlpha::HealthStatusForNetworkEndpoint>]
19486
19527
  attr_accessor :healths
19487
19528
 
19488
- # The network endpoint.
19529
+ # The network endpoint. Next ID: 7
19489
19530
  # Corresponds to the JSON property `networkEndpoint`
19490
19531
  # @return [Google::Apis::ComputeAlpha::NetworkEndpoint]
19491
19532
  attr_accessor :network_endpoint
@@ -20015,11 +20056,11 @@ module Google
20015
20056
  # instances physically separated from instances in other projects, or to group
20016
20057
  # your instances together on the same host hardware. For more information, read
20017
20058
  # Sole-tenant nodes. (== resource_for beta.nodeGroups ==) (== resource_for v1.
20018
- # nodeGroups ==) NextID: 16
20059
+ # nodeGroups ==)
20019
20060
  class NodeGroup
20020
20061
  include Google::Apis::Core::Hashable
20021
20062
 
20022
- #
20063
+ # Specifies how autoscaling should behave.
20023
20064
  # Corresponds to the JSON property `autoscalingPolicy`
20024
20065
  # @return [Google::Apis::ComputeAlpha::NodeGroupAutoscalingPolicy]
20025
20066
  attr_accessor :autoscaling_policy
@@ -20053,7 +20094,8 @@ module Google
20053
20094
  # @return [String]
20054
20095
  attr_accessor :kind
20055
20096
 
20056
- #
20097
+ # Specifies how to handle instances when a node in the group undergoes
20098
+ # maintenance.
20057
20099
  # Corresponds to the JSON property `maintenancePolicy`
20058
20100
  # @return [String]
20059
20101
  attr_accessor :maintenance_policy
@@ -20245,17 +20287,17 @@ module Google
20245
20287
  class NodeGroupAutoscalingPolicy
20246
20288
  include Google::Apis::Core::Hashable
20247
20289
 
20248
- #
20249
- # Corresponds to the JSON property `maxSize`
20290
+ # The maximum number of nodes that the group should have.
20291
+ # Corresponds to the JSON property `maxNodes`
20250
20292
  # @return [Fixnum]
20251
- attr_accessor :max_size
20293
+ attr_accessor :max_nodes
20252
20294
 
20253
- #
20254
- # Corresponds to the JSON property `minSize`
20295
+ # The minimum number of nodes that the group should have.
20296
+ # Corresponds to the JSON property `minNodes`
20255
20297
  # @return [Fixnum]
20256
- attr_accessor :min_size
20298
+ attr_accessor :min_nodes
20257
20299
 
20258
- #
20300
+ # The autoscaling mode.
20259
20301
  # Corresponds to the JSON property `mode`
20260
20302
  # @return [String]
20261
20303
  attr_accessor :mode
@@ -20266,8 +20308,8 @@ module Google
20266
20308
 
20267
20309
  # Update properties of this object
20268
20310
  def update!(**args)
20269
- @max_size = args[:max_size] if args.key?(:max_size)
20270
- @min_size = args[:min_size] if args.key?(:min_size)
20311
+ @max_nodes = args[:max_nodes] if args.key?(:max_nodes)
20312
+ @min_nodes = args[:min_nodes] if args.key?(:min_nodes)
20271
20313
  @mode = args[:mode] if args.key?(:mode)
20272
20314
  end
20273
20315
  end
@@ -20734,7 +20776,7 @@ module Google
20734
20776
  # Represent a sole-tenant Node Template resource.
20735
20777
  # You can use a template to define properties for nodes in a node group. For
20736
20778
  # more information, read Creating node groups and instances. (== resource_for
20737
- # beta.nodeTemplates ==) (== resource_for v1.nodeTemplates ==) (== NextID: 16 ==)
20779
+ # beta.nodeTemplates ==) (== resource_for v1.nodeTemplates ==)
20738
20780
  class NodeTemplate
20739
20781
  include Google::Apis::Core::Hashable
20740
20782
 
@@ -22736,11 +22778,6 @@ module Google
22736
22778
  # @return [Google::Apis::ComputeAlpha::PacketMirroringForwardingRuleInfo]
22737
22779
  attr_accessor :collector_ilb
22738
22780
 
22739
- #
22740
- # Corresponds to the JSON property `collectors`
22741
- # @return [Google::Apis::ComputeAlpha::PacketMirroringCollectorInfo]
22742
- attr_accessor :collectors
22743
-
22744
22781
  # [Output Only] Creation timestamp in RFC3339 text format.
22745
22782
  # Corresponds to the JSON property `creationTimestamp`
22746
22783
  # @return [String]
@@ -22800,13 +22837,6 @@ module Google
22800
22837
  # @return [Google::Apis::ComputeAlpha::PacketMirroringNetworkInfo]
22801
22838
  attr_accessor :network
22802
22839
 
22803
- # PacketMirroring packetMatchers. Each packetMatcher specifies a CIRD filter
22804
- # that will apply to the source or destination IP in the IP header for the
22805
- # mirrored VM traffic.
22806
- # Corresponds to the JSON property `packetMatchers`
22807
- # @return [Array<Google::Apis::ComputeAlpha::PacketMirroringPacketMatcher>]
22808
- attr_accessor :packet_matchers
22809
-
22810
22840
  # The priority of applying this configuration. Priority is used to break ties in
22811
22841
  # cases where there is more than one matching rule. In the case of two rules
22812
22842
  # that apply for a given Instance, the one with the lowest-numbered priority
@@ -22838,7 +22868,6 @@ module Google
22838
22868
  # Update properties of this object
22839
22869
  def update!(**args)
22840
22870
  @collector_ilb = args[:collector_ilb] if args.key?(:collector_ilb)
22841
- @collectors = args[:collectors] if args.key?(:collectors)
22842
22871
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
22843
22872
  @description = args[:description] if args.key?(:description)
22844
22873
  @enable = args[:enable] if args.key?(:enable)
@@ -22848,7 +22877,6 @@ module Google
22848
22877
  @mirrored_resources = args[:mirrored_resources] if args.key?(:mirrored_resources)
22849
22878
  @name = args[:name] if args.key?(:name)
22850
22879
  @network = args[:network] if args.key?(:network)
22851
- @packet_matchers = args[:packet_matchers] if args.key?(:packet_matchers)
22852
22880
  @priority = args[:priority] if args.key?(:priority)
22853
22881
  @region = args[:region] if args.key?(:region)
22854
22882
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -22973,46 +23001,6 @@ module Google
22973
23001
  end
22974
23002
  end
22975
23003
 
22976
- #
22977
- class PacketMirroringCollectorInfo
22978
- include Google::Apis::Core::Hashable
22979
-
22980
- # A set of virtual machines configured as destination of the mirrored traffic.
22981
- # They must live in zones contained in the same region as this packetMirroring.
22982
- # Corresponds to the JSON property `instances`
22983
- # @return [Array<Google::Apis::ComputeAlpha::PacketMirroringCollectorInfoInstanceInfo>]
22984
- attr_accessor :instances
22985
-
22986
- def initialize(**args)
22987
- update!(**args)
22988
- end
22989
-
22990
- # Update properties of this object
22991
- def update!(**args)
22992
- @instances = args[:instances] if args.key?(:instances)
22993
- end
22994
- end
22995
-
22996
- #
22997
- class PacketMirroringCollectorInfoInstanceInfo
22998
- include Google::Apis::Core::Hashable
22999
-
23000
- # Resource URL to the virtual machine instance configured as destination of the
23001
- # mirrored traffic.
23002
- # Corresponds to the JSON property `url`
23003
- # @return [String]
23004
- attr_accessor :url
23005
-
23006
- def initialize(**args)
23007
- update!(**args)
23008
- end
23009
-
23010
- # Update properties of this object
23011
- def update!(**args)
23012
- @url = args[:url] if args.key?(:url)
23013
- end
23014
- end
23015
-
23016
23004
  #
23017
23005
  class PacketMirroringFilter
23018
23006
  include Google::Apis::Core::Hashable
@@ -23301,26 +23289,6 @@ module Google
23301
23289
  end
23302
23290
  end
23303
23291
 
23304
- #
23305
- class PacketMirroringPacketMatcher
23306
- include Google::Apis::Core::Hashable
23307
-
23308
- # IP CIDR range that applies as filter on the source or destination IP in the IP
23309
- # header. Only IPv4 is supported.
23310
- # Corresponds to the JSON property `cidrRange`
23311
- # @return [String]
23312
- attr_accessor :cidr_range
23313
-
23314
- def initialize(**args)
23315
- update!(**args)
23316
- end
23317
-
23318
- # Update properties of this object
23319
- def update!(**args)
23320
- @cidr_range = args[:cidr_range] if args.key?(:cidr_range)
23321
- end
23322
- end
23323
-
23324
23292
  #
23325
23293
  class PacketMirroringsScopedList
23326
23294
  include Google::Apis::Core::Hashable
@@ -23484,10 +23452,9 @@ module Google
23484
23452
  # @return [Array<Google::Apis::ComputeAlpha::PathRule>]
23485
23453
  attr_accessor :path_rules
23486
23454
 
23487
- # The list of ordered HTTP route rules. Use this list instead of pathRules when
23488
- # advanced route matching and routing actions are desired. The order of
23489
- # specifying routeRules matters: the first rule that matches will cause its
23490
- # specified routing action to take effect.
23455
+ # The list of HTTP route rules. Use this list instead of pathRules when advanced
23456
+ # route matching and routing actions are desired. routeRules are evaluated in
23457
+ # order of priority, from the lowest to highest number.
23491
23458
  # Within a given pathMatcher, only one of pathRules or routeRules must be set.
23492
23459
  # routeRules are not supported in UrlMaps intended for External Load balancers.
23493
23460
  # Corresponds to the JSON property `routeRules`
@@ -23718,32 +23685,34 @@ module Google
23718
23685
  end
23719
23686
  end
23720
23687
 
23721
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
23722
- # access control policies for Cloud Platform resources.
23688
+ # An Identity and Access Management (IAM) policy, which specifies access
23689
+ # controls for Google Cloud resources.
23723
23690
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
23724
23691
  # members` to a single `role`. Members can be user accounts, service accounts,
23725
23692
  # Google groups, and domains (such as G Suite). A `role` is a named list of
23726
- # permissions (defined by IAM or configured by users). A `binding` can
23727
- # optionally specify a `condition`, which is a logic expression that further
23728
- # constrains the role binding based on attributes about the request and/or
23729
- # target resource.
23730
- # **JSON Example**
23693
+ # permissions; each `role` can be an IAM predefined role or a user-created
23694
+ # custom role.
23695
+ # Optionally, a `binding` can specify a `condition`, which is a logical
23696
+ # expression that allows access to a resource only if the expression evaluates
23697
+ # to `true`. A condition can add constraints based on attributes of the request,
23698
+ # the resource, or both.
23699
+ # **JSON example:**
23731
23700
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
23732
23701
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
23733
23702
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
23734
23703
  # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
23735
23704
  # "condition": ` "title": "expirable access", "description": "Does not grant
23736
23705
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
23737
- # 00:00.000Z')", ` ` ] `
23738
- # **YAML Example**
23706
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
23707
+ # **YAML example:**
23739
23708
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
23740
23709
  # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
23741
23710
  # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
23742
23711
  # com role: roles/resourcemanager.organizationViewer condition: title: expirable
23743
23712
  # access description: Does not grant access after Sep 2020 expression: request.
23744
- # time < timestamp('2020-10-01T00:00:00.000Z')
23745
- # For a description of IAM and its features, see the [IAM developer's guide](
23746
- # https://cloud.google.com/iam/docs).
23713
+ # time < timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3
23714
+ # For a description of IAM and its features, see the [IAM documentation](https://
23715
+ # cloud.google.com/iam/docs/).
23747
23716
  class Policy
23748
23717
  include Google::Apis::Core::Hashable
23749
23718
 
@@ -23752,9 +23721,9 @@ module Google
23752
23721
  # @return [Array<Google::Apis::ComputeAlpha::AuditConfig>]
23753
23722
  attr_accessor :audit_configs
23754
23723
 
23755
- # Associates a list of `members` to a `role`. Optionally may specify a `
23756
- # condition` that determines when binding is in effect. `bindings` with no
23757
- # members will result in an error.
23724
+ # Associates a list of `members` to a `role`. Optionally, may specify a `
23725
+ # condition` that determines how and when the `bindings` are applied. Each of
23726
+ # the `bindings` must contain at least one member.
23758
23727
  # Corresponds to the JSON property `bindings`
23759
23728
  # @return [Array<Google::Apis::ComputeAlpha::Binding>]
23760
23729
  attr_accessor :bindings
@@ -23766,10 +23735,10 @@ module Google
23766
23735
  # returned in the response to `getIamPolicy`, and systems are expected to put
23767
23736
  # that etag in the request to `setIamPolicy` to ensure that their change will be
23768
23737
  # applied to the same version of the policy.
23769
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
23770
- # policy is overwritten. Due to blind-set semantics of an etag-less policy, '
23771
- # setIamPolicy' will not fail even if either of incoming or stored policy does
23772
- # not meet the version requirements.
23738
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
23739
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
23740
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
23741
+ # conditions in the version `3` policy are lost.
23773
23742
  # Corresponds to the JSON property `etag`
23774
23743
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
23775
23744
  # @return [String]
@@ -23793,15 +23762,20 @@ module Google
23793
23762
  attr_accessor :rules
23794
23763
 
23795
23764
  # Specifies the format of the policy.
23796
- # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
23765
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are
23797
23766
  # rejected.
23798
- # Operations affecting conditional bindings must specify version 3. This can be
23799
- # either setting a conditional policy, modifying a conditional binding, or
23800
- # removing a conditional binding from the stored conditional policy. Operations
23801
- # on non-conditional policies may specify any valid value or leave the field
23802
- # unset.
23803
- # If no etag is provided in the call to `setIamPolicy`, any version compliance
23804
- # checks on the incoming and/or stored policy is skipped.
23767
+ # Any operation that affects conditional role bindings must specify version `3`.
23768
+ # This requirement applies to the following operations:
23769
+ # * Getting a policy that includes a conditional role binding * Adding a
23770
+ # conditional role binding to a policy * Changing a conditional role binding in
23771
+ # a policy * Removing any role binding, with or without a condition, from a
23772
+ # policy that includes conditions
23773
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
23774
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
23775
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
23776
+ # conditions in the version `3` policy are lost.
23777
+ # If a policy does not include any conditions, operations on that policy may
23778
+ # specify any valid version or leave the field unset.
23805
23779
  # Corresponds to the JSON property `version`
23806
23780
  # @return [Fixnum]
23807
23781
  attr_accessor :version
@@ -26479,32 +26453,34 @@ module Google
26479
26453
  # @return [String]
26480
26454
  attr_accessor :etag
26481
26455
 
26482
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
26483
- # access control policies for Cloud Platform resources.
26456
+ # An Identity and Access Management (IAM) policy, which specifies access
26457
+ # controls for Google Cloud resources.
26484
26458
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
26485
26459
  # members` to a single `role`. Members can be user accounts, service accounts,
26486
26460
  # Google groups, and domains (such as G Suite). A `role` is a named list of
26487
- # permissions (defined by IAM or configured by users). A `binding` can
26488
- # optionally specify a `condition`, which is a logic expression that further
26489
- # constrains the role binding based on attributes about the request and/or
26490
- # target resource.
26491
- # **JSON Example**
26461
+ # permissions; each `role` can be an IAM predefined role or a user-created
26462
+ # custom role.
26463
+ # Optionally, a `binding` can specify a `condition`, which is a logical
26464
+ # expression that allows access to a resource only if the expression evaluates
26465
+ # to `true`. A condition can add constraints based on attributes of the request,
26466
+ # the resource, or both.
26467
+ # **JSON example:**
26492
26468
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
26493
26469
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
26494
26470
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
26495
26471
  # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
26496
26472
  # "condition": ` "title": "expirable access", "description": "Does not grant
26497
26473
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
26498
- # 00:00.000Z')", ` ` ] `
26499
- # **YAML Example**
26474
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
26475
+ # **YAML example:**
26500
26476
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
26501
26477
  # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
26502
26478
  # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
26503
26479
  # com role: roles/resourcemanager.organizationViewer condition: title: expirable
26504
26480
  # access description: Does not grant access after Sep 2020 expression: request.
26505
- # time < timestamp('2020-10-01T00:00:00.000Z')
26506
- # For a description of IAM and its features, see the [IAM developer's guide](
26507
- # https://cloud.google.com/iam/docs).
26481
+ # time < timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3
26482
+ # For a description of IAM and its features, see the [IAM documentation](https://
26483
+ # cloud.google.com/iam/docs/).
26508
26484
  # Corresponds to the JSON property `policy`
26509
26485
  # @return [Google::Apis::ComputeAlpha::Policy]
26510
26486
  attr_accessor :policy
@@ -27485,11 +27461,10 @@ module Google
27485
27461
  # @return [Fixnum]
27486
27462
  attr_accessor :availability_domain_count
27487
27463
 
27488
- # Distribution specifies how the instances are placed at host level. If set to
27489
- # SPREAD, no two instances will be put on the same host
27490
- # Corresponds to the JSON property `distribution`
27464
+ # Specifies network collocation
27465
+ # Corresponds to the JSON property `collocation`
27491
27466
  # @return [String]
27492
- attr_accessor :distribution
27467
+ attr_accessor :collocation
27493
27468
 
27494
27469
  # Specifies network locality
27495
27470
  # Corresponds to the JSON property `locality`
@@ -27513,7 +27488,7 @@ module Google
27513
27488
  # Update properties of this object
27514
27489
  def update!(**args)
27515
27490
  @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count)
27516
- @distribution = args[:distribution] if args.key?(:distribution)
27491
+ @collocation = args[:collocation] if args.key?(:collocation)
27517
27492
  @locality = args[:locality] if args.key?(:locality)
27518
27493
  @style = args[:style] if args.key?(:style)
27519
27494
  @vm_count = args[:vm_count] if args.key?(:vm_count)
@@ -29633,6 +29608,12 @@ module Google
29633
29608
  # @return [Fixnum]
29634
29609
  attr_accessor :disk_size_gb
29635
29610
 
29611
+ # [Output Only] URL of the disk type resource. For example: projects/project/
29612
+ # zones/zone/diskTypes/pd-standard or pd-ssd
29613
+ # Corresponds to the JSON property `diskType`
29614
+ # @return [String]
29615
+ attr_accessor :disk_type
29616
+
29636
29617
  # A list of features to enable on the guest operating system. Applicable only
29637
29618
  # for bootable images. Read Enabling guest operating system features to see a
29638
29619
  # list of available options.
@@ -29703,6 +29684,7 @@ module Google
29703
29684
  @device_name = args[:device_name] if args.key?(:device_name)
29704
29685
  @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
29705
29686
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
29687
+ @disk_type = args[:disk_type] if args.key?(:disk_type)
29706
29688
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
29707
29689
  @index = args[:index] if args.key?(:index)
29708
29690
  @interface = args[:interface] if args.key?(:interface)
@@ -30900,6 +30882,11 @@ module Google
30900
30882
  # @return [Fixnum]
30901
30883
  attr_accessor :disk_size_gb
30902
30884
 
30885
+ # [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
30886
+ # Corresponds to the JSON property `downloadBytes`
30887
+ # @return [Fixnum]
30888
+ attr_accessor :download_bytes
30889
+
30903
30890
  # [Output Only] A list of features to enable on the guest operating system.
30904
30891
  # Applicable only for bootable images. Read Enabling guest operating system
30905
30892
  # features to see a list of available options.
@@ -31028,6 +31015,7 @@ module Google
31028
31015
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
31029
31016
  @description = args[:description] if args.key?(:description)
31030
31017
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
31018
+ @download_bytes = args[:download_bytes] if args.key?(:download_bytes)
31031
31019
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
31032
31020
  @id = args[:id] if args.key?(:id)
31033
31021
  @kind = args[:kind] if args.key?(:kind)
@@ -31331,7 +31319,9 @@ module Google
31331
31319
  # This SSL certificate resource also contains a private key. You can use SSL
31332
31320
  # keys and certificates to secure connections to a load balancer. For more
31333
31321
  # information, read Creating and Using SSL Certificates. (== resource_for beta.
31334
- # sslCertificates ==) (== resource_for v1.sslCertificates ==)
31322
+ # sslCertificates ==) (== resource_for v1.sslCertificates ==) (== resource_for
31323
+ # beta.regionSslCertificates ==) (== resource_for v1.regionSslCertificates ==)
31324
+ # Next ID: 17
31335
31325
  class SslCertificate
31336
31326
  include Google::Apis::Core::Hashable
31337
31327
 
@@ -33178,11 +33168,12 @@ module Google
33178
33168
  end
33179
33169
 
33180
33170
  # Represents a Target HTTP Proxy resource.
33181
- # A target HTTP proxy is a component of certain types of load balancers. Global
33182
- # forwarding rules reference a target HTTP proxy, and the target proxy then
33183
- # references a URL map. For more information, read Using Target Proxies. (==
33184
- # resource_for beta.targetHttpProxies ==) (== resource_for v1.targetHttpProxies =
33185
- # =)
33171
+ # A target HTTP proxy is a component of GCP HTTP load balancers. Forwarding
33172
+ # rules reference a target HTTP proxy, and the target proxy then references a
33173
+ # URL map. For more information, read Using Target Proxies and Forwarding rule
33174
+ # concepts. (== resource_for beta.targetHttpProxies ==) (== resource_for v1.
33175
+ # targetHttpProxies ==) (== resource_for beta.regionTargetHttpProxies ==) (==
33176
+ # resource_for v1.regionTargetHttpProxies ==)
33186
33177
  class TargetHttpProxy
33187
33178
  include Google::Apis::Core::Hashable
33188
33179
 
@@ -33635,11 +33626,12 @@ module Google
33635
33626
  end
33636
33627
 
33637
33628
  # Represents a Target HTTPS Proxy resource.
33638
- # A target HTTPS proxy is a component of certain types of load balancers. Global
33639
- # forwarding rules reference a target HTTPS proxy, and the target proxy then
33640
- # references a URL map. For more information, read Using Target Proxies. (==
33641
- # resource_for beta.targetHttpsProxies ==) (== resource_for v1.
33642
- # targetHttpsProxies ==)
33629
+ # A target HTTPS proxy is a component of GCP HTTPS load balancers. Forwarding
33630
+ # rules reference a target HTTPS proxy, and the target proxy then references a
33631
+ # URL map. For more information, read Using Target Proxies and Forwarding rule
33632
+ # concepts. (== resource_for beta.targetHttpsProxies ==) (== resource_for v1.
33633
+ # targetHttpsProxies ==) (== resource_for beta.regionTargetHttpsProxies ==) (==
33634
+ # resource_for v1.regionTargetHttpsProxies ==)
33643
33635
  class TargetHttpsProxy
33644
33636
  include Google::Apis::Core::Hashable
33645
33637
 
@@ -37251,7 +37243,7 @@ module Google
37251
37243
  end
37252
37244
  end
37253
37245
 
37254
- # Represents a VPN gateway resource.
37246
+ # Represents a VPN gateway resource. Next ID: 13
37255
37247
  class VpnGateway
37256
37248
  include Google::Apis::Core::Hashable
37257
37249
 
@@ -38868,32 +38860,34 @@ module Google
38868
38860
  # @return [String]
38869
38861
  attr_accessor :etag
38870
38862
 
38871
- # Defines an Identity and Access Management (IAM) policy. It is used to specify
38872
- # access control policies for Cloud Platform resources.
38863
+ # An Identity and Access Management (IAM) policy, which specifies access
38864
+ # controls for Google Cloud resources.
38873
38865
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
38874
38866
  # members` to a single `role`. Members can be user accounts, service accounts,
38875
38867
  # Google groups, and domains (such as G Suite). A `role` is a named list of
38876
- # permissions (defined by IAM or configured by users). A `binding` can
38877
- # optionally specify a `condition`, which is a logic expression that further
38878
- # constrains the role binding based on attributes about the request and/or
38879
- # target resource.
38880
- # **JSON Example**
38868
+ # permissions; each `role` can be an IAM predefined role or a user-created
38869
+ # custom role.
38870
+ # Optionally, a `binding` can specify a `condition`, which is a logical
38871
+ # expression that allows access to a resource only if the expression evaluates
38872
+ # to `true`. A condition can add constraints based on attributes of the request,
38873
+ # the resource, or both.
38874
+ # **JSON example:**
38881
38875
  # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
38882
38876
  # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
38883
38877
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
38884
38878
  # roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"],
38885
38879
  # "condition": ` "title": "expirable access", "description": "Does not grant
38886
38880
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
38887
- # 00:00.000Z')", ` ` ] `
38888
- # **YAML Example**
38881
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
38882
+ # **YAML example:**
38889
38883
  # bindings: - members: - user:mike@example.com - group:admins@example.com -
38890
38884
  # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
38891
38885
  # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
38892
38886
  # com role: roles/resourcemanager.organizationViewer condition: title: expirable
38893
38887
  # access description: Does not grant access after Sep 2020 expression: request.
38894
- # time < timestamp('2020-10-01T00:00:00.000Z')
38895
- # For a description of IAM and its features, see the [IAM developer's guide](
38896
- # https://cloud.google.com/iam/docs).
38888
+ # time < timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3
38889
+ # For a description of IAM and its features, see the [IAM documentation](https://
38890
+ # cloud.google.com/iam/docs/).
38897
38891
  # Corresponds to the JSON property `policy`
38898
38892
  # @return [Google::Apis::ComputeAlpha::Policy]
38899
38893
  attr_accessor :policy