google-apis-compute_alpha 0.26.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -611,6 +611,13 @@ module Google
611
611
  # @return [String]
612
612
  attr_accessor :ip_version
613
613
 
614
+ # The endpoint type of this address, which should be VM. This is used for
615
+ # deciding which endpoint this address will be assigned to during the IPv6
616
+ # external IP address reservation.
617
+ # Corresponds to the JSON property `ipv6EndpointType`
618
+ # @return [String]
619
+ attr_accessor :ipv6_endpoint_type
620
+
614
621
  # [Output Only] Type of the resource. Always compute#address for addresses.
615
622
  # Corresponds to the JSON property `kind`
616
623
  # @return [String]
@@ -734,6 +741,7 @@ module Google
734
741
  @description = args[:description] if args.key?(:description)
735
742
  @id = args[:id] if args.key?(:id)
736
743
  @ip_version = args[:ip_version] if args.key?(:ip_version)
744
+ @ipv6_endpoint_type = args[:ipv6_endpoint_type] if args.key?(:ipv6_endpoint_type)
737
745
  @kind = args[:kind] if args.key?(:kind)
738
746
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
739
747
  @labels = args[:labels] if args.key?(:labels)
@@ -1298,6 +1306,12 @@ module Google
1298
1306
  class AttachedDisk
1299
1307
  include Google::Apis::Core::Hashable
1300
1308
 
1309
+ # [Output Only] The architecture of the attached disk. Valid values are ARM64 or
1310
+ # X86_64.
1311
+ # Corresponds to the JSON property `architecture`
1312
+ # @return [String]
1313
+ attr_accessor :architecture
1314
+
1301
1315
  # Specifies whether the disk will be auto-deleted when the instance is deleted (
1302
1316
  # but not when the disk is detached from the instance).
1303
1317
  # Corresponds to the JSON property `autoDelete`
@@ -1456,6 +1470,7 @@ module Google
1456
1470
 
1457
1471
  # Update properties of this object
1458
1472
  def update!(**args)
1473
+ @architecture = args[:architecture] if args.key?(:architecture)
1459
1474
  @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
1460
1475
  @boot = args[:boot] if args.key?(:boot)
1461
1476
  @device_name = args[:device_name] if args.key?(:device_name)
@@ -3598,9 +3613,14 @@ module Google
3598
3613
  # @return [Google::Apis::ComputeAlpha::Subsetting]
3599
3614
  attr_accessor :subsetting
3600
3615
 
3601
- # Not supported when the backend service is referenced by a URL map that is
3602
- # bound to target gRPC proxy that has validateForProxyless field set to true.
3603
- # Instead, use maxStreamDuration.
3616
+ # The backend service timeout has a different meaning depending on the type of
3617
+ # load balancer. For more information see, Backend service settings. The default
3618
+ # is 30 seconds. The full range of timeout values allowed goes from 1 through 2,
3619
+ # 147,483,647 seconds. This value can be overridden in the PathMatcher
3620
+ # configuration of the UrlMap that references this backend service. Not
3621
+ # supported when the backend service is referenced by a URL map that is bound to
3622
+ # target gRPC proxy that has validateForProxyless field set to true. Instead,
3623
+ # use maxStreamDuration.
3604
3624
  # Corresponds to the JSON property `timeoutSec`
3605
3625
  # @return [Fixnum]
3606
3626
  attr_accessor :timeout_sec
@@ -5106,14 +5126,18 @@ module Google
5106
5126
  # @return [Google::Apis::ComputeAlpha::Duration]
5107
5127
  attr_accessor :connect_timeout
5108
5128
 
5109
- # Not supported when the backend service is referenced by a URL map that is
5110
- # bound to target gRPC proxy that has validateForProxyless field set to true.
5129
+ # The maximum number of connections to the backend service. If not specified,
5130
+ # there is no limit. Not supported when the backend service is referenced by a
5131
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
5132
+ # set to true.
5111
5133
  # Corresponds to the JSON property `maxConnections`
5112
5134
  # @return [Fixnum]
5113
5135
  attr_accessor :max_connections
5114
5136
 
5115
- # Not supported when the backend service is referenced by a URL map that is
5116
- # bound to target gRPC proxy that has validateForProxyless field set to true.
5137
+ # The maximum number of pending requests allowed to the backend service. If not
5138
+ # specified, there is no limit. Not supported when the backend service is
5139
+ # referenced by a URL map that is bound to target gRPC proxy that has
5140
+ # validateForProxyless field set to true.
5117
5141
  # Corresponds to the JSON property `maxPendingRequests`
5118
5142
  # @return [Fixnum]
5119
5143
  attr_accessor :max_pending_requests
@@ -5124,14 +5148,20 @@ module Google
5124
5148
  # @return [Fixnum]
5125
5149
  attr_accessor :max_requests
5126
5150
 
5127
- # Not supported when the backend service is referenced by a URL map that is
5128
- # bound to target gRPC proxy that has validateForProxyless field set to true.
5151
+ # Maximum requests for a single connection to the backend service. This
5152
+ # parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not
5153
+ # specified, there is no limit. Setting this parameter to 1 will effectively
5154
+ # disable keep alive. Not supported when the backend service is referenced by a
5155
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
5156
+ # set to true.
5129
5157
  # Corresponds to the JSON property `maxRequestsPerConnection`
5130
5158
  # @return [Fixnum]
5131
5159
  attr_accessor :max_requests_per_connection
5132
5160
 
5133
- # Not supported when the backend service is referenced by a URL map that is
5134
- # bound to target gRPC proxy that has validateForProxyless field set to true.
5161
+ # The maximum number of parallel retries allowed to the backend cluster. If not
5162
+ # specified, the default is 1. Not supported when the backend service is
5163
+ # referenced by a URL map that is bound to target gRPC proxy that has
5164
+ # validateForProxyless field set to true.
5135
5165
  # Corresponds to the JSON property `maxRetries`
5136
5166
  # @return [Fixnum]
5137
5167
  attr_accessor :max_retries
@@ -6095,6 +6125,16 @@ module Google
6095
6125
  # @return [String]
6096
6126
  attr_accessor :architecture
6097
6127
 
6128
+ # Disk asynchronously replicated into this disk.
6129
+ # Corresponds to the JSON property `asyncPrimaryDisk`
6130
+ # @return [Google::Apis::ComputeAlpha::DiskAsyncReplication]
6131
+ attr_accessor :async_primary_disk
6132
+
6133
+ # [Output Only] A list of disks this disk is asynchronously replicated to.
6134
+ # Corresponds to the JSON property `asyncSecondaryDisks`
6135
+ # @return [Hash<String,Google::Apis::ComputeAlpha::DiskAsyncReplicationList>]
6136
+ attr_accessor :async_secondary_disks
6137
+
6098
6138
  # [Output Only] Creation timestamp in RFC3339 text format.
6099
6139
  # Corresponds to the JSON property `creationTimestamp`
6100
6140
  # @return [String]
@@ -6270,6 +6310,11 @@ module Google
6270
6310
  # @return [Array<String>]
6271
6311
  attr_accessor :resource_policies
6272
6312
 
6313
+ # [Output Only] Status information for the disk resource.
6314
+ # Corresponds to the JSON property `resourceStatus`
6315
+ # @return [Google::Apis::ComputeAlpha::DiskResourceStatus]
6316
+ attr_accessor :resource_status
6317
+
6273
6318
  # [Output Only] Reserved for future use.
6274
6319
  # Corresponds to the JSON property `satisfiesPzs`
6275
6320
  # @return [Boolean]
@@ -6295,6 +6340,18 @@ module Google
6295
6340
  # @return [Fixnum]
6296
6341
  attr_accessor :size_gb
6297
6342
 
6343
+ # [Output Only] URL of the DiskConsistencyGroupPolicy for a secondary disk that
6344
+ # was created using a consistency group.
6345
+ # Corresponds to the JSON property `sourceConsistencyGroupPolicy`
6346
+ # @return [String]
6347
+ attr_accessor :source_consistency_group_policy
6348
+
6349
+ # [Output Only] ID of the DiskConsistencyGroupPolicy for a secondary disk that
6350
+ # was created using a consistency group.
6351
+ # Corresponds to the JSON property `sourceConsistencyGroupPolicyId`
6352
+ # @return [String]
6353
+ attr_accessor :source_consistency_group_policy_id
6354
+
6298
6355
  # The source disk used to create this disk. You can provide this as a partial or
6299
6356
  # full URL to the resource. For example, the following are valid values: - https:
6300
6357
  # //www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk -
@@ -6445,6 +6502,8 @@ module Google
6445
6502
  # Update properties of this object
6446
6503
  def update!(**args)
6447
6504
  @architecture = args[:architecture] if args.key?(:architecture)
6505
+ @async_primary_disk = args[:async_primary_disk] if args.key?(:async_primary_disk)
6506
+ @async_secondary_disks = args[:async_secondary_disks] if args.key?(:async_secondary_disks)
6448
6507
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
6449
6508
  @description = args[:description] if args.key?(:description)
6450
6509
  @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
@@ -6469,10 +6528,13 @@ module Google
6469
6528
  @region = args[:region] if args.key?(:region)
6470
6529
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
6471
6530
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
6531
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
6472
6532
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
6473
6533
  @self_link = args[:self_link] if args.key?(:self_link)
6474
6534
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
6475
6535
  @size_gb = args[:size_gb] if args.key?(:size_gb)
6536
+ @source_consistency_group_policy = args[:source_consistency_group_policy] if args.key?(:source_consistency_group_policy)
6537
+ @source_consistency_group_policy_id = args[:source_consistency_group_policy_id] if args.key?(:source_consistency_group_policy_id)
6476
6538
  @source_disk = args[:source_disk] if args.key?(:source_disk)
6477
6539
  @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
6478
6540
  @source_image = args[:source_image] if args.key?(:source_image)
@@ -6617,6 +6679,59 @@ module Google
6617
6679
  end
6618
6680
  end
6619
6681
 
6682
+ #
6683
+ class DiskAsyncReplication
6684
+ include Google::Apis::Core::Hashable
6685
+
6686
+ # The other disk asynchronously replicated to or from the current disk. You can
6687
+ # provide this as a partial or full URL to the resource. For example, the
6688
+ # following are valid values: - https://www.googleapis.com/compute/v1/projects/
6689
+ # project/zones/zone /disks/disk - projects/project/zones/zone/disks/disk -
6690
+ # zones/zone/disks/disk
6691
+ # Corresponds to the JSON property `disk`
6692
+ # @return [String]
6693
+ attr_accessor :disk
6694
+
6695
+ # [Output Only] The unique ID of the other disk asynchronously replicated to or
6696
+ # from the current disk. This value identifies the exact disk that was used to
6697
+ # create this replication. For example, if you started replicating the
6698
+ # persistent disk from a disk that was later deleted and recreated under the
6699
+ # same name, the disk ID would identify the exact version of the disk that was
6700
+ # used.
6701
+ # Corresponds to the JSON property `diskId`
6702
+ # @return [String]
6703
+ attr_accessor :disk_id
6704
+
6705
+ def initialize(**args)
6706
+ update!(**args)
6707
+ end
6708
+
6709
+ # Update properties of this object
6710
+ def update!(**args)
6711
+ @disk = args[:disk] if args.key?(:disk)
6712
+ @disk_id = args[:disk_id] if args.key?(:disk_id)
6713
+ end
6714
+ end
6715
+
6716
+ #
6717
+ class DiskAsyncReplicationList
6718
+ include Google::Apis::Core::Hashable
6719
+
6720
+ #
6721
+ # Corresponds to the JSON property `asyncReplicationDisk`
6722
+ # @return [Google::Apis::ComputeAlpha::DiskAsyncReplication]
6723
+ attr_accessor :async_replication_disk
6724
+
6725
+ def initialize(**args)
6726
+ update!(**args)
6727
+ end
6728
+
6729
+ # Update properties of this object
6730
+ def update!(**args)
6731
+ @async_replication_disk = args[:async_replication_disk] if args.key?(:async_replication_disk)
6732
+ end
6733
+ end
6734
+
6620
6735
  # A specification of the desired way to instantiate a disk in the instance
6621
6736
  # template when its created from a source instance.
6622
6737
  class DiskInstantiationConfig
@@ -6815,6 +6930,50 @@ module Google
6815
6930
  end
6816
6931
  end
6817
6932
 
6933
+ #
6934
+ class DiskResourceStatus
6935
+ include Google::Apis::Core::Hashable
6936
+
6937
+ #
6938
+ # Corresponds to the JSON property `asyncPrimaryDisk`
6939
+ # @return [Google::Apis::ComputeAlpha::DiskResourceStatusAsyncReplicationStatus]
6940
+ attr_accessor :async_primary_disk
6941
+
6942
+ # Key: disk, value: AsyncReplicationStatus message
6943
+ # Corresponds to the JSON property `asyncSecondaryDisks`
6944
+ # @return [Hash<String,Google::Apis::ComputeAlpha::DiskResourceStatusAsyncReplicationStatus>]
6945
+ attr_accessor :async_secondary_disks
6946
+
6947
+ def initialize(**args)
6948
+ update!(**args)
6949
+ end
6950
+
6951
+ # Update properties of this object
6952
+ def update!(**args)
6953
+ @async_primary_disk = args[:async_primary_disk] if args.key?(:async_primary_disk)
6954
+ @async_secondary_disks = args[:async_secondary_disks] if args.key?(:async_secondary_disks)
6955
+ end
6956
+ end
6957
+
6958
+ #
6959
+ class DiskResourceStatusAsyncReplicationStatus
6960
+ include Google::Apis::Core::Hashable
6961
+
6962
+ #
6963
+ # Corresponds to the JSON property `state`
6964
+ # @return [String]
6965
+ attr_accessor :state
6966
+
6967
+ def initialize(**args)
6968
+ update!(**args)
6969
+ end
6970
+
6971
+ # Update properties of this object
6972
+ def update!(**args)
6973
+ @state = args[:state] if args.key?(:state)
6974
+ end
6975
+ end
6976
+
6818
6977
  # Represents a Disk Type resource. Google Compute Engine has two Disk Type
6819
6978
  # resources: * [Regional](/compute/docs/reference/rest/alpha/regionDiskTypes) * [
6820
6979
  # Zonal](/compute/docs/reference/rest/alpha/diskTypes) You can choose from a
@@ -7393,6 +7552,79 @@ module Google
7393
7552
  end
7394
7553
  end
7395
7554
 
7555
+ #
7556
+ class DisksStartAsyncReplicationRequest
7557
+ include Google::Apis::Core::Hashable
7558
+
7559
+ # The secondary disk to start asynchronous replication to. You can provide this
7560
+ # as a partial or full URL to the resource. For example, the following are valid
7561
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
7562
+ # disks/disk - https://www.googleapis.com/compute/v1/projects/project/regions/
7563
+ # region /disks/disk - projects/project/zones/zone/disks/disk - projects/project/
7564
+ # regions/region/disks/disk - zones/zone/disks/disk - regions/region/disks/disk
7565
+ # Corresponds to the JSON property `asyncSecondaryDisk`
7566
+ # @return [String]
7567
+ attr_accessor :async_secondary_disk
7568
+
7569
+ def initialize(**args)
7570
+ update!(**args)
7571
+ end
7572
+
7573
+ # Update properties of this object
7574
+ def update!(**args)
7575
+ @async_secondary_disk = args[:async_secondary_disk] if args.key?(:async_secondary_disk)
7576
+ end
7577
+ end
7578
+
7579
+ #
7580
+ class DisksStopAsyncReplicationRequest
7581
+ include Google::Apis::Core::Hashable
7582
+
7583
+ # The secondary disk to stop asynchronous replication to. Supplied if and only
7584
+ # if the target disk is a primary disk in an asynchronously replicated pair. You
7585
+ # can provide this as a partial or full URL to the resource. For example, the
7586
+ # following are valid values: - https://www.googleapis.com/compute/v1/projects/
7587
+ # project/zones/zone /disks/disk - https://www.googleapis.com/compute/v1/
7588
+ # projects/project/regions/region /disks/disk - projects/project/zones/zone/
7589
+ # disks/disk - projects/project/regions/region/disks/disk - zones/zone/disks/
7590
+ # disk - regions/region/disks/disk
7591
+ # Corresponds to the JSON property `asyncSecondaryDisk`
7592
+ # @return [String]
7593
+ attr_accessor :async_secondary_disk
7594
+
7595
+ def initialize(**args)
7596
+ update!(**args)
7597
+ end
7598
+
7599
+ # Update properties of this object
7600
+ def update!(**args)
7601
+ @async_secondary_disk = args[:async_secondary_disk] if args.key?(:async_secondary_disk)
7602
+ end
7603
+ end
7604
+
7605
+ #
7606
+ class DisksStopGroupAsyncReplicationRequest
7607
+ include Google::Apis::Core::Hashable
7608
+
7609
+ # The URL of the DiskConsistencyGroupPolicy for the group of disks to stop. This
7610
+ # may be a full or partial URL, such as: - https://www.googleapis.com/compute/v1/
7611
+ # projects/project/regions/region /resourcePolicies/resourcePolicy - projects/
7612
+ # project/regions/region/resourcePolicies/resourcePolicy - regions/region/
7613
+ # resourcePolicies/resourcePolicy
7614
+ # Corresponds to the JSON property `resourcePolicy`
7615
+ # @return [String]
7616
+ attr_accessor :resource_policy
7617
+
7618
+ def initialize(**args)
7619
+ update!(**args)
7620
+ end
7621
+
7622
+ # Update properties of this object
7623
+ def update!(**args)
7624
+ @resource_policy = args[:resource_policy] if args.key?(:resource_policy)
7625
+ end
7626
+ end
7627
+
7396
7628
  # A set of Display Device options
7397
7629
  class DisplayDevice
7398
7630
  include Google::Apis::Core::Hashable
@@ -8795,6 +9027,12 @@ module Google
8795
9027
  # @return [Fixnum]
8796
9028
  attr_accessor :priority
8797
9029
 
9030
+ # An optional name for the rule. This field is not a unique identifier and can
9031
+ # be updated.
9032
+ # Corresponds to the JSON property `ruleName`
9033
+ # @return [String]
9034
+ attr_accessor :rule_name
9035
+
8798
9036
  # [Output Only] Calculation of the complexity of a single firewall policy rule.
8799
9037
  # Corresponds to the JSON property `ruleTupleCount`
8800
9038
  # @return [Fixnum]
@@ -8839,6 +9077,7 @@ module Google
8839
9077
  @kind = args[:kind] if args.key?(:kind)
8840
9078
  @match = args[:match] if args.key?(:match)
8841
9079
  @priority = args[:priority] if args.key?(:priority)
9080
+ @rule_name = args[:rule_name] if args.key?(:rule_name)
8842
9081
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8843
9082
  @target_resources = args[:target_resources] if args.key?(:target_resources)
8844
9083
  @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
@@ -8877,6 +9116,12 @@ module Google
8877
9116
  # @return [Array<String>]
8878
9117
  attr_accessor :dest_region_codes
8879
9118
 
9119
+ # Names of Network Threat Intelligence lists. The IPs in these lists will be
9120
+ # matched against traffic destination.
9121
+ # Corresponds to the JSON property `destThreatIntelligences`
9122
+ # @return [Array<String>]
9123
+ attr_accessor :dest_threat_intelligences
9124
+
8880
9125
  # Pairs of IP protocols and ports that the rule should match.
8881
9126
  # Corresponds to the JSON property `layer4Configs`
8882
9127
  # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRuleMatcherLayer4Config>]
@@ -8914,6 +9159,12 @@ module Google
8914
9159
  # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRuleSecureTag>]
8915
9160
  attr_accessor :src_secure_tags
8916
9161
 
9162
+ # Names of Network Threat Intelligence lists. The IPs in these lists will be
9163
+ # matched against traffic source.
9164
+ # Corresponds to the JSON property `srcThreatIntelligences`
9165
+ # @return [Array<String>]
9166
+ attr_accessor :src_threat_intelligences
9167
+
8917
9168
  def initialize(**args)
8918
9169
  update!(**args)
8919
9170
  end
@@ -8924,12 +9175,14 @@ module Google
8924
9175
  @dest_fqdns = args[:dest_fqdns] if args.key?(:dest_fqdns)
8925
9176
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8926
9177
  @dest_region_codes = args[:dest_region_codes] if args.key?(:dest_region_codes)
9178
+ @dest_threat_intelligences = args[:dest_threat_intelligences] if args.key?(:dest_threat_intelligences)
8927
9179
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8928
9180
  @src_address_groups = args[:src_address_groups] if args.key?(:src_address_groups)
8929
9181
  @src_fqdns = args[:src_fqdns] if args.key?(:src_fqdns)
8930
9182
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8931
9183
  @src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes)
8932
9184
  @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
9185
+ @src_threat_intelligences = args[:src_threat_intelligences] if args.key?(:src_threat_intelligences)
8933
9186
  end
8934
9187
  end
8935
9188
 
@@ -9228,6 +9481,14 @@ module Google
9228
9481
  # @return [String]
9229
9482
  attr_accessor :network_tier
9230
9483
 
9484
+ # This is used in PSC consumer ForwardingRule to control whether it should try
9485
+ # to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use this
9486
+ # field.
9487
+ # Corresponds to the JSON property `noAutomateDnsZone`
9488
+ # @return [Boolean]
9489
+ attr_accessor :no_automate_dns_zone
9490
+ alias_method :no_automate_dns_zone?, :no_automate_dns_zone
9491
+
9231
9492
  # This field can be used only if: - Load balancing scheme is one of EXTERNAL,
9232
9493
  # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or
9233
9494
  # SCTP. Packets addressed to ports in the specified range will be forwarded to
@@ -9355,6 +9616,7 @@ module Google
9355
9616
  @name = args[:name] if args.key?(:name)
9356
9617
  @network = args[:network] if args.key?(:network)
9357
9618
  @network_tier = args[:network_tier] if args.key?(:network_tier)
9619
+ @no_automate_dns_zone = args[:no_automate_dns_zone] if args.key?(:no_automate_dns_zone)
9358
9620
  @port_range = args[:port_range] if args.key?(:port_range)
9359
9621
  @ports = args[:ports] if args.key?(:ports)
9360
9622
  @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
@@ -9780,7 +10042,8 @@ module Google
9780
10042
  # @return [Fixnum]
9781
10043
  attr_accessor :id
9782
10044
 
9783
- #
10045
+ # [Output Only] Type of the resource. Always compute#futureReservation for
10046
+ # future reservations.
9784
10047
  # Corresponds to the JSON property `kind`
9785
10048
  # @return [String]
9786
10049
  attr_accessor :kind
@@ -9982,7 +10245,9 @@ module Google
9982
10245
  # @return [Hash<String,Google::Apis::ComputeAlpha::FutureReservationsScopedList>]
9983
10246
  attr_accessor :items
9984
10247
 
9985
- #
10248
+ # [Output Only] Type of resource. Always compute#
10249
+ # futureReservationsAggregatedListResponse for future resevation aggregated list
10250
+ # response.
9986
10251
  # Corresponds to the JSON property `kind`
9987
10252
  # @return [String]
9988
10253
  attr_accessor :kind
@@ -10112,7 +10377,8 @@ module Google
10112
10377
  # @return [Array<Google::Apis::ComputeAlpha::FutureReservation>]
10113
10378
  attr_accessor :items
10114
10379
 
10115
- #
10380
+ # [Output Only] Type of resource.Always compute#FutureReservationsListResponse
10381
+ # for lists of reservations
10116
10382
  # Corresponds to the JSON property `kind`
10117
10383
  # @return [String]
10118
10384
  attr_accessor :kind
@@ -10720,8 +10986,8 @@ module Google
10720
10986
  # The ID of a supported feature. To add multiple values, use commas to separate
10721
10987
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
10722
10988
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
10723
- # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
10724
- # guest operating system features.
10989
+ # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_SNP_CAPABLE For more information,
10990
+ # see Enabling guest operating system features.
10725
10991
  # Corresponds to the JSON property `type`
10726
10992
  # @return [String]
10727
10993
  attr_accessor :type
@@ -14536,8 +14802,8 @@ module Google
14536
14802
  # Assigns a name to a port number. For example: `name: "http", port: 80` This
14537
14803
  # allows the system to reference ports by the assigned name instead of a port
14538
14804
  # number. Named ports can also contain multiple ports. For example: [`name: "
14539
- # http", port: 80`,`name: "http", port: 8080`] Named ports apply to all
14540
- # instances in this instance group.
14805
+ # app1", port: 8080`, `name: "app1", port: 8081`, `name: "app2", port: 8082`]
14806
+ # Named ports apply to all instances in this instance group.
14541
14807
  # Corresponds to the JSON property `namedPorts`
14542
14808
  # @return [Array<Google::Apis::ComputeAlpha::NamedPort>]
14543
14809
  attr_accessor :named_ports
@@ -14948,6 +15214,12 @@ module Google
14948
15214
  # @return [String]
14949
15215
  attr_accessor :kind
14950
15216
 
15217
+ # Pagination behavior of listManagedInstances API method for this Managed
15218
+ # Instance Group.
15219
+ # Corresponds to the JSON property `listManagedInstancesResults`
15220
+ # @return [String]
15221
+ attr_accessor :list_managed_instances_results
15222
+
14951
15223
  # The name of the managed instance group. The name must be 1-63 characters long,
14952
15224
  # and comply with RFC1035.
14953
15225
  # Corresponds to the JSON property `name`
@@ -15072,6 +15344,7 @@ module Google
15072
15344
  @instance_lifecycle_policy = args[:instance_lifecycle_policy] if args.key?(:instance_lifecycle_policy)
15073
15345
  @instance_template = args[:instance_template] if args.key?(:instance_template)
15074
15346
  @kind = args[:kind] if args.key?(:kind)
15347
+ @list_managed_instances_results = args[:list_managed_instances_results] if args.key?(:list_managed_instances_results)
15075
15348
  @name = args[:name] if args.key?(:name)
15076
15349
  @named_ports = args[:named_ports] if args.key?(:named_ports)
15077
15350
  @region = args[:region] if args.key?(:region)
@@ -17803,7 +18076,8 @@ module Google
17803
18076
  # @return [String]
17804
18077
  attr_accessor :short_name
17805
18078
 
17806
- # [Output Only] The type of the firewall policy.
18079
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
18080
+ # NETWORK, NETWORK_REGIONAL.
17807
18081
  # Corresponds to the JSON property `type`
17808
18082
  # @return [String]
17809
18083
  attr_accessor :type
@@ -18186,8 +18460,7 @@ module Google
18186
18460
  attr_accessor :disk_size_gb
18187
18461
 
18188
18462
  # Whether to attempt an application consistent instant snapshot by informing the
18189
- # OS to prepare for the snapshot process. Currently only supported on Windows
18190
- # instances using the Volume Shadow Copy Service (VSS).
18463
+ # OS to prepare for the snapshot process.
18191
18464
  # Corresponds to the JSON property `guestFlush`
18192
18465
  # @return [Boolean]
18193
18466
  attr_accessor :guest_flush
@@ -19034,13 +19307,7 @@ module Google
19034
19307
  # @return [String]
19035
19308
  attr_accessor :bandwidth
19036
19309
 
19037
- # Up to 16 candidate prefixes that control the allocation of
19038
- # cloudRouterIpv6Address and customerRouterIpv6Address for this attachment. Each
19039
- # prefix must be in the Global Unique Address (GUA) space. It is highly
19040
- # recommended that it be in a range owned by the requestor. A GUA in a range
19041
- # owned by Google will cause the request to fail. Google will select an
19042
- # available prefix from the supplied candidates or fail the request. If not
19043
- # supplied, a /125 from a Google-owned GUA block will be selected.
19310
+ # This field is not available.
19044
19311
  # Corresponds to the JSON property `candidateIpv6Subnets`
19045
19312
  # @return [Array<String>]
19046
19313
  attr_accessor :candidate_ipv6_subnets
@@ -19068,10 +19335,7 @@ module Google
19068
19335
  # @return [String]
19069
19336
  attr_accessor :cloud_router_ipv6_address
19070
19337
 
19071
- # If supplied, the interface id (index within the subnet) to be used for the
19072
- # cloud router address. The id must be in the range of 1 to 6. If a subnet mask
19073
- # is supplied, it must be /125, and the subnet should either be 0 or match the
19074
- # selected subnet.
19338
+ # This field is not available.
19075
19339
  # Corresponds to the JSON property `cloudRouterIpv6InterfaceId`
19076
19340
  # @return [String]
19077
19341
  attr_accessor :cloud_router_ipv6_interface_id
@@ -19093,18 +19357,14 @@ module Google
19093
19357
  # @return [String]
19094
19358
  attr_accessor :customer_router_ipv6_address
19095
19359
 
19096
- # If supplied, the interface id (index within the subnet) to be used for the
19097
- # customer router address. The id must be in the range of 1 to 6. If a subnet
19098
- # mask is supplied, it must be /125, and the subnet should either be 0 or match
19099
- # the selected subnet.
19360
+ # This field is not available.
19100
19361
  # Corresponds to the JSON property `customerRouterIpv6InterfaceId`
19101
19362
  # @return [String]
19102
19363
  attr_accessor :customer_router_ipv6_interface_id
19103
19364
 
19104
- # [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
19105
- # ] Dataplane version for this InterconnectAttachment. This field is only
19106
- # present for Dataplane version 2 and higher. Absence of this field in the API
19107
- # output indicates that the Dataplane is version 1.
19365
+ # [Output Only] Dataplane version for this InterconnectAttachment. This field is
19366
+ # only present for Dataplane version 2 and higher. Absence of this field in the
19367
+ # API output indicates that the Dataplane is version 1.
19108
19368
  # Corresponds to the JSON property `dataplaneVersion`
19109
19369
  # @return [Fixnum]
19110
19370
  attr_accessor :dataplane_version
@@ -21490,6 +21750,11 @@ module Google
21490
21750
  class LocationPolicyLocation
21491
21751
  include Google::Apis::Core::Hashable
21492
21752
 
21753
+ # Per-zone constraints on location policy for this zone.
21754
+ # Corresponds to the JSON property `constraints`
21755
+ # @return [Google::Apis::ComputeAlpha::LocationPolicyLocationConstraints]
21756
+ attr_accessor :constraints
21757
+
21493
21758
  # Preference for a given location.
21494
21759
  # Corresponds to the JSON property `preference`
21495
21760
  # @return [String]
@@ -21501,10 +21766,31 @@ module Google
21501
21766
 
21502
21767
  # Update properties of this object
21503
21768
  def update!(**args)
21769
+ @constraints = args[:constraints] if args.key?(:constraints)
21504
21770
  @preference = args[:preference] if args.key?(:preference)
21505
21771
  end
21506
21772
  end
21507
21773
 
21774
+ # Per-zone constraints on location policy for this zone.
21775
+ class LocationPolicyLocationConstraints
21776
+ include Google::Apis::Core::Hashable
21777
+
21778
+ # Maximum number of items that are allowed to be placed in this zone. The value
21779
+ # must be non-negative.
21780
+ # Corresponds to the JSON property `maxCount`
21781
+ # @return [Fixnum]
21782
+ attr_accessor :max_count
21783
+
21784
+ def initialize(**args)
21785
+ update!(**args)
21786
+ end
21787
+
21788
+ # Update properties of this object
21789
+ def update!(**args)
21790
+ @max_count = args[:max_count] if args.key?(:max_count)
21791
+ end
21792
+ end
21793
+
21508
21794
  # This is deprecated and has no effect. Do not use.
21509
21795
  class LogConfig
21510
21796
  include Google::Apis::Core::Hashable
@@ -21656,8 +21942,7 @@ module Google
21656
21942
  attr_accessor :description
21657
21943
 
21658
21944
  # [Input Only] Whether to attempt an application consistent machine image by
21659
- # informing the OS to prepare for the snapshot process. Currently only supported
21660
- # on Windows instances using the Volume Shadow Copy Service (VSS).
21945
+ # informing the OS to prepare for the snapshot process.
21661
21946
  # Corresponds to the JSON property `guestFlush`
21662
21947
  # @return [Boolean]
21663
21948
  attr_accessor :guest_flush
@@ -21920,6 +22205,11 @@ module Google
21920
22205
  # @return [Array<Google::Apis::ComputeAlpha::MachineType::Accelerator>]
21921
22206
  attr_accessor :accelerators
21922
22207
 
22208
+ # [Output Only] The architecture of the machine type.
22209
+ # Corresponds to the JSON property `architecture`
22210
+ # @return [String]
22211
+ attr_accessor :architecture
22212
+
21923
22213
  # [Output Only] Creation timestamp in RFC3339 text format.
21924
22214
  # Corresponds to the JSON property `creationTimestamp`
21925
22215
  # @return [String]
@@ -22003,6 +22293,7 @@ module Google
22003
22293
  # Update properties of this object
22004
22294
  def update!(**args)
22005
22295
  @accelerators = args[:accelerators] if args.key?(:accelerators)
22296
+ @architecture = args[:architecture] if args.key?(:architecture)
22006
22297
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
22007
22298
  @deprecated = args[:deprecated] if args.key?(:deprecated)
22008
22299
  @description = args[:description] if args.key?(:description)
@@ -22950,7 +23241,9 @@ module Google
22950
23241
  # @return [String]
22951
23242
  attr_accessor :name
22952
23243
 
22953
- #
23244
+ # The network firewall policy enforcement order. Can be either
23245
+ # AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
23246
+ # AFTER_CLASSIC_FIREWALL if the field is not specified.
22954
23247
  # Corresponds to the JSON property `networkFirewallPolicyEnforcementOrder`
22955
23248
  # @return [String]
22956
23249
  attr_accessor :network_firewall_policy_enforcement_order
@@ -23050,7 +23343,8 @@ module Google
23050
23343
  # @return [Fixnum]
23051
23344
  attr_accessor :id
23052
23345
 
23053
- #
23346
+ # [Output only] Type of the resource. Always compute#networkEdgeSecurityService
23347
+ # for NetworkEdgeSecurityServices
23054
23348
  # Corresponds to the JSON property `kind`
23055
23349
  # @return [String]
23056
23350
  attr_accessor :kind
@@ -23126,7 +23420,9 @@ module Google
23126
23420
  # @return [Hash<String,Google::Apis::ComputeAlpha::NetworkEdgeSecurityServicesScopedList>]
23127
23421
  attr_accessor :items
23128
23422
 
23129
- #
23423
+ # [Output Only] Type of resource. Always compute#
23424
+ # networkEdgeSecurityServiceAggregatedList for lists of Network Edge Security
23425
+ # Services.
23130
23426
  # Corresponds to the JSON property `kind`
23131
23427
  # @return [String]
23132
23428
  attr_accessor :kind
@@ -23467,8 +23763,8 @@ module Google
23467
23763
  attr_accessor :network
23468
23764
 
23469
23765
  # Type of network endpoints in this network endpoint group. Can be one of
23470
- # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
23471
- # SERVERLESS, PRIVATE_SERVICE_CONNECT.
23766
+ # GCE_VM_IP, GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT,
23767
+ # INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT.
23472
23768
  # Corresponds to the JSON property `networkEndpointType`
23473
23769
  # @return [String]
23474
23770
  attr_accessor :network_endpoint_type
@@ -23776,13 +24072,13 @@ module Google
23776
24072
  # @return [String]
23777
24073
  attr_accessor :tag
23778
24074
 
23779
- # A template to parse service and tag fields from a request URL. URL mask allows
23780
- # for routing to multiple Run services without having to create multiple network
23781
- # endpoint groups and backend services. For example, request URLs "foo1.domain.
23782
- # com/bar1" and "foo1.domain.com/bar2" can be backed by the same Serverless
23783
- # Network Endpoint Group (NEG) with URL mask ".domain.com/". The URL mask will
23784
- # parse them to ` service="bar1", tag="foo1" ` and ` service="bar2", tag="foo2" `
23785
- # respectively.
24075
+ # A template to parse <service> and <tag> fields from a request URL. URL mask
24076
+ # allows for routing to multiple Run services without having to create multiple
24077
+ # network endpoint groups and backend services. For example, request URLs "foo1.
24078
+ # domain.com/bar1" and "foo1.domain.com/bar2" can be backed by the same
24079
+ # Serverless Network Endpoint Group (NEG) with URL mask "<tag>.domain.com/<
24080
+ # service>". The URL mask will parse them to ` service="bar1", tag="foo1" ` and `
24081
+ # service="bar2", tag="foo2" ` respectively.
23786
24082
  # Corresponds to the JSON property `urlMask`
23787
24083
  # @return [String]
23788
24084
  attr_accessor :url_mask
@@ -24385,7 +24681,8 @@ module Google
24385
24681
  attr_accessor :kind
24386
24682
 
24387
24683
  # [Output Only] The name of the network interface, which is generated by the
24388
- # server. For network devices, these are eth0, eth1, etc.
24684
+ # server. For a VM, the network interface uses the nicN naming format. Where N
24685
+ # is a value between 0 and 7. The default interface value is nic0.
24389
24686
  # Corresponds to the JSON property `name`
24390
24687
  # @return [String]
24391
24688
  attr_accessor :name
@@ -29638,6 +29935,16 @@ module Google
29638
29935
  # @return [String]
29639
29936
  attr_accessor :name
29640
29937
 
29938
+ # Specifies how child public delegated prefix will be scoped. It could be one of
29939
+ # following values: - `REGIONAL`: The public delegated prefix is regional only.
29940
+ # The provisioning will take a few minutes. - `GLOBAL`: The public delegated
29941
+ # prefix is global only. The provisioning will take ~4 weeks. - `
29942
+ # GLOBAL_AND_REGIONAL` [output only]: The public delegated prefixes is BYOIP V1
29943
+ # legacy prefix. This is output only value and no longer supported in BYOIP V2.
29944
+ # Corresponds to the JSON property `pdpScope`
29945
+ # @return [String]
29946
+ attr_accessor :pdp_scope
29947
+
29641
29948
  # [Output Only] The list of public delegated prefixes that exist for this public
29642
29949
  # advertised prefix.
29643
29950
  # Corresponds to the JSON property `publicDelegatedPrefixs`
@@ -29684,6 +29991,7 @@ module Google
29684
29991
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
29685
29992
  @kind = args[:kind] if args.key?(:kind)
29686
29993
  @name = args[:name] if args.key?(:name)
29994
+ @pdp_scope = args[:pdp_scope] if args.key?(:pdp_scope)
29687
29995
  @public_delegated_prefixs = args[:public_delegated_prefixs] if args.key?(:public_delegated_prefixs)
29688
29996
  @self_link = args[:self_link] if args.key?(:self_link)
29689
29997
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -30884,6 +31192,79 @@ module Google
30884
31192
  end
30885
31193
  end
30886
31194
 
31195
+ #
31196
+ class RegionDisksStartAsyncReplicationRequest
31197
+ include Google::Apis::Core::Hashable
31198
+
31199
+ # The secondary disk to start asynchronous replication to. You can provide this
31200
+ # as a partial or full URL to the resource. For example, the following are valid
31201
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
31202
+ # disks/disk - https://www.googleapis.com/compute/v1/projects/project/regions/
31203
+ # region /disks/disk - projects/project/zones/zone/disks/disk - projects/project/
31204
+ # regions/region/disks/disk - zones/zone/disks/disk - regions/region/disks/disk
31205
+ # Corresponds to the JSON property `asyncSecondaryDisk`
31206
+ # @return [String]
31207
+ attr_accessor :async_secondary_disk
31208
+
31209
+ def initialize(**args)
31210
+ update!(**args)
31211
+ end
31212
+
31213
+ # Update properties of this object
31214
+ def update!(**args)
31215
+ @async_secondary_disk = args[:async_secondary_disk] if args.key?(:async_secondary_disk)
31216
+ end
31217
+ end
31218
+
31219
+ #
31220
+ class RegionDisksStopAsyncReplicationRequest
31221
+ include Google::Apis::Core::Hashable
31222
+
31223
+ # The secondary disk to stop asynchronous replication to. Supplied if and only
31224
+ # if the target disk is a primary disk in an asynchronously replicated pair. You
31225
+ # can provide this as a partial or full URL to the resource. For example, the
31226
+ # following are valid values: - https://www.googleapis.com/compute/v1/projects/
31227
+ # project/zones/zone /disks/disk - https://www.googleapis.com/compute/v1/
31228
+ # projects/project/regions/region /disks/disk - projects/project/zones/zone/
31229
+ # disks/disk - projects/project/regions/region/disks/disk - zones/zone/disks/
31230
+ # disk - regions/region/disks/disk
31231
+ # Corresponds to the JSON property `asyncSecondaryDisk`
31232
+ # @return [String]
31233
+ attr_accessor :async_secondary_disk
31234
+
31235
+ def initialize(**args)
31236
+ update!(**args)
31237
+ end
31238
+
31239
+ # Update properties of this object
31240
+ def update!(**args)
31241
+ @async_secondary_disk = args[:async_secondary_disk] if args.key?(:async_secondary_disk)
31242
+ end
31243
+ end
31244
+
31245
+ #
31246
+ class RegionDisksStopGroupAsyncReplicationRequest
31247
+ include Google::Apis::Core::Hashable
31248
+
31249
+ # The URL of the DiskConsistencyGroupPolicy for the group of disks to stop. This
31250
+ # may be a full or partial URL, such as: - https://www.googleapis.com/compute/v1/
31251
+ # projects/project/regions/region /resourcePolicies/resourcePolicy - projects/
31252
+ # project/regions/region/resourcePolicies/resourcePolicy - regions/region/
31253
+ # resourcePolicies/resourcePolicy
31254
+ # Corresponds to the JSON property `resourcePolicy`
31255
+ # @return [String]
31256
+ attr_accessor :resource_policy
31257
+
31258
+ def initialize(**args)
31259
+ update!(**args)
31260
+ end
31261
+
31262
+ # Update properties of this object
31263
+ def update!(**args)
31264
+ @resource_policy = args[:resource_policy] if args.key?(:resource_policy)
31265
+ end
31266
+ end
31267
+
30887
31268
  # Contains a list of InstanceGroup resources.
30888
31269
  class RegionInstanceGroupList
30889
31270
  include Google::Apis::Core::Hashable
@@ -32059,7 +32440,8 @@ module Google
32059
32440
  # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRule>]
32060
32441
  attr_accessor :rules
32061
32442
 
32062
- # [Output Only] The type of the firewall policy.
32443
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
32444
+ # NETWORK, NETWORK_REGIONAL.
32063
32445
  # Corresponds to the JSON property `type`
32064
32446
  # @return [String]
32065
32447
  attr_accessor :type
@@ -33142,8 +33524,8 @@ module Google
33142
33524
  class ResourcePolicyDailyCycle
33143
33525
  include Google::Apis::Core::Hashable
33144
33526
 
33145
- # Defines a schedule with units measured in months. The value determines how
33146
- # many months pass between the start of each cycle.
33527
+ # Defines a schedule with units measured in days. The value determines how many
33528
+ # days pass between the start of each cycle.
33147
33529
  # Corresponds to the JSON property `daysInCycle`
33148
33530
  # @return [Fixnum]
33149
33531
  attr_accessor :days_in_cycle
@@ -34800,7 +35182,7 @@ module Google
34800
35182
  # Cloud Router will initiate the BFD session for this BGP peer. If set to
34801
35183
  # PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD
34802
35184
  # session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP
34803
- # peer. The default is PASSIVE.
35185
+ # peer. The default is DISABLED.
34804
35186
  # Corresponds to the JSON property `sessionInitializationMode`
34805
35187
  # @return [String]
34806
35188
  attr_accessor :session_initialization_mode
@@ -35101,6 +35483,12 @@ module Google
35101
35483
  attr_accessor :enable_endpoint_independent_mapping
35102
35484
  alias_method :enable_endpoint_independent_mapping?, :enable_endpoint_independent_mapping
35103
35485
 
35486
+ # List of Natted endpoint types supported by the Nat Gateway. If the list is
35487
+ # empty, then it will be equivalent to include ENDPOINT_TYPE_VM
35488
+ # Corresponds to the JSON property `endpointTypes`
35489
+ # @return [Array<String>]
35490
+ attr_accessor :endpoint_types
35491
+
35104
35492
  # Timeout (in seconds) for ICMP connections. Defaults to 30s if not set.
35105
35493
  # Corresponds to the JSON property `icmpIdleTimeoutSec`
35106
35494
  # @return [Fixnum]
@@ -35214,6 +35602,7 @@ module Google
35214
35602
  @drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
35215
35603
  @enable_dynamic_port_allocation = args[:enable_dynamic_port_allocation] if args.key?(:enable_dynamic_port_allocation)
35216
35604
  @enable_endpoint_independent_mapping = args[:enable_endpoint_independent_mapping] if args.key?(:enable_endpoint_independent_mapping)
35605
+ @endpoint_types = args[:endpoint_types] if args.key?(:endpoint_types)
35217
35606
  @icmp_idle_timeout_sec = args[:icmp_idle_timeout_sec] if args.key?(:icmp_idle_timeout_sec)
35218
35607
  @log_config = args[:log_config] if args.key?(:log_config)
35219
35608
  @max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
@@ -35501,7 +35890,8 @@ module Google
35501
35890
  # @return [String]
35502
35891
  attr_accessor :router_appliance_instance
35503
35892
 
35504
- # BGP state as specified in RFC1771.
35893
+ # The state of the BGP session. For a list of possible values for this field,
35894
+ # see BGP session states.
35505
35895
  # Corresponds to the JSON property `state`
35506
35896
  # @return [String]
35507
35897
  attr_accessor :state
@@ -36758,13 +37148,17 @@ module Google
36758
37148
  # @return [String]
36759
37149
  attr_accessor :self_link_with_id
36760
37150
 
36761
- # The type indicates the intended use of the security policy. CLOUD_ARMOR -
37151
+ # The type indicates the intended use of the security policy. - CLOUD_ARMOR:
36762
37152
  # Cloud Armor backend security policies can be configured to filter incoming
36763
37153
  # HTTP requests targeting backend services. They filter requests before they hit
36764
- # the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
37154
+ # the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can
36765
37155
  # be configured to filter incoming HTTP requests targeting backend services (
36766
37156
  # including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
36767
- # filter requests before the request is served from Google's cache.
37157
+ # filter requests before the request is served from Google's cache. -
37158
+ # CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be
37159
+ # configured to filter HTTP requests targeting services managed by Traffic
37160
+ # Director in a service mesh. They filter requests before the request is served
37161
+ # from the application. This field can be set only at resource creation time.
36768
37162
  # Corresponds to the JSON property `type`
36769
37163
  # @return [String]
36770
37164
  attr_accessor :type
@@ -37204,6 +37598,11 @@ module Google
37204
37598
  # @return [String]
37205
37599
  attr_accessor :redirect_target
37206
37600
 
37601
+ # [Output Only] The minimum managed protection tier required for this rule.
37602
+ # Corresponds to the JSON property `ruleManagedProtectionTier`
37603
+ # @return [String]
37604
+ attr_accessor :rule_managed_protection_tier
37605
+
37207
37606
  # Identifier for the rule. This is only unique within the given security policy.
37208
37607
  # This can only be set during rule creation, if rule number is not specified it
37209
37608
  # will be generated by the server.
@@ -37249,6 +37648,7 @@ module Google
37249
37648
  @rate_limit_options = args[:rate_limit_options] if args.key?(:rate_limit_options)
37250
37649
  @redirect_options = args[:redirect_options] if args.key?(:redirect_options)
37251
37650
  @redirect_target = args[:redirect_target] if args.key?(:redirect_target)
37651
+ @rule_managed_protection_tier = args[:rule_managed_protection_tier] if args.key?(:rule_managed_protection_tier)
37252
37652
  @rule_number = args[:rule_number] if args.key?(:rule_number)
37253
37653
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
37254
37654
  @target_resources = args[:target_resources] if args.key?(:target_resources)
@@ -37490,10 +37890,11 @@ module Google
37490
37890
  # present in the request, the key type defaults to ALL. - XFF_IP: The first IP
37491
37891
  # address (i.e. the originating client IP address) specified in the list of IPs
37492
37892
  # under X-Forwarded-For HTTP header. If no such header is present or the value
37493
- # is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
37494
- # the HTTP cookie whose name is configured under "enforce_on_key_name". The key
37495
- # value is truncated to the first 128 bytes of the cookie value. If no such
37496
- # cookie is present in the request, the key type defaults to ALL.
37893
+ # is not a valid IP, the key defaults to the source IP address of the request i.
37894
+ # e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is
37895
+ # configured under "enforce_on_key_name". The key value is truncated to the
37896
+ # first 128 bytes of the cookie value. If no such cookie is present in the
37897
+ # request, the key type defaults to ALL.
37497
37898
  # Corresponds to the JSON property `enforceOnKey`
37498
37899
  # @return [String]
37499
37900
  attr_accessor :enforce_on_key
@@ -37507,9 +37908,9 @@ module Google
37507
37908
 
37508
37909
  # Action to take for requests that are above the configured rate limit threshold,
37509
37910
  # to either deny with a specified HTTP response code, or redirect to a
37510
- # different endpoint. Valid options are "deny()" where valid values for status
37511
- # are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
37512
- # from exceed_redirect_options below.
37911
+ # different endpoint. Valid options are "deny(status)", where valid values for
37912
+ # status are 403, 404, 429, and 502, and "redirect" where the redirect
37913
+ # parameters come from exceedRedirectOptions below.
37513
37914
  # Corresponds to the JSON property `exceedAction`
37514
37915
  # @return [String]
37515
37916
  attr_accessor :exceed_action
@@ -38735,8 +39136,7 @@ module Google
38735
39136
  attr_accessor :download_bytes
38736
39137
 
38737
39138
  # [Input Only] Whether to attempt an application consistent snapshot by
38738
- # informing the OS to prepare for the snapshot process. Currently only supported
38739
- # on Windows instances using the Volume Shadow Copy Service (VSS).
39139
+ # informing the OS to prepare for the snapshot process.
38740
39140
  # Corresponds to the JSON property `guestFlush`
38741
39141
  # @return [Boolean]
38742
39142
  attr_accessor :guest_flush
@@ -38878,6 +39278,16 @@ module Google
38878
39278
  # @return [String]
38879
39279
  attr_accessor :source_instant_snapshot_id
38880
39280
 
39281
+ # [Output Only] URL of the resource policy which created this scheduled snapshot.
39282
+ # Corresponds to the JSON property `sourceSnapshotSchedulePolicy`
39283
+ # @return [String]
39284
+ attr_accessor :source_snapshot_schedule_policy
39285
+
39286
+ # [Output Only] ID of the resource policy which created this scheduled snapshot.
39287
+ # Corresponds to the JSON property `sourceSnapshotSchedulePolicyId`
39288
+ # @return [String]
39289
+ attr_accessor :source_snapshot_schedule_policy_id
39290
+
38881
39291
  # [Output Only] The status of the snapshot. This can be CREATING, DELETING,
38882
39292
  # FAILED, READY, or UPLOADING.
38883
39293
  # Corresponds to the JSON property `status`
@@ -38943,6 +39353,8 @@ module Google
38943
39353
  @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
38944
39354
  @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
38945
39355
  @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
39356
+ @source_snapshot_schedule_policy = args[:source_snapshot_schedule_policy] if args.key?(:source_snapshot_schedule_policy)
39357
+ @source_snapshot_schedule_policy_id = args[:source_snapshot_schedule_policy_id] if args.key?(:source_snapshot_schedule_policy_id)
38946
39358
  @status = args[:status] if args.key?(:status)
38947
39359
  @storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
38948
39360
  @storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
@@ -40542,6 +40954,13 @@ module Google
40542
40954
  # @return [Fixnum]
40543
40955
  attr_accessor :id
40544
40956
 
40957
+ # [Output Only] The range of internal IPv6 addresses that are owned by this
40958
+ # subnetwork. Note this is for general VM to VM communication, not to be
40959
+ # confused with the ipv6_cidr_range field.
40960
+ # Corresponds to the JSON property `internalIpv6Prefix`
40961
+ # @return [String]
40962
+ attr_accessor :internal_ipv6_prefix
40963
+
40545
40964
  # The range of internal addresses that are owned by this subnetwork. Provide
40546
40965
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
40547
40966
  # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
@@ -40677,9 +41096,10 @@ module Google
40677
41096
  # @return [String]
40678
41097
  attr_accessor :self_link_with_id
40679
41098
 
40680
- # The stack type for this subnet to identify whether the IPv6 feature is enabled
40681
- # or not. If not specified IPV4_ONLY will be used. This field can be both set at
40682
- # resource creation time and updated using patch.
41099
+ # The stack type for the subnet. If set to IPV4_ONLY, new VMs in the subnet are
41100
+ # assigned IPv4 addresses only. If set to IPV4_IPV6, new VMs in the subnet can
41101
+ # be assigned both IPv4 and IPv6 addresses. If not specified, IPV4_ONLY is used.
41102
+ # This field can be both set at resource creation time and updated using patch.
40683
41103
  # Corresponds to the JSON property `stackType`
40684
41104
  # @return [String]
40685
41105
  attr_accessor :stack_type
@@ -40720,6 +41140,7 @@ module Google
40720
41140
  @flow_sampling = args[:flow_sampling] if args.key?(:flow_sampling)
40721
41141
  @gateway_address = args[:gateway_address] if args.key?(:gateway_address)
40722
41142
  @id = args[:id] if args.key?(:id)
41143
+ @internal_ipv6_prefix = args[:internal_ipv6_prefix] if args.key?(:internal_ipv6_prefix)
40723
41144
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
40724
41145
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
40725
41146
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
@@ -41007,8 +41428,9 @@ module Google
41007
41428
  attr_accessor :enable
41008
41429
  alias_method :enable?, :enable
41009
41430
 
41010
- # Can only be specified if VPC flow logs for this subnetwork is enabled. Export
41011
- # filter used to define which VPC flow logs should be logged.
41431
+ # Can only be specified if VPC flow logs for this subnetwork is enabled. The
41432
+ # filter expression is used to define which VPC flow logs should be exported to
41433
+ # Cloud Logging.
41012
41434
  # Corresponds to the JSON property `filterExpr`
41013
41435
  # @return [String]
41014
41436
  attr_accessor :filter_expr
@@ -44034,6 +44456,12 @@ module Google
44034
44456
  # @return [String]
44035
44457
  attr_accessor :proxy_header
44036
44458
 
44459
+ # [Output Only] URL of the region where the regional TCP proxy resides. This
44460
+ # field is not applicable to global TCP proxy.
44461
+ # Corresponds to the JSON property `region`
44462
+ # @return [String]
44463
+ attr_accessor :region
44464
+
44037
44465
  # [Output Only] Server-defined URL for the resource.
44038
44466
  # Corresponds to the JSON property `selfLink`
44039
44467
  # @return [String]
@@ -44057,6 +44485,7 @@ module Google
44057
44485
  @name = args[:name] if args.key?(:name)
44058
44486
  @proxy_bind = args[:proxy_bind] if args.key?(:proxy_bind)
44059
44487
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
44488
+ @region = args[:region] if args.key?(:region)
44060
44489
  @self_link = args[:self_link] if args.key?(:self_link)
44061
44490
  @service = args[:service] if args.key?(:service)
44062
44491
  end