google-apis-compute_alpha 0.63.0 → 0.65.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.
@@ -516,16 +516,18 @@ module Google
516
516
  class AccessConfig
517
517
  include Google::Apis::Core::Hashable
518
518
 
519
- # The first IPv6 address of the external IPv6 range associated with this
520
- # instance, prefix length is stored in externalIpv6PrefixLength in
521
- # ipv6AccessConfig. To use a static external IP address, it must be unused and
522
- # in the same region as the instance's zone. If not specified, Google Cloud will
523
- # automatically assign an external IPv6 address from the instance's subnetwork.
519
+ # Applies to ipv6AccessConfigs only. The first IPv6 address of the external IPv6
520
+ # range associated with this instance, prefix length is stored in
521
+ # externalIpv6PrefixLength in ipv6AccessConfig. To use a static external IP
522
+ # address, it must be unused and in the same region as the instance's zone. If
523
+ # not specified, Google Cloud will automatically assign an external IPv6 address
524
+ # from the instance's subnetwork.
524
525
  # Corresponds to the JSON property `externalIpv6`
525
526
  # @return [String]
526
527
  attr_accessor :external_ipv6
527
528
 
528
- # The prefix length of the external IPv6 range.
529
+ # Applies to ipv6AccessConfigs only. The prefix length of the external IPv6
530
+ # range.
529
531
  # Corresponds to the JSON property `externalIpv6PrefixLength`
530
532
  # @return [Fixnum]
531
533
  attr_accessor :external_ipv6_prefix_length
@@ -536,18 +538,19 @@ module Google
536
538
  # @return [String]
537
539
  attr_accessor :kind
538
540
 
539
- # The name of this access configuration. The default and recommended name is
540
- # External NAT, but you can use any arbitrary string, such as My external IP or
541
- # Network Access.
541
+ # The name of this access configuration. In accessConfigs (IPv4), the default
542
+ # and recommended name is External NAT, but you can use any arbitrary string,
543
+ # such as My external IP or Network Access. In ipv6AccessConfigs, the recommend
544
+ # name is External IPv6.
542
545
  # Corresponds to the JSON property `name`
543
546
  # @return [String]
544
547
  attr_accessor :name
545
548
 
546
- # An external IP address associated with this instance. Specify an unused static
547
- # external IP address available to the project or leave this field undefined to
548
- # use an IP from a shared ephemeral IP address pool. If you specify a static
549
- # external IP address, it must live in the same region as the zone of the
550
- # instance.
549
+ # Applies to accessConfigs (IPv4) only. An external IP address associated with
550
+ # this instance. Specify an unused static external IP address available to the
551
+ # project or leave this field undefined to use an IP from a shared ephemeral IP
552
+ # address pool. If you specify a static external IP address, it must live in the
553
+ # same region as the zone of the instance.
551
554
  # Corresponds to the JSON property `natIP`
552
555
  # @return [String]
553
556
  attr_accessor :nat_ip
@@ -597,7 +600,9 @@ module Google
597
600
  attr_accessor :set_public_ptr
598
601
  alias_method :set_public_ptr?, :set_public_ptr
599
602
 
600
- # The type of configuration. The default and only option is ONE_TO_ONE_NAT.
603
+ # The type of configuration. In accessConfigs (IPv4), the default and only
604
+ # option is ONE_TO_ONE_NAT. In ipv6AccessConfigs, the default and only option is
605
+ # DIRECT_IPV6.
601
606
  # Corresponds to the JSON property `type`
602
607
  # @return [String]
603
608
  attr_accessor :type
@@ -3749,6 +3754,12 @@ module Google
3749
3754
  # @return [Google::Apis::ComputeAlpha::Duration]
3750
3755
  attr_accessor :max_stream_duration
3751
3756
 
3757
+ # Deployment metadata associated with the resource to be set by a GKE hub
3758
+ # controller and read by the backend RCTH
3759
+ # Corresponds to the JSON property `metadatas`
3760
+ # @return [Hash<String,String>]
3761
+ attr_accessor :metadatas
3762
+
3752
3763
  # Name of the resource. Provided by the client when the resource is created. The
3753
3764
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
3754
3765
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -3913,6 +3924,7 @@ module Google
3913
3924
  @locality_lb_policy = args[:locality_lb_policy] if args.key?(:locality_lb_policy)
3914
3925
  @log_config = args[:log_config] if args.key?(:log_config)
3915
3926
  @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
3927
+ @metadatas = args[:metadatas] if args.key?(:metadatas)
3916
3928
  @name = args[:name] if args.key?(:name)
3917
3929
  @network = args[:network] if args.key?(:network)
3918
3930
  @outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection)
@@ -5261,13 +5273,6 @@ module Google
5261
5273
  # @return [Fixnum]
5262
5274
  attr_accessor :count
5263
5275
 
5264
- # Represents an Instance resource. An instance is a virtual machine that is
5265
- # hosted on Google Cloud Platform. For more information, read Virtual Machine
5266
- # Instances.
5267
- # Corresponds to the JSON property `instance`
5268
- # @return [Google::Apis::ComputeAlpha::Instance]
5269
- attr_accessor :instance
5270
-
5271
5276
  # The instance properties defining the VM instances to be created. Required if
5272
5277
  # sourceInstanceTemplate is not provided.
5273
5278
  # Corresponds to the JSON property `instanceProperties`
@@ -5327,7 +5332,6 @@ module Google
5327
5332
  # Update properties of this object
5328
5333
  def update!(**args)
5329
5334
  @count = args[:count] if args.key?(:count)
5330
- @instance = args[:instance] if args.key?(:instance)
5331
5335
  @instance_properties = args[:instance_properties] if args.key?(:instance_properties)
5332
5336
  @location_policy = args[:location_policy] if args.key?(:location_policy)
5333
5337
  @min_count = args[:min_count] if args.key?(:min_count)
@@ -5342,6 +5346,13 @@ module Google
5342
5346
  class BulkInsertInstanceResourcePerInstanceProperties
5343
5347
  include Google::Apis::Core::Hashable
5344
5348
 
5349
+ # Specifies the hostname of the instance. More details in: https://cloud.google.
5350
+ # com/compute/docs/instances/custom-hostname-vm#naming_convention hostname must
5351
+ # be uniqe in per_instance_properties map.
5352
+ # Corresponds to the JSON property `hostname`
5353
+ # @return [String]
5354
+ attr_accessor :hostname
5355
+
5345
5356
  # This field is only temporary. It will be removed. Do not use it.
5346
5357
  # Corresponds to the JSON property `name`
5347
5358
  # @return [String]
@@ -5353,10 +5364,55 @@ module Google
5353
5364
 
5354
5365
  # Update properties of this object
5355
5366
  def update!(**args)
5367
+ @hostname = args[:hostname] if args.key?(:hostname)
5356
5368
  @name = args[:name] if args.key?(:name)
5357
5369
  end
5358
5370
  end
5359
5371
 
5372
+ #
5373
+ class BulkInsertOperationStatus
5374
+ include Google::Apis::Core::Hashable
5375
+
5376
+ # [Output Only] Count of VMs successfully created so far.
5377
+ # Corresponds to the JSON property `createdVmCount`
5378
+ # @return [Fixnum]
5379
+ attr_accessor :created_vm_count
5380
+
5381
+ # [Output Only] Count of VMs that got deleted during rollback.
5382
+ # Corresponds to the JSON property `deletedVmCount`
5383
+ # @return [Fixnum]
5384
+ attr_accessor :deleted_vm_count
5385
+
5386
+ # [Output Only] Count of VMs that started creating but encountered an error.
5387
+ # Corresponds to the JSON property `failedToCreateVmCount`
5388
+ # @return [Fixnum]
5389
+ attr_accessor :failed_to_create_vm_count
5390
+
5391
+ # [Output Only] Creation status of BulkInsert operation - information if the
5392
+ # flow is rolling forward or rolling back.
5393
+ # Corresponds to the JSON property `status`
5394
+ # @return [String]
5395
+ attr_accessor :status
5396
+
5397
+ # [Output Only] Count of VMs originally planned to be created.
5398
+ # Corresponds to the JSON property `targetVmCount`
5399
+ # @return [Fixnum]
5400
+ attr_accessor :target_vm_count
5401
+
5402
+ def initialize(**args)
5403
+ update!(**args)
5404
+ end
5405
+
5406
+ # Update properties of this object
5407
+ def update!(**args)
5408
+ @created_vm_count = args[:created_vm_count] if args.key?(:created_vm_count)
5409
+ @deleted_vm_count = args[:deleted_vm_count] if args.key?(:deleted_vm_count)
5410
+ @failed_to_create_vm_count = args[:failed_to_create_vm_count] if args.key?(:failed_to_create_vm_count)
5411
+ @status = args[:status] if args.key?(:status)
5412
+ @target_vm_count = args[:target_vm_count] if args.key?(:target_vm_count)
5413
+ end
5414
+ end
5415
+
5360
5416
  #
5361
5417
  class BundledLocalSsds
5362
5418
  include Google::Apis::Core::Hashable
@@ -6683,6 +6739,13 @@ module Google
6683
6739
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
6684
6740
  attr_accessor :disk_encryption_key
6685
6741
 
6742
+ # Whether this disk is using confidential compute mode. see go/confidential-mode-
6743
+ # in-arcus for details.
6744
+ # Corresponds to the JSON property `enableConfidentialCompute`
6745
+ # @return [Boolean]
6746
+ attr_accessor :enable_confidential_compute
6747
+ alias_method :enable_confidential_compute?, :enable_confidential_compute
6748
+
6686
6749
  # Specifies whether the disk restored from a source snapshot should erase
6687
6750
  # Windows specific VSS signature.
6688
6751
  # Corresponds to the JSON property `eraseWindowsVssSignature`
@@ -7038,6 +7101,7 @@ module Google
7038
7101
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
7039
7102
  @description = args[:description] if args.key?(:description)
7040
7103
  @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
7104
+ @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
7041
7105
  @erase_windows_vss_signature = args[:erase_windows_vss_signature] if args.key?(:erase_windows_vss_signature)
7042
7106
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
7043
7107
  @id = args[:id] if args.key?(:id)
@@ -7216,6 +7280,18 @@ module Google
7216
7280
  class DiskAsyncReplication
7217
7281
  include Google::Apis::Core::Hashable
7218
7282
 
7283
+ # [Output Only] URL of the DiskConsistencyGroupPolicy if replication was started
7284
+ # on the disk as a member of a group.
7285
+ # Corresponds to the JSON property `consistencyGroupPolicy`
7286
+ # @return [String]
7287
+ attr_accessor :consistency_group_policy
7288
+
7289
+ # [Output Only] ID of the DiskConsistencyGroupPolicy if replication was started
7290
+ # on the disk as a member of a group.
7291
+ # Corresponds to the JSON property `consistencyGroupPolicyId`
7292
+ # @return [String]
7293
+ attr_accessor :consistency_group_policy_id
7294
+
7219
7295
  # The other disk asynchronously replicated to or from the current disk. You can
7220
7296
  # provide this as a partial or full URL to the resource. For example, the
7221
7297
  # following are valid values: - https://www.googleapis.com/compute/v1/projects/
@@ -7241,6 +7317,8 @@ module Google
7241
7317
 
7242
7318
  # Update properties of this object
7243
7319
  def update!(**args)
7320
+ @consistency_group_policy = args[:consistency_group_policy] if args.key?(:consistency_group_policy)
7321
+ @consistency_group_policy_id = args[:consistency_group_policy_id] if args.key?(:consistency_group_policy_id)
7244
7322
  @disk = args[:disk] if args.key?(:disk)
7245
7323
  @disk_id = args[:disk_id] if args.key?(:disk_id)
7246
7324
  end
@@ -9453,6 +9531,15 @@ module Google
9453
9531
  # @return [String]
9454
9532
  attr_accessor :name
9455
9533
 
9534
+ # An integer indicating the priority of an association. The priority must be a
9535
+ # positive value between 1 and 2147483647. Firewall Policies are evaluated from
9536
+ # highest to lowest priority where 1 is the highest priority and 2147483647 is
9537
+ # the lowest priority. The default value is `1000`. If two associations have the
9538
+ # same priority then lexicographical order on association names is applied.
9539
+ # Corresponds to the JSON property `priority`
9540
+ # @return [Fixnum]
9541
+ attr_accessor :priority
9542
+
9456
9543
  # [Output Only] The short name of the firewall policy of the association.
9457
9544
  # Corresponds to the JSON property `shortName`
9458
9545
  # @return [String]
@@ -9468,6 +9555,7 @@ module Google
9468
9555
  @display_name = args[:display_name] if args.key?(:display_name)
9469
9556
  @firewall_policy_id = args[:firewall_policy_id] if args.key?(:firewall_policy_id)
9470
9557
  @name = args[:name] if args.key?(:name)
9558
+ @priority = args[:priority] if args.key?(:priority)
9471
9559
  @short_name = args[:short_name] if args.key?(:short_name)
9472
9560
  end
9473
9561
  end
@@ -10112,9 +10200,11 @@ module Google
10112
10200
 
10113
10201
  # This field is not used for external load balancing. For Internal TCP/UDP Load
10114
10202
  # Balancing, this field identifies the network that the load balanced IP should
10115
- # belong to for this Forwarding Rule. If this field is not specified, the
10116
- # default network will be used. For Private Service Connect forwarding rules
10117
- # that forward traffic to Google APIs, a network must be provided.
10203
+ # belong to for this Forwarding Rule. If the subnetwork is specified, the
10204
+ # network of the subnetwork will be used. If neither subnetwork nor this field
10205
+ # is specified, the default network will be used. For Private Service Connect
10206
+ # forwarding rules that forward traffic to Google APIs, a network must be
10207
+ # provided.
10118
10208
  # Corresponds to the JSON property `network`
10119
10209
  # @return [String]
10120
10210
  attr_accessor :network
@@ -11726,8 +11816,8 @@ module Google
11726
11816
  # The ID of a supported feature. To add multiple values, use commas to separate
11727
11817
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
11728
11818
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE -
11729
- # SUSPEND_RESUME_COMPATIBLE - SEV_SNP_CAPABLE - TDX_CAPABLE For more information,
11730
- # see Enabling guest operating system features.
11819
+ # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE -
11820
+ # TDX_CAPABLE For more information, see Enabling guest operating system features.
11731
11821
  # Corresponds to the JSON property `type`
11732
11822
  # @return [String]
11733
11823
  attr_accessor :type
@@ -13082,7 +13172,7 @@ module Google
13082
13172
  # @return [String]
13083
13173
  attr_accessor :forwarding_rule_ip
13084
13174
 
13085
- # Health state of the instance.
13175
+ # Health state of the IPv4 address of the instance.
13086
13176
  # Corresponds to the JSON property `healthState`
13087
13177
  # @return [String]
13088
13178
  attr_accessor :health_state
@@ -13172,6 +13262,12 @@ module Google
13172
13262
  # @return [String]
13173
13263
  attr_accessor :health_state
13174
13264
 
13265
+ # Health state of the ipv6 network endpoint determined based on the health
13266
+ # checks configured.
13267
+ # Corresponds to the JSON property `ipv6HealthState`
13268
+ # @return [String]
13269
+ attr_accessor :ipv6_health_state
13270
+
13175
13271
  def initialize(**args)
13176
13272
  update!(**args)
13177
13273
  end
@@ -13183,6 +13279,7 @@ module Google
13183
13279
  @health_check = args[:health_check] if args.key?(:health_check)
13184
13280
  @health_check_service = args[:health_check_service] if args.key?(:health_check_service)
13185
13281
  @health_state = args[:health_state] if args.key?(:health_state)
13282
+ @ipv6_health_state = args[:ipv6_health_state] if args.key?(:ipv6_health_state)
13186
13283
  end
13187
13284
  end
13188
13285
 
@@ -17528,7 +17625,9 @@ module Google
17528
17625
  include Google::Apis::Core::Hashable
17529
17626
 
17530
17627
  # The URLs of one or more instances to delete. This can be a full URL or a
17531
- # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
17628
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. Queued instances
17629
+ # do not have URL and can be deleted only by name. One cannot specify both URLs
17630
+ # and names in a single request.
17532
17631
  # Corresponds to the JSON property `instances`
17533
17632
  # @return [Array<String>]
17534
17633
  attr_accessor :instances
@@ -19542,6 +19641,26 @@ module Google
19542
19641
  end
19543
19642
  end
19544
19643
 
19644
+ #
19645
+ class InstancesBulkInsertOperationMetadata
19646
+ include Google::Apis::Core::Hashable
19647
+
19648
+ # Status information per location (location name is key). Example key: zones/us-
19649
+ # central1-a
19650
+ # Corresponds to the JSON property `perLocationStatus`
19651
+ # @return [Hash<String,Google::Apis::ComputeAlpha::BulkInsertOperationStatus>]
19652
+ attr_accessor :per_location_status
19653
+
19654
+ def initialize(**args)
19655
+ update!(**args)
19656
+ end
19657
+
19658
+ # Update properties of this object
19659
+ def update!(**args)
19660
+ @per_location_status = args[:per_location_status] if args.key?(:per_location_status)
19661
+ end
19662
+ end
19663
+
19545
19664
  #
19546
19665
  class InstancesGetEffectiveFirewallsResponse
19547
19666
  include Google::Apis::Core::Hashable
@@ -19898,6 +20017,34 @@ module Google
19898
20017
  end
19899
20018
  end
19900
20019
 
20020
+ #
20021
+ class InstancesSetSecurityPolicyRequest
20022
+ include Google::Apis::Core::Hashable
20023
+
20024
+ # The network interfaces that the security policy will be applied to. Network
20025
+ # interfaces use the nicN naming format. You can only set a security policy for
20026
+ # network interfaces with an access config.
20027
+ # Corresponds to the JSON property `networkInterfaces`
20028
+ # @return [Array<String>]
20029
+ attr_accessor :network_interfaces
20030
+
20031
+ # A full or partial URL to a security policy to add to this instance. If this
20032
+ # field is set to an empty string it will remove the associated security policy.
20033
+ # Corresponds to the JSON property `securityPolicy`
20034
+ # @return [String]
20035
+ attr_accessor :security_policy
20036
+
20037
+ def initialize(**args)
20038
+ update!(**args)
20039
+ end
20040
+
20041
+ # Update properties of this object
20042
+ def update!(**args)
20043
+ @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
20044
+ @security_policy = args[:security_policy] if args.key?(:security_policy)
20045
+ end
20046
+ end
20047
+
19901
20048
  #
19902
20049
  class InstancesSetServiceAccountRequest
19903
20050
  include Google::Apis::Core::Hashable
@@ -20562,8 +20709,8 @@ module Google
20562
20709
  end
20563
20710
 
20564
20711
  # Represents an Interconnect resource. An Interconnect resource is a dedicated
20565
- # connection between the GCP network and your on-premises network. For more
20566
- # information, read the Dedicated Interconnect Overview.
20712
+ # connection between the Google Cloud network and your on-premises network. For
20713
+ # more information, read the Dedicated Interconnect Overview.
20567
20714
  class Interconnect
20568
20715
  include Google::Apis::Core::Hashable
20569
20716
 
@@ -20576,6 +20723,14 @@ module Google
20576
20723
  attr_accessor :admin_enabled
20577
20724
  alias_method :admin_enabled?, :admin_enabled
20578
20725
 
20726
+ # [Output only] List of features available for this interconnect, which can take
20727
+ # one of the following values: - MACSEC If present then the interconnect was
20728
+ # created on MACsec capable hardware ports. If not present then the interconnect
20729
+ # is provisioned on non-MACsec capable ports and MACsec enablement will fail.
20730
+ # Corresponds to the JSON property `availableFeatures`
20731
+ # @return [Array<String>]
20732
+ attr_accessor :available_features
20733
+
20579
20734
  # [Output Only] A list of CircuitInfo objects, that describe the individual
20580
20735
  # circuits in this LAG.
20581
20736
  # Corresponds to the JSON property `circuitInfos`
@@ -20737,6 +20892,17 @@ module Google
20737
20892
  # @return [String]
20738
20893
  attr_accessor :remote_location
20739
20894
 
20895
+ # Optional. List of features requested for this interconnect, which can take one
20896
+ # of the following values: - MACSEC If specified then the interconnect will be
20897
+ # created on MACsec capable hardware ports. If not specified, the default value
20898
+ # is false, which will allocate non-MACsec capable ports first if available.
20899
+ # This parameter can only be provided during interconnect INSERT and cannot be
20900
+ # changed using interconnect PATCH. Please review Interconnect Pricing for
20901
+ # implications on enabling this flag.
20902
+ # Corresponds to the JSON property `requestedFeatures`
20903
+ # @return [Array<String>]
20904
+ attr_accessor :requested_features
20905
+
20740
20906
  # Target number of physical links in the link bundle, as requested by the
20741
20907
  # customer.
20742
20908
  # Corresponds to the JSON property `requestedLinkCount`
@@ -20777,6 +20943,7 @@ module Google
20777
20943
  # Update properties of this object
20778
20944
  def update!(**args)
20779
20945
  @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled)
20946
+ @available_features = args[:available_features] if args.key?(:available_features)
20780
20947
  @circuit_infos = args[:circuit_infos] if args.key?(:circuit_infos)
20781
20948
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
20782
20949
  @customer_name = args[:customer_name] if args.key?(:customer_name)
@@ -20800,6 +20967,7 @@ module Google
20800
20967
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
20801
20968
  @provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
20802
20969
  @remote_location = args[:remote_location] if args.key?(:remote_location)
20970
+ @requested_features = args[:requested_features] if args.key?(:requested_features)
20803
20971
  @requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count)
20804
20972
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
20805
20973
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -20964,7 +21132,7 @@ module Google
20964
21132
  # specified for this VLAN attachment. If this field is not specified when
20965
21133
  # creating the VLAN attachment, then later on when creating an HA VPN gateway on
20966
21134
  # this VLAN attachment, the HA VPN gateway's IP address is allocated from the
20967
- # regional external IP address pool. Not currently available publicly.
21135
+ # regional external IP address pool.
20968
21136
  # Corresponds to the JSON property `ipsecInternalAddresses`
20969
21137
  # @return [Array<String>]
20970
21138
  attr_accessor :ipsec_internal_addresses
@@ -22048,6 +22216,19 @@ module Google
22048
22216
  # @return [String]
22049
22217
  attr_accessor :availability_zone
22050
22218
 
22219
+ # [Output only] List of features available at this interconnect location, which
22220
+ # can take one of the following values: - MACSEC
22221
+ # Corresponds to the JSON property `availableFeatures`
22222
+ # @return [Array<String>]
22223
+ attr_accessor :available_features
22224
+
22225
+ # [Output only] List of link types available at this interconnect location,
22226
+ # which can take one of the following values: - LINK_TYPE_ETHERNET_10G_LR -
22227
+ # LINK_TYPE_ETHERNET_100G_LR
22228
+ # Corresponds to the JSON property `availableLinkTypes`
22229
+ # @return [Array<String>]
22230
+ attr_accessor :available_link_types
22231
+
22051
22232
  # [Output Only] Metropolitan area designator that indicates which city an
22052
22233
  # interconnect is located. For example: "Chicago, IL", "Amsterdam, Netherlands".
22053
22234
  # Corresponds to the JSON property `city`
@@ -22143,6 +22324,8 @@ module Google
22143
22324
  def update!(**args)
22144
22325
  @address = args[:address] if args.key?(:address)
22145
22326
  @availability_zone = args[:availability_zone] if args.key?(:availability_zone)
22327
+ @available_features = args[:available_features] if args.key?(:available_features)
22328
+ @available_link_types = args[:available_link_types] if args.key?(:available_link_types)
22146
22329
  @city = args[:city] if args.key?(:city)
22147
22330
  @continent = args[:continent] if args.key?(:continent)
22148
22331
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -25310,7 +25493,7 @@ module Google
25310
25493
  attr_accessor :firewall_policy
25311
25494
 
25312
25495
  # [Output Only] The gateway address for default routing out of the network,
25313
- # selected by GCP.
25496
+ # selected by Google Cloud.
25314
25497
  # Corresponds to the JSON property `gatewayIPv4`
25315
25498
  # @return [String]
25316
25499
  attr_accessor :gateway_i_pv4
@@ -25676,7 +25859,7 @@ module Google
25676
25859
  # @return [String]
25677
25860
  attr_accessor :project_id_or_num
25678
25861
 
25679
- # Alias IP ranges from the same subnetwork
25862
+ # Alias IP ranges from the same subnetwork.
25680
25863
  # Corresponds to the JSON property `secondaryIpCidrRanges`
25681
25864
  # @return [Array<String>]
25682
25865
  attr_accessor :secondary_ip_cidr_ranges
@@ -26258,6 +26441,11 @@ module Google
26258
26441
  # @return [String]
26259
26442
  attr_accessor :ip_address
26260
26443
 
26444
+ # Optional IPv6 address of network endpoint.
26445
+ # Corresponds to the JSON property `ipv6Address`
26446
+ # @return [String]
26447
+ attr_accessor :ipv6_address
26448
+
26261
26449
  # Optional port number of network endpoint. If not specified, the defaultPort
26262
26450
  # for the network endpoint group will be used.
26263
26451
  # Corresponds to the JSON property `port`
@@ -26274,6 +26462,7 @@ module Google
26274
26462
  @fqdn = args[:fqdn] if args.key?(:fqdn)
26275
26463
  @instance = args[:instance] if args.key?(:instance)
26276
26464
  @ip_address = args[:ip_address] if args.key?(:ip_address)
26465
+ @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
26277
26466
  @port = args[:port] if args.key?(:port)
26278
26467
  end
26279
26468
  end
@@ -27377,9 +27566,10 @@ module Google
27377
27566
  # @return [Fixnum]
27378
27567
  attr_accessor :queue_count
27379
27568
 
27380
- # The stack type for this network interface to identify whether the IPv6 feature
27381
- # is enabled or not. If not specified, IPV4_ONLY will be used. This field can be
27382
- # both set at instance creation and update network interface operations.
27569
+ # The stack type for this network interface. To assign only IPv4 addresses, use
27570
+ # IPV4_ONLY. To assign both IPv4 and IPv6 addresses, use IPV4_IPV6. If not
27571
+ # specified, IPV4_ONLY is used. This field can be both set at instance creation
27572
+ # and update network interface operations.
27383
27573
  # Corresponds to the JSON property `stackType`
27384
27574
  # @return [String]
27385
27575
  attr_accessor :stack_type
@@ -28027,6 +28217,12 @@ module Google
28027
28217
  # @return [String]
28028
28218
  attr_accessor :location_hint
28029
28219
 
28220
+ # Specifies the frequency of planned maintenance events. The accepted values are:
28221
+ # `AS_NEEDED` and `RECURRENT`.
28222
+ # Corresponds to the JSON property `maintenanceInterval`
28223
+ # @return [String]
28224
+ attr_accessor :maintenance_interval
28225
+
28030
28226
  # Specifies how to handle instances when a node in the group undergoes
28031
28227
  # maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or
28032
28228
  # MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information,
@@ -28101,6 +28297,7 @@ module Google
28101
28297
  @id = args[:id] if args.key?(:id)
28102
28298
  @kind = args[:kind] if args.key?(:kind)
28103
28299
  @location_hint = args[:location_hint] if args.key?(:location_hint)
28300
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
28104
28301
  @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy)
28105
28302
  @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window)
28106
28303
  @name = args[:name] if args.key?(:name)
@@ -28497,6 +28694,11 @@ module Google
28497
28694
  # @return [Google::Apis::ComputeAlpha::InstanceConsumptionInfo]
28498
28695
  attr_accessor :total_resources
28499
28696
 
28697
+ # Upcoming Maintenance notification information.
28698
+ # Corresponds to the JSON property `upcomingMaintenance`
28699
+ # @return [Google::Apis::ComputeAlpha::UpcomingMaintenance]
28700
+ attr_accessor :upcoming_maintenance
28701
+
28500
28702
  def initialize(**args)
28501
28703
  update!(**args)
28502
28704
  end
@@ -28516,6 +28718,7 @@ module Google
28516
28718
  @server_id = args[:server_id] if args.key?(:server_id)
28517
28719
  @status = args[:status] if args.key?(:status)
28518
28720
  @total_resources = args[:total_resources] if args.key?(:total_resources)
28721
+ @upcoming_maintenance = args[:upcoming_maintenance] if args.key?(:upcoming_maintenance)
28519
28722
  end
28520
28723
  end
28521
28724
 
@@ -28676,239 +28879,18 @@ module Google
28676
28879
  end
28677
28880
 
28678
28881
  #
28679
- class NodeGroupsScopedList
28680
- include Google::Apis::Core::Hashable
28681
-
28682
- # [Output Only] A list of node groups contained in this scope.
28683
- # Corresponds to the JSON property `nodeGroups`
28684
- # @return [Array<Google::Apis::ComputeAlpha::NodeGroup>]
28685
- attr_accessor :node_groups
28686
-
28687
- # [Output Only] An informational warning that appears when the nodeGroup list is
28688
- # empty.
28689
- # Corresponds to the JSON property `warning`
28690
- # @return [Google::Apis::ComputeAlpha::NodeGroupsScopedList::Warning]
28691
- attr_accessor :warning
28692
-
28693
- def initialize(**args)
28694
- update!(**args)
28695
- end
28696
-
28697
- # Update properties of this object
28698
- def update!(**args)
28699
- @node_groups = args[:node_groups] if args.key?(:node_groups)
28700
- @warning = args[:warning] if args.key?(:warning)
28701
- end
28702
-
28703
- # [Output Only] An informational warning that appears when the nodeGroup list is
28704
- # empty.
28705
- class Warning
28706
- include Google::Apis::Core::Hashable
28707
-
28708
- # [Output Only] A warning code, if applicable. For example, Compute Engine
28709
- # returns NO_RESULTS_ON_PAGE if there are no results in the response.
28710
- # Corresponds to the JSON property `code`
28711
- # @return [String]
28712
- attr_accessor :code
28713
-
28714
- # [Output Only] Metadata about this warning in key: value format. For example: "
28715
- # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
28716
- # Corresponds to the JSON property `data`
28717
- # @return [Array<Google::Apis::ComputeAlpha::NodeGroupsScopedList::Warning::Datum>]
28718
- attr_accessor :data
28719
-
28720
- # [Output Only] A human-readable description of the warning code.
28721
- # Corresponds to the JSON property `message`
28722
- # @return [String]
28723
- attr_accessor :message
28724
-
28725
- def initialize(**args)
28726
- update!(**args)
28727
- end
28728
-
28729
- # Update properties of this object
28730
- def update!(**args)
28731
- @code = args[:code] if args.key?(:code)
28732
- @data = args[:data] if args.key?(:data)
28733
- @message = args[:message] if args.key?(:message)
28734
- end
28735
-
28736
- #
28737
- class Datum
28738
- include Google::Apis::Core::Hashable
28739
-
28740
- # [Output Only] A key that provides more detail on the warning being returned.
28741
- # For example, for warnings where there are no results in a list request for a
28742
- # particular zone, this key might be scope and the key value might be the zone
28743
- # name. Other examples might be a key indicating a deprecated resource and a
28744
- # suggested replacement, or a warning about invalid network settings (for
28745
- # example, if an instance attempts to perform IP forwarding but is not enabled
28746
- # for IP forwarding).
28747
- # Corresponds to the JSON property `key`
28748
- # @return [String]
28749
- attr_accessor :key
28750
-
28751
- # [Output Only] A warning data value corresponding to the key.
28752
- # Corresponds to the JSON property `value`
28753
- # @return [String]
28754
- attr_accessor :value
28755
-
28756
- def initialize(**args)
28757
- update!(**args)
28758
- end
28759
-
28760
- # Update properties of this object
28761
- def update!(**args)
28762
- @key = args[:key] if args.key?(:key)
28763
- @value = args[:value] if args.key?(:value)
28764
- end
28765
- end
28766
- end
28767
- end
28768
-
28769
- #
28770
- class NodeGroupsSetNodeTemplateRequest
28882
+ class NodeGroupsPerformMaintenanceRequest
28771
28883
  include Google::Apis::Core::Hashable
28772
28884
 
28773
- # Full or partial URL of the node template resource to be updated for this node
28774
- # group.
28775
- # Corresponds to the JSON property `nodeTemplate`
28776
- # @return [String]
28777
- attr_accessor :node_template
28778
-
28779
- def initialize(**args)
28780
- update!(**args)
28781
- end
28782
-
28783
- # Update properties of this object
28784
- def update!(**args)
28785
- @node_template = args[:node_template] if args.key?(:node_template)
28786
- end
28787
- end
28788
-
28789
- #
28790
- class NodeGroupsSimulateMaintenanceEventRequest
28791
- include Google::Apis::Core::Hashable
28792
-
28793
- # Names of the nodes to go under maintenance simulation.
28885
+ # [Required] List of nodes affected by the call.
28794
28886
  # Corresponds to the JSON property `nodes`
28795
28887
  # @return [Array<String>]
28796
28888
  attr_accessor :nodes
28797
28889
 
28798
- def initialize(**args)
28799
- update!(**args)
28800
- end
28801
-
28802
- # Update properties of this object
28803
- def update!(**args)
28804
- @nodes = args[:nodes] if args.key?(:nodes)
28805
- end
28806
- end
28807
-
28808
- # Represent a sole-tenant Node Template resource. You can use a template to
28809
- # define properties for nodes in a node group. For more information, read
28810
- # Creating node groups and instances.
28811
- class NodeTemplate
28812
- include Google::Apis::Core::Hashable
28813
-
28814
- #
28815
- # Corresponds to the JSON property `accelerators`
28816
- # @return [Array<Google::Apis::ComputeAlpha::AcceleratorConfig>]
28817
- attr_accessor :accelerators
28818
-
28819
- # CPU overcommit.
28820
- # Corresponds to the JSON property `cpuOvercommitType`
28821
- # @return [String]
28822
- attr_accessor :cpu_overcommit_type
28823
-
28824
- # [Output Only] Creation timestamp in RFC3339 text format.
28825
- # Corresponds to the JSON property `creationTimestamp`
28826
- # @return [String]
28827
- attr_accessor :creation_timestamp
28828
-
28829
- # An optional description of this resource. Provide this property when you
28830
- # create the resource.
28831
- # Corresponds to the JSON property `description`
28832
- # @return [String]
28833
- attr_accessor :description
28834
-
28835
- #
28836
- # Corresponds to the JSON property `disks`
28837
- # @return [Array<Google::Apis::ComputeAlpha::LocalDisk>]
28838
- attr_accessor :disks
28839
-
28840
- # [Output Only] The unique identifier for the resource. This identifier is
28841
- # defined by the server.
28842
- # Corresponds to the JSON property `id`
28843
- # @return [Fixnum]
28844
- attr_accessor :id
28845
-
28846
- # [Output Only] The type of the resource. Always compute#nodeTemplate for node
28847
- # templates.
28848
- # Corresponds to the JSON property `kind`
28849
- # @return [String]
28850
- attr_accessor :kind
28851
-
28852
- # The name of the resource, provided by the client when initially creating the
28853
- # resource. The resource name must be 1-63 characters long, and comply with
28854
- # RFC1035. Specifically, the name must be 1-63 characters long and match the
28855
- # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
28856
- # character must be a lowercase letter, and all following characters must be a
28857
- # dash, lowercase letter, or digit, except the last character, which cannot be a
28858
- # dash.
28859
- # Corresponds to the JSON property `name`
28860
- # @return [String]
28861
- attr_accessor :name
28862
-
28863
- # Labels to use for node affinity, which will be used in instance scheduling.
28864
- # Corresponds to the JSON property `nodeAffinityLabels`
28865
- # @return [Hash<String,String>]
28866
- attr_accessor :node_affinity_labels
28867
-
28868
- # The node type to use for nodes group that are created from this template.
28869
- # Corresponds to the JSON property `nodeType`
28870
- # @return [String]
28871
- attr_accessor :node_type
28872
-
28873
- # Do not use. Instead, use the node_type property.
28874
- # Corresponds to the JSON property `nodeTypeFlexibility`
28875
- # @return [Google::Apis::ComputeAlpha::NodeTemplateNodeTypeFlexibility]
28876
- attr_accessor :node_type_flexibility
28877
-
28878
- # [Output Only] The name of the region where the node template resides, such as
28879
- # us-central1.
28880
- # Corresponds to the JSON property `region`
28881
- # @return [String]
28882
- attr_accessor :region
28883
-
28884
- # [Output Only] Server-defined URL for the resource.
28885
- # Corresponds to the JSON property `selfLink`
28886
- # @return [String]
28887
- attr_accessor :self_link
28888
-
28889
- # [Output Only] Server-defined URL for this resource with the resource id.
28890
- # Corresponds to the JSON property `selfLinkWithId`
28891
- # @return [String]
28892
- attr_accessor :self_link_with_id
28893
-
28894
- # Sets the binding properties for the physical server. Valid values include: - *[
28895
- # Default]* RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical
28896
- # server - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical
28897
- # server whenever possible See Sole-tenant node options for more information.
28898
- # Corresponds to the JSON property `serverBinding`
28899
- # @return [Google::Apis::ComputeAlpha::ServerBinding]
28900
- attr_accessor :server_binding
28901
-
28902
- # [Output Only] The status of the node template. One of the following values:
28903
- # CREATING, READY, and DELETING.
28904
- # Corresponds to the JSON property `status`
28905
- # @return [String]
28906
- attr_accessor :status
28907
-
28908
- # [Output Only] An optional, human-readable explanation of the status.
28909
- # Corresponds to the JSON property `statusMessage`
28890
+ # The start time of the schedule. The timestamp is an RFC3339 string.
28891
+ # Corresponds to the JSON property `startTime`
28910
28892
  # @return [String]
28911
- attr_accessor :status_message
28893
+ attr_accessor :start_time
28912
28894
 
28913
28895
  def initialize(**args)
28914
28896
  update!(**args)
@@ -28916,68 +28898,24 @@ module Google
28916
28898
 
28917
28899
  # Update properties of this object
28918
28900
  def update!(**args)
28919
- @accelerators = args[:accelerators] if args.key?(:accelerators)
28920
- @cpu_overcommit_type = args[:cpu_overcommit_type] if args.key?(:cpu_overcommit_type)
28921
- @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
28922
- @description = args[:description] if args.key?(:description)
28923
- @disks = args[:disks] if args.key?(:disks)
28924
- @id = args[:id] if args.key?(:id)
28925
- @kind = args[:kind] if args.key?(:kind)
28926
- @name = args[:name] if args.key?(:name)
28927
- @node_affinity_labels = args[:node_affinity_labels] if args.key?(:node_affinity_labels)
28928
- @node_type = args[:node_type] if args.key?(:node_type)
28929
- @node_type_flexibility = args[:node_type_flexibility] if args.key?(:node_type_flexibility)
28930
- @region = args[:region] if args.key?(:region)
28931
- @self_link = args[:self_link] if args.key?(:self_link)
28932
- @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
28933
- @server_binding = args[:server_binding] if args.key?(:server_binding)
28934
- @status = args[:status] if args.key?(:status)
28935
- @status_message = args[:status_message] if args.key?(:status_message)
28901
+ @nodes = args[:nodes] if args.key?(:nodes)
28902
+ @start_time = args[:start_time] if args.key?(:start_time)
28936
28903
  end
28937
28904
  end
28938
28905
 
28939
28906
  #
28940
- class NodeTemplateAggregatedList
28907
+ class NodeGroupsScopedList
28941
28908
  include Google::Apis::Core::Hashable
28942
28909
 
28943
- # [Output Only] Unique identifier for the resource; defined by the server.
28944
- # Corresponds to the JSON property `id`
28945
- # @return [String]
28946
- attr_accessor :id
28947
-
28948
- # A list of NodeTemplatesScopedList resources.
28949
- # Corresponds to the JSON property `items`
28950
- # @return [Hash<String,Google::Apis::ComputeAlpha::NodeTemplatesScopedList>]
28951
- attr_accessor :items
28952
-
28953
- # [Output Only] Type of resource.Always compute#nodeTemplateAggregatedList for
28954
- # aggregated lists of node templates.
28955
- # Corresponds to the JSON property `kind`
28956
- # @return [String]
28957
- attr_accessor :kind
28958
-
28959
- # [Output Only] This token allows you to get the next page of results for list
28960
- # requests. If the number of results is larger than maxResults, use the
28961
- # nextPageToken as a value for the query parameter pageToken in the next list
28962
- # request. Subsequent list requests will have their own nextPageToken to
28963
- # continue paging through the results.
28964
- # Corresponds to the JSON property `nextPageToken`
28965
- # @return [String]
28966
- attr_accessor :next_page_token
28967
-
28968
- # [Output Only] Server-defined URL for this resource.
28969
- # Corresponds to the JSON property `selfLink`
28970
- # @return [String]
28971
- attr_accessor :self_link
28972
-
28973
- # [Output Only] Unreachable resources.
28974
- # Corresponds to the JSON property `unreachables`
28975
- # @return [Array<String>]
28976
- attr_accessor :unreachables
28910
+ # [Output Only] A list of node groups contained in this scope.
28911
+ # Corresponds to the JSON property `nodeGroups`
28912
+ # @return [Array<Google::Apis::ComputeAlpha::NodeGroup>]
28913
+ attr_accessor :node_groups
28977
28914
 
28978
- # [Output Only] Informational warning message.
28915
+ # [Output Only] An informational warning that appears when the nodeGroup list is
28916
+ # empty.
28979
28917
  # Corresponds to the JSON property `warning`
28980
- # @return [Google::Apis::ComputeAlpha::NodeTemplateAggregatedList::Warning]
28918
+ # @return [Google::Apis::ComputeAlpha::NodeGroupsScopedList::Warning]
28981
28919
  attr_accessor :warning
28982
28920
 
28983
28921
  def initialize(**args)
@@ -28986,16 +28924,12 @@ module Google
28986
28924
 
28987
28925
  # Update properties of this object
28988
28926
  def update!(**args)
28989
- @id = args[:id] if args.key?(:id)
28990
- @items = args[:items] if args.key?(:items)
28991
- @kind = args[:kind] if args.key?(:kind)
28992
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
28993
- @self_link = args[:self_link] if args.key?(:self_link)
28994
- @unreachables = args[:unreachables] if args.key?(:unreachables)
28927
+ @node_groups = args[:node_groups] if args.key?(:node_groups)
28995
28928
  @warning = args[:warning] if args.key?(:warning)
28996
28929
  end
28997
28930
 
28998
- # [Output Only] Informational warning message.
28931
+ # [Output Only] An informational warning that appears when the nodeGroup list is
28932
+ # empty.
28999
28933
  class Warning
29000
28934
  include Google::Apis::Core::Hashable
29001
28935
 
@@ -29008,7 +28942,301 @@ module Google
29008
28942
  # [Output Only] Metadata about this warning in key: value format. For example: "
29009
28943
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
29010
28944
  # Corresponds to the JSON property `data`
29011
- # @return [Array<Google::Apis::ComputeAlpha::NodeTemplateAggregatedList::Warning::Datum>]
28945
+ # @return [Array<Google::Apis::ComputeAlpha::NodeGroupsScopedList::Warning::Datum>]
28946
+ attr_accessor :data
28947
+
28948
+ # [Output Only] A human-readable description of the warning code.
28949
+ # Corresponds to the JSON property `message`
28950
+ # @return [String]
28951
+ attr_accessor :message
28952
+
28953
+ def initialize(**args)
28954
+ update!(**args)
28955
+ end
28956
+
28957
+ # Update properties of this object
28958
+ def update!(**args)
28959
+ @code = args[:code] if args.key?(:code)
28960
+ @data = args[:data] if args.key?(:data)
28961
+ @message = args[:message] if args.key?(:message)
28962
+ end
28963
+
28964
+ #
28965
+ class Datum
28966
+ include Google::Apis::Core::Hashable
28967
+
28968
+ # [Output Only] A key that provides more detail on the warning being returned.
28969
+ # For example, for warnings where there are no results in a list request for a
28970
+ # particular zone, this key might be scope and the key value might be the zone
28971
+ # name. Other examples might be a key indicating a deprecated resource and a
28972
+ # suggested replacement, or a warning about invalid network settings (for
28973
+ # example, if an instance attempts to perform IP forwarding but is not enabled
28974
+ # for IP forwarding).
28975
+ # Corresponds to the JSON property `key`
28976
+ # @return [String]
28977
+ attr_accessor :key
28978
+
28979
+ # [Output Only] A warning data value corresponding to the key.
28980
+ # Corresponds to the JSON property `value`
28981
+ # @return [String]
28982
+ attr_accessor :value
28983
+
28984
+ def initialize(**args)
28985
+ update!(**args)
28986
+ end
28987
+
28988
+ # Update properties of this object
28989
+ def update!(**args)
28990
+ @key = args[:key] if args.key?(:key)
28991
+ @value = args[:value] if args.key?(:value)
28992
+ end
28993
+ end
28994
+ end
28995
+ end
28996
+
28997
+ #
28998
+ class NodeGroupsSetNodeTemplateRequest
28999
+ include Google::Apis::Core::Hashable
29000
+
29001
+ # Full or partial URL of the node template resource to be updated for this node
29002
+ # group.
29003
+ # Corresponds to the JSON property `nodeTemplate`
29004
+ # @return [String]
29005
+ attr_accessor :node_template
29006
+
29007
+ def initialize(**args)
29008
+ update!(**args)
29009
+ end
29010
+
29011
+ # Update properties of this object
29012
+ def update!(**args)
29013
+ @node_template = args[:node_template] if args.key?(:node_template)
29014
+ end
29015
+ end
29016
+
29017
+ #
29018
+ class NodeGroupsSimulateMaintenanceEventRequest
29019
+ include Google::Apis::Core::Hashable
29020
+
29021
+ # Names of the nodes to go under maintenance simulation.
29022
+ # Corresponds to the JSON property `nodes`
29023
+ # @return [Array<String>]
29024
+ attr_accessor :nodes
29025
+
29026
+ def initialize(**args)
29027
+ update!(**args)
29028
+ end
29029
+
29030
+ # Update properties of this object
29031
+ def update!(**args)
29032
+ @nodes = args[:nodes] if args.key?(:nodes)
29033
+ end
29034
+ end
29035
+
29036
+ # Represent a sole-tenant Node Template resource. You can use a template to
29037
+ # define properties for nodes in a node group. For more information, read
29038
+ # Creating node groups and instances.
29039
+ class NodeTemplate
29040
+ include Google::Apis::Core::Hashable
29041
+
29042
+ #
29043
+ # Corresponds to the JSON property `accelerators`
29044
+ # @return [Array<Google::Apis::ComputeAlpha::AcceleratorConfig>]
29045
+ attr_accessor :accelerators
29046
+
29047
+ # CPU overcommit.
29048
+ # Corresponds to the JSON property `cpuOvercommitType`
29049
+ # @return [String]
29050
+ attr_accessor :cpu_overcommit_type
29051
+
29052
+ # [Output Only] Creation timestamp in RFC3339 text format.
29053
+ # Corresponds to the JSON property `creationTimestamp`
29054
+ # @return [String]
29055
+ attr_accessor :creation_timestamp
29056
+
29057
+ # An optional description of this resource. Provide this property when you
29058
+ # create the resource.
29059
+ # Corresponds to the JSON property `description`
29060
+ # @return [String]
29061
+ attr_accessor :description
29062
+
29063
+ #
29064
+ # Corresponds to the JSON property `disks`
29065
+ # @return [Array<Google::Apis::ComputeAlpha::LocalDisk>]
29066
+ attr_accessor :disks
29067
+
29068
+ # [Output Only] The unique identifier for the resource. This identifier is
29069
+ # defined by the server.
29070
+ # Corresponds to the JSON property `id`
29071
+ # @return [Fixnum]
29072
+ attr_accessor :id
29073
+
29074
+ # [Output Only] The type of the resource. Always compute#nodeTemplate for node
29075
+ # templates.
29076
+ # Corresponds to the JSON property `kind`
29077
+ # @return [String]
29078
+ attr_accessor :kind
29079
+
29080
+ # The name of the resource, provided by the client when initially creating the
29081
+ # resource. The resource name must be 1-63 characters long, and comply with
29082
+ # RFC1035. Specifically, the name must be 1-63 characters long and match the
29083
+ # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
29084
+ # character must be a lowercase letter, and all following characters must be a
29085
+ # dash, lowercase letter, or digit, except the last character, which cannot be a
29086
+ # dash.
29087
+ # Corresponds to the JSON property `name`
29088
+ # @return [String]
29089
+ attr_accessor :name
29090
+
29091
+ # Labels to use for node affinity, which will be used in instance scheduling.
29092
+ # Corresponds to the JSON property `nodeAffinityLabels`
29093
+ # @return [Hash<String,String>]
29094
+ attr_accessor :node_affinity_labels
29095
+
29096
+ # The node type to use for nodes group that are created from this template.
29097
+ # Corresponds to the JSON property `nodeType`
29098
+ # @return [String]
29099
+ attr_accessor :node_type
29100
+
29101
+ # Do not use. Instead, use the node_type property.
29102
+ # Corresponds to the JSON property `nodeTypeFlexibility`
29103
+ # @return [Google::Apis::ComputeAlpha::NodeTemplateNodeTypeFlexibility]
29104
+ attr_accessor :node_type_flexibility
29105
+
29106
+ # [Output Only] The name of the region where the node template resides, such as
29107
+ # us-central1.
29108
+ # Corresponds to the JSON property `region`
29109
+ # @return [String]
29110
+ attr_accessor :region
29111
+
29112
+ # [Output Only] Server-defined URL for the resource.
29113
+ # Corresponds to the JSON property `selfLink`
29114
+ # @return [String]
29115
+ attr_accessor :self_link
29116
+
29117
+ # [Output Only] Server-defined URL for this resource with the resource id.
29118
+ # Corresponds to the JSON property `selfLinkWithId`
29119
+ # @return [String]
29120
+ attr_accessor :self_link_with_id
29121
+
29122
+ # Sets the binding properties for the physical server. Valid values include: - *[
29123
+ # Default]* RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical
29124
+ # server - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical
29125
+ # server whenever possible See Sole-tenant node options for more information.
29126
+ # Corresponds to the JSON property `serverBinding`
29127
+ # @return [Google::Apis::ComputeAlpha::ServerBinding]
29128
+ attr_accessor :server_binding
29129
+
29130
+ # [Output Only] The status of the node template. One of the following values:
29131
+ # CREATING, READY, and DELETING.
29132
+ # Corresponds to the JSON property `status`
29133
+ # @return [String]
29134
+ attr_accessor :status
29135
+
29136
+ # [Output Only] An optional, human-readable explanation of the status.
29137
+ # Corresponds to the JSON property `statusMessage`
29138
+ # @return [String]
29139
+ attr_accessor :status_message
29140
+
29141
+ def initialize(**args)
29142
+ update!(**args)
29143
+ end
29144
+
29145
+ # Update properties of this object
29146
+ def update!(**args)
29147
+ @accelerators = args[:accelerators] if args.key?(:accelerators)
29148
+ @cpu_overcommit_type = args[:cpu_overcommit_type] if args.key?(:cpu_overcommit_type)
29149
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
29150
+ @description = args[:description] if args.key?(:description)
29151
+ @disks = args[:disks] if args.key?(:disks)
29152
+ @id = args[:id] if args.key?(:id)
29153
+ @kind = args[:kind] if args.key?(:kind)
29154
+ @name = args[:name] if args.key?(:name)
29155
+ @node_affinity_labels = args[:node_affinity_labels] if args.key?(:node_affinity_labels)
29156
+ @node_type = args[:node_type] if args.key?(:node_type)
29157
+ @node_type_flexibility = args[:node_type_flexibility] if args.key?(:node_type_flexibility)
29158
+ @region = args[:region] if args.key?(:region)
29159
+ @self_link = args[:self_link] if args.key?(:self_link)
29160
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
29161
+ @server_binding = args[:server_binding] if args.key?(:server_binding)
29162
+ @status = args[:status] if args.key?(:status)
29163
+ @status_message = args[:status_message] if args.key?(:status_message)
29164
+ end
29165
+ end
29166
+
29167
+ #
29168
+ class NodeTemplateAggregatedList
29169
+ include Google::Apis::Core::Hashable
29170
+
29171
+ # [Output Only] Unique identifier for the resource; defined by the server.
29172
+ # Corresponds to the JSON property `id`
29173
+ # @return [String]
29174
+ attr_accessor :id
29175
+
29176
+ # A list of NodeTemplatesScopedList resources.
29177
+ # Corresponds to the JSON property `items`
29178
+ # @return [Hash<String,Google::Apis::ComputeAlpha::NodeTemplatesScopedList>]
29179
+ attr_accessor :items
29180
+
29181
+ # [Output Only] Type of resource.Always compute#nodeTemplateAggregatedList for
29182
+ # aggregated lists of node templates.
29183
+ # Corresponds to the JSON property `kind`
29184
+ # @return [String]
29185
+ attr_accessor :kind
29186
+
29187
+ # [Output Only] This token allows you to get the next page of results for list
29188
+ # requests. If the number of results is larger than maxResults, use the
29189
+ # nextPageToken as a value for the query parameter pageToken in the next list
29190
+ # request. Subsequent list requests will have their own nextPageToken to
29191
+ # continue paging through the results.
29192
+ # Corresponds to the JSON property `nextPageToken`
29193
+ # @return [String]
29194
+ attr_accessor :next_page_token
29195
+
29196
+ # [Output Only] Server-defined URL for this resource.
29197
+ # Corresponds to the JSON property `selfLink`
29198
+ # @return [String]
29199
+ attr_accessor :self_link
29200
+
29201
+ # [Output Only] Unreachable resources.
29202
+ # Corresponds to the JSON property `unreachables`
29203
+ # @return [Array<String>]
29204
+ attr_accessor :unreachables
29205
+
29206
+ # [Output Only] Informational warning message.
29207
+ # Corresponds to the JSON property `warning`
29208
+ # @return [Google::Apis::ComputeAlpha::NodeTemplateAggregatedList::Warning]
29209
+ attr_accessor :warning
29210
+
29211
+ def initialize(**args)
29212
+ update!(**args)
29213
+ end
29214
+
29215
+ # Update properties of this object
29216
+ def update!(**args)
29217
+ @id = args[:id] if args.key?(:id)
29218
+ @items = args[:items] if args.key?(:items)
29219
+ @kind = args[:kind] if args.key?(:kind)
29220
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
29221
+ @self_link = args[:self_link] if args.key?(:self_link)
29222
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
29223
+ @warning = args[:warning] if args.key?(:warning)
29224
+ end
29225
+
29226
+ # [Output Only] Informational warning message.
29227
+ class Warning
29228
+ include Google::Apis::Core::Hashable
29229
+
29230
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
29231
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
29232
+ # Corresponds to the JSON property `code`
29233
+ # @return [String]
29234
+ attr_accessor :code
29235
+
29236
+ # [Output Only] Metadata about this warning in key: value format. For example: "
29237
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
29238
+ # Corresponds to the JSON property `data`
29239
+ # @return [Array<Google::Apis::ComputeAlpha::NodeTemplateAggregatedList::Warning::Datum>]
29012
29240
  attr_accessor :data
29013
29241
 
29014
29242
  # [Output Only] A human-readable description of the warning code.
@@ -30259,6 +30487,11 @@ module Google
30259
30487
  # @return [String]
30260
30488
  attr_accessor :insert_time
30261
30489
 
30490
+ #
30491
+ # Corresponds to the JSON property `instancesBulkInsertOperationMetadata`
30492
+ # @return [Google::Apis::ComputeAlpha::InstancesBulkInsertOperationMetadata]
30493
+ attr_accessor :instances_bulk_insert_operation_metadata
30494
+
30262
30495
  # [Output Only] Type of the resource. Always `compute#operation` for Operation
30263
30496
  # resources.
30264
30497
  # Corresponds to the JSON property `kind`
@@ -30377,6 +30610,7 @@ module Google
30377
30610
  @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code)
30378
30611
  @id = args[:id] if args.key?(:id)
30379
30612
  @insert_time = args[:insert_time] if args.key?(:insert_time)
30613
+ @instances_bulk_insert_operation_metadata = args[:instances_bulk_insert_operation_metadata] if args.key?(:instances_bulk_insert_operation_metadata)
30380
30614
  @kind = args[:kind] if args.key?(:kind)
30381
30615
  @name = args[:name] if args.key?(:name)
30382
30616
  @operation_group_id = args[:operation_group_id] if args.key?(:operation_group_id)
@@ -37707,11 +37941,6 @@ module Google
37707
37941
  # @return [Hash<String,Google::Apis::ComputeAlpha::ResourceStatusServiceIntegrationStatus>]
37708
37942
  attr_accessor :service_integration_statuses
37709
37943
 
37710
- #
37711
- # Corresponds to the JSON property `upcomingMaintenance`
37712
- # @return [Google::Apis::ComputeAlpha::ResourceStatusUpcomingMaintenance]
37713
- attr_accessor :upcoming_maintenance
37714
-
37715
37944
  def initialize(**args)
37716
37945
  update!(**args)
37717
37946
  end
@@ -37721,7 +37950,6 @@ module Google
37721
37950
  @physical_host = args[:physical_host] if args.key?(:physical_host)
37722
37951
  @scheduling = args[:scheduling] if args.key?(:scheduling)
37723
37952
  @service_integration_statuses = args[:service_integration_statuses] if args.key?(:service_integration_statuses)
37724
- @upcoming_maintenance = args[:upcoming_maintenance] if args.key?(:upcoming_maintenance)
37725
37953
  end
37726
37954
  end
37727
37955
 
@@ -37805,27 +38033,6 @@ module Google
37805
38033
  end
37806
38034
  end
37807
38035
 
37808
- #
37809
- class ResourceStatusUpcomingMaintenance
37810
- include Google::Apis::Core::Hashable
37811
-
37812
- # Indicates if the maintenance can be customer triggered. See go/sf-ctm-design
37813
- # for more details
37814
- # Corresponds to the JSON property `canReschedule`
37815
- # @return [Boolean]
37816
- attr_accessor :can_reschedule
37817
- alias_method :can_reschedule?, :can_reschedule
37818
-
37819
- def initialize(**args)
37820
- update!(**args)
37821
- end
37822
-
37823
- # Update properties of this object
37824
- def update!(**args)
37825
- @can_reschedule = args[:can_reschedule] if args.key?(:can_reschedule)
37826
- end
37827
- end
37828
-
37829
38036
  # A rollout policy configuration.
37830
38037
  class RolloutPolicy
37831
38038
  include Google::Apis::Core::Hashable
@@ -37930,6 +38137,12 @@ module Google
37930
38137
  # @return [String]
37931
38138
  attr_accessor :next_hop_gateway
37932
38139
 
38140
+ # [Output Only] The full resource name of the network connectivity center hub
38141
+ # that should handle matching packets.
38142
+ # Corresponds to the JSON property `nextHopHub`
38143
+ # @return [String]
38144
+ attr_accessor :next_hop_hub
38145
+
37933
38146
  # The URL to a forwarding rule of type loadBalancingScheme=INTERNAL that should
37934
38147
  # handle matching packets or the IP address of the forwarding Rule. For example,
37935
38148
  # the following are all valid URLs: - 10.128.0.56 - https://www.googleapis.com/
@@ -38036,6 +38249,7 @@ module Google
38036
38249
  @name = args[:name] if args.key?(:name)
38037
38250
  @network = args[:network] if args.key?(:network)
38038
38251
  @next_hop_gateway = args[:next_hop_gateway] if args.key?(:next_hop_gateway)
38252
+ @next_hop_hub = args[:next_hop_hub] if args.key?(:next_hop_hub)
38039
38253
  @next_hop_ilb = args[:next_hop_ilb] if args.key?(:next_hop_ilb)
38040
38254
  @next_hop_instance = args[:next_hop_instance] if args.key?(:next_hop_instance)
38041
38255
  @next_hop_interconnect_attachment = args[:next_hop_interconnect_attachment] if args.key?(:next_hop_interconnect_attachment)
@@ -38631,14 +38845,16 @@ module Google
38631
38845
  # @return [Google::Apis::ComputeAlpha::RouterBgpPeerBfd]
38632
38846
  attr_accessor :bfd
38633
38847
 
38634
- # User-defined Custom Learned Route IP range list for a BGP session.
38848
+ # A list of user-defined custom learned route IP address ranges for a BGP
38849
+ # session.
38635
38850
  # Corresponds to the JSON property `customLearnedIpRanges`
38636
38851
  # @return [Array<Google::Apis::ComputeAlpha::RouterBgpPeerCustomLearnedIpRange>]
38637
38852
  attr_accessor :custom_learned_ip_ranges
38638
38853
 
38639
- # User-defined Custom Learned Route Priority for a BGP session. This will be
38640
- # applied to all Custom Learned Route ranges of the BGP session, if not given,
38641
- # google-managed priority of 100 is used.
38854
+ # The user-defined custom learned route priority for a BGP session. This value
38855
+ # is applied to all custom learned route ranges for the session. You can choose
38856
+ # a value from `0` to `65335`. If you don't provide a value, Google Cloud
38857
+ # assigns a priority of `100` to the ranges.
38642
38858
  # Corresponds to the JSON property `customLearnedRoutePriority`
38643
38859
  # @return [Fixnum]
38644
38860
  attr_accessor :custom_learned_route_priority
@@ -38842,9 +39058,9 @@ module Google
38842
39058
  class RouterBgpPeerCustomLearnedIpRange
38843
39059
  include Google::Apis::Core::Hashable
38844
39060
 
38845
- # The Custom Learned Route IP range. Must be a valid CIDR-formatted prefix. If
38846
- # an IP is provided without a subnet mask, it is interpreted as a /32 singular
38847
- # IP range for IPv4, and /128 for IPv6.
39061
+ # The custom learned route IP address range. Must be a valid CIDR-formatted
39062
+ # prefix. If an IP address is provided without a subnet mask, it is interpreted
39063
+ # as, for IPv4, a `/32` singular IP address range, and, for IPv6, `/128`.
38848
39064
  # Corresponds to the JSON property `range`
38849
39065
  # @return [String]
38850
39066
  attr_accessor :range
@@ -40898,7 +41114,8 @@ module Google
40898
41114
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyAdaptiveProtectionConfigAutoDeployConfig]
40899
41115
  attr_accessor :auto_deploy_config
40900
41116
 
40901
- # Configuration options for L7 DDoS detection.
41117
+ # Configuration options for L7 DDoS detection. This field is only supported in
41118
+ # Global Security Policies of type CLOUD_ARMOR.
40902
41119
  # Corresponds to the JSON property `layer7DdosDefenseConfig`
40903
41120
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig]
40904
41121
  attr_accessor :layer7_ddos_defense_config
@@ -40951,18 +41168,21 @@ module Google
40951
41168
  end
40952
41169
  end
40953
41170
 
40954
- # Configuration options for L7 DDoS detection.
41171
+ # Configuration options for L7 DDoS detection. This field is only supported in
41172
+ # Global Security Policies of type CLOUD_ARMOR.
40955
41173
  class SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
40956
41174
  include Google::Apis::Core::Hashable
40957
41175
 
40958
- # If set to true, enables CAAP for L7 DDoS detection.
41176
+ # If set to true, enables CAAP for L7 DDoS detection. This field is only
41177
+ # supported in Global Security Policies of type CLOUD_ARMOR.
40959
41178
  # Corresponds to the JSON property `enable`
40960
41179
  # @return [Boolean]
40961
41180
  attr_accessor :enable
40962
41181
  alias_method :enable?, :enable
40963
41182
 
40964
41183
  # Rule visibility can be one of the following: STANDARD - opaque rules. (default)
40965
- # PREMIUM - transparent rules.
41184
+ # PREMIUM - transparent rules. This field is only supported in Global Security
41185
+ # Policies of type CLOUD_ARMOR.
40966
41186
  # Corresponds to the JSON property `ruleVisibility`
40967
41187
  # @return [String]
40968
41188
  attr_accessor :rule_visibility
@@ -40998,6 +41218,12 @@ module Google
40998
41218
  # @return [String]
40999
41219
  attr_accessor :log_level
41000
41220
 
41221
+ # An optional list of case-insensitive request header names to use for resolving
41222
+ # the callers client IP address.
41223
+ # Corresponds to the JSON property `userIpRequestHeaders`
41224
+ # @return [Array<String>]
41225
+ attr_accessor :user_ip_request_headers
41226
+
41001
41227
  def initialize(**args)
41002
41228
  update!(**args)
41003
41229
  end
@@ -41007,6 +41233,7 @@ module Google
41007
41233
  @json_custom_config = args[:json_custom_config] if args.key?(:json_custom_config)
41008
41234
  @json_parsing = args[:json_parsing] if args.key?(:json_parsing)
41009
41235
  @log_level = args[:log_level] if args.key?(:log_level)
41236
+ @user_ip_request_headers = args[:user_ip_request_headers] if args.key?(:user_ip_request_headers)
41010
41237
  end
41011
41238
  end
41012
41239
 
@@ -41241,7 +41468,8 @@ module Google
41241
41468
  # using the redirect action with the type of GOOGLE_RECAPTCHA under the security
41242
41469
  # policy. The specified site key needs to be created from the reCAPTCHA API. The
41243
41470
  # user is responsible for the validity of the specified site key. If not
41244
- # specified, a Google-managed site key is used.
41471
+ # specified, a Google-managed site key is used. This field is only supported in
41472
+ # Global Security Policies of type CLOUD_ARMOR.
41245
41473
  # Corresponds to the JSON property `redirectSiteKey`
41246
41474
  # @return [String]
41247
41475
  attr_accessor :redirect_site_key
@@ -41289,7 +41517,8 @@ module Google
41289
41517
  # rate_limit_options to be set. - redirect: redirect to a different target. This
41290
41518
  # can either be an internal reCAPTCHA redirect, or an external URL-based
41291
41519
  # redirect via a 302 response. Parameters for this action can be configured via
41292
- # redirectOptions. - throttle: limit client traffic to the configured threshold.
41520
+ # redirectOptions. This action is only supported in Global Security Policies of
41521
+ # type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold.
41293
41522
  # Configure parameters for this action in rateLimitOptions. Requires
41294
41523
  # rate_limit_options to be set for this.
41295
41524
  # Corresponds to the JSON property `action`
@@ -41318,7 +41547,8 @@ module Google
41318
41547
  attr_accessor :enable_logging
41319
41548
  alias_method :enable_logging?, :enable_logging
41320
41549
 
41321
- # Optional, additional actions that are performed on headers.
41550
+ # Optional, additional actions that are performed on headers. This field is only
41551
+ # supported in Global Security Policies of type CLOUD_ARMOR.
41322
41552
  # Corresponds to the JSON property `headerAction`
41323
41553
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleHttpHeaderAction]
41324
41554
  attr_accessor :header_action
@@ -41369,7 +41599,8 @@ module Google
41369
41599
  attr_accessor :rate_limit_options
41370
41600
 
41371
41601
  # Parameters defining the redirect action. Cannot be specified for any other
41372
- # actions.
41602
+ # actions. This field is only supported in Global Security Policies of type
41603
+ # CLOUD_ARMOR.
41373
41604
  # Corresponds to the JSON property `redirectOptions`
41374
41605
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRedirectOptions]
41375
41606
  attr_accessor :redirect_options
@@ -41904,7 +42135,8 @@ module Google
41904
42135
  # to either deny with a specified HTTP response code, or redirect to a
41905
42136
  # different endpoint. Valid options are `deny(STATUS)`, where valid values for `
41906
42137
  # STATUS` are 403, 404, 429, and 502, and `redirect`, where the redirect
41907
- # parameters come from `exceedRedirectOptions` below.
42138
+ # parameters come from `exceedRedirectOptions` below. The `redirect` action is
42139
+ # only supported in Global Security Policies of type CLOUD_ARMOR.
41908
42140
  # Corresponds to the JSON property `exceedAction`
41909
42141
  # @return [String]
41910
42142
  attr_accessor :exceed_action
@@ -41915,7 +42147,8 @@ module Google
41915
42147
  attr_accessor :exceed_action_rpc_status
41916
42148
 
41917
42149
  # Parameters defining the redirect action that is used as the exceed action.
41918
- # Cannot be specified if the exceed action is not redirect.
42150
+ # Cannot be specified if the exceed action is not redirect. This field is only
42151
+ # supported in Global Security Policies of type CLOUD_ARMOR.
41919
42152
  # Corresponds to the JSON property `exceedRedirectOptions`
41920
42153
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRedirectOptions]
41921
42154
  attr_accessor :exceed_redirect_options
@@ -42329,7 +42562,7 @@ module Google
42329
42562
  # Represents a ServiceAttachment resource. A service attachment represents a
42330
42563
  # service that a producer has exposed. It encapsulates the load balancer which
42331
42564
  # fronts the service runs and a list of NAT IP ranges that the producers uses to
42332
- # represent the consumers connecting to the service. next tag = 20
42565
+ # represent the consumers connecting to the service.
42333
42566
  class ServiceAttachment
42334
42567
  include Google::Apis::Core::Hashable
42335
42568
 
@@ -42433,6 +42666,20 @@ module Google
42433
42666
  # @return [Google::Apis::ComputeAlpha::Uint128]
42434
42667
  attr_accessor :psc_service_attachment_id
42435
42668
 
42669
+ # This flag determines whether a consumer accept/reject list change can
42670
+ # reconcile the statuses of existing ACCEPTED or REJECTED PSC endpoints. - If
42671
+ # false, connection policy update will only affect existing PENDING PSC
42672
+ # endpoints. Existing ACCEPTED/REJECTED endpoints will remain untouched
42673
+ # regardless how the connection policy is modified . - If true, update will
42674
+ # affect both PENDING and ACCEPTED/REJECTED PSC endpoints. For example, an
42675
+ # ACCEPTED PSC endpoint will be moved to REJECTED if its project is added to the
42676
+ # reject list. For newly created service attachment, this boolean defaults to
42677
+ # true.
42678
+ # Corresponds to the JSON property `reconcileConnections`
42679
+ # @return [Boolean]
42680
+ attr_accessor :reconcile_connections
42681
+ alias_method :reconcile_connections?, :reconcile_connections
42682
+
42436
42683
  # [Output Only] URL of the region where the service attachment resides. This
42437
42684
  # field applies only to the region resource. You must specify this field as part
42438
42685
  # of the HTTP request URL. It is not settable as a field in the request body.
@@ -42472,6 +42719,7 @@ module Google
42472
42719
  @nat_subnets = args[:nat_subnets] if args.key?(:nat_subnets)
42473
42720
  @producer_forwarding_rule = args[:producer_forwarding_rule] if args.key?(:producer_forwarding_rule)
42474
42721
  @psc_service_attachment_id = args[:psc_service_attachment_id] if args.key?(:psc_service_attachment_id)
42722
+ @reconcile_connections = args[:reconcile_connections] if args.key?(:reconcile_connections)
42475
42723
  @region = args[:region] if args.key?(:region)
42476
42724
  @self_link = args[:self_link] if args.key?(:self_link)
42477
42725
  @target_service = args[:target_service] if args.key?(:target_service)
@@ -42955,11 +43203,6 @@ module Google
42955
43203
  # @return [Google::Apis::ComputeAlpha::Status]
42956
43204
  attr_accessor :error
42957
43205
 
42958
- #
42959
- # Corresponds to the JSON property `operation`
42960
- # @return [String]
42961
- attr_accessor :operation
42962
-
42963
43206
  #
42964
43207
  # Corresponds to the JSON property `state`
42965
43208
  # @return [String]
@@ -42972,7 +43215,6 @@ module Google
42972
43215
  # Update properties of this object
42973
43216
  def update!(**args)
42974
43217
  @error = args[:error] if args.key?(:error)
42975
- @operation = args[:operation] if args.key?(:operation)
42976
43218
  @state = args[:state] if args.key?(:state)
42977
43219
  end
42978
43220
  end
@@ -44793,108 +45035,812 @@ module Google
44793
45035
  end
44794
45036
  end
44795
45037
 
44796
- # Represents an SSL Policy resource. Use SSL policies to control the SSL
44797
- # features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy
44798
- # load balancer. For more information, read SSL Policy Concepts.
44799
- class SslPolicy
45038
+ # Represents an SSL Policy resource. Use SSL policies to control the SSL
45039
+ # features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy
45040
+ # load balancer. For more information, read SSL Policy Concepts.
45041
+ class SslPolicy
45042
+ include Google::Apis::Core::Hashable
45043
+
45044
+ # [Output Only] Creation timestamp in RFC3339 text format.
45045
+ # Corresponds to the JSON property `creationTimestamp`
45046
+ # @return [String]
45047
+ attr_accessor :creation_timestamp
45048
+
45049
+ # A list of features enabled when the selected profile is CUSTOM. The method
45050
+ # returns the set of features that can be specified in this list. This field
45051
+ # must be empty if the profile is not CUSTOM.
45052
+ # Corresponds to the JSON property `customFeatures`
45053
+ # @return [Array<String>]
45054
+ attr_accessor :custom_features
45055
+
45056
+ # An optional description of this resource. Provide this property when you
45057
+ # create the resource.
45058
+ # Corresponds to the JSON property `description`
45059
+ # @return [String]
45060
+ attr_accessor :description
45061
+
45062
+ # [Output Only] The list of features enabled in the SSL policy.
45063
+ # Corresponds to the JSON property `enabledFeatures`
45064
+ # @return [Array<String>]
45065
+ attr_accessor :enabled_features
45066
+
45067
+ # Fingerprint of this resource. A hash of the contents stored in this object.
45068
+ # This field is used in optimistic locking. This field will be ignored when
45069
+ # inserting a SslPolicy. An up-to-date fingerprint must be provided in order to
45070
+ # update the SslPolicy, otherwise the request will fail with error 412
45071
+ # conditionNotMet. To see the latest fingerprint, make a get() request to
45072
+ # retrieve an SslPolicy.
45073
+ # Corresponds to the JSON property `fingerprint`
45074
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
45075
+ # @return [String]
45076
+ attr_accessor :fingerprint
45077
+
45078
+ # [Output Only] The unique identifier for the resource. This identifier is
45079
+ # defined by the server.
45080
+ # Corresponds to the JSON property `id`
45081
+ # @return [Fixnum]
45082
+ attr_accessor :id
45083
+
45084
+ # [Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.
45085
+ # Corresponds to the JSON property `kind`
45086
+ # @return [String]
45087
+ attr_accessor :kind
45088
+
45089
+ # The minimum version of SSL protocol that can be used by the clients to
45090
+ # establish a connection with the load balancer. This can be one of TLS_1_0,
45091
+ # TLS_1_1, TLS_1_2.
45092
+ # Corresponds to the JSON property `minTlsVersion`
45093
+ # @return [String]
45094
+ attr_accessor :min_tls_version
45095
+
45096
+ # Name of the resource. The name must be 1-63 characters long, and comply with
45097
+ # RFC1035. Specifically, the name must be 1-63 characters long and match the
45098
+ # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
45099
+ # character must be a lowercase letter, and all following characters must be a
45100
+ # dash, lowercase letter, or digit, except the last character, which cannot be a
45101
+ # dash.
45102
+ # Corresponds to the JSON property `name`
45103
+ # @return [String]
45104
+ attr_accessor :name
45105
+
45106
+ # Profile specifies the set of SSL features that can be used by the load
45107
+ # balancer when negotiating SSL with clients. This can be one of COMPATIBLE,
45108
+ # MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to
45109
+ # enable must be specified in the customFeatures field.
45110
+ # Corresponds to the JSON property `profile`
45111
+ # @return [String]
45112
+ attr_accessor :profile
45113
+
45114
+ # [Output Only] URL of the region where the regional SSL policy resides. This
45115
+ # field is not applicable to global SSL policies.
45116
+ # Corresponds to the JSON property `region`
45117
+ # @return [String]
45118
+ attr_accessor :region
45119
+
45120
+ # [Output Only] Server-defined URL for the resource.
45121
+ # Corresponds to the JSON property `selfLink`
45122
+ # @return [String]
45123
+ attr_accessor :self_link
45124
+
45125
+ # [Output Only] Server-defined URL for this resource with the resource id.
45126
+ # Corresponds to the JSON property `selfLinkWithId`
45127
+ # @return [String]
45128
+ attr_accessor :self_link_with_id
45129
+
45130
+ # The TLS settings for the server.
45131
+ # Corresponds to the JSON property `tlsSettings`
45132
+ # @return [Google::Apis::ComputeAlpha::ServerTlsSettings]
45133
+ attr_accessor :tls_settings
45134
+
45135
+ # [Output Only] If potential misconfigurations are detected for this SSL policy,
45136
+ # this field will be populated with warning messages.
45137
+ # Corresponds to the JSON property `warnings`
45138
+ # @return [Array<Google::Apis::ComputeAlpha::SslPolicy::Warning>]
45139
+ attr_accessor :warnings
45140
+
45141
+ def initialize(**args)
45142
+ update!(**args)
45143
+ end
45144
+
45145
+ # Update properties of this object
45146
+ def update!(**args)
45147
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
45148
+ @custom_features = args[:custom_features] if args.key?(:custom_features)
45149
+ @description = args[:description] if args.key?(:description)
45150
+ @enabled_features = args[:enabled_features] if args.key?(:enabled_features)
45151
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
45152
+ @id = args[:id] if args.key?(:id)
45153
+ @kind = args[:kind] if args.key?(:kind)
45154
+ @min_tls_version = args[:min_tls_version] if args.key?(:min_tls_version)
45155
+ @name = args[:name] if args.key?(:name)
45156
+ @profile = args[:profile] if args.key?(:profile)
45157
+ @region = args[:region] if args.key?(:region)
45158
+ @self_link = args[:self_link] if args.key?(:self_link)
45159
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
45160
+ @tls_settings = args[:tls_settings] if args.key?(:tls_settings)
45161
+ @warnings = args[:warnings] if args.key?(:warnings)
45162
+ end
45163
+
45164
+ #
45165
+ class Warning
45166
+ include Google::Apis::Core::Hashable
45167
+
45168
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
45169
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
45170
+ # Corresponds to the JSON property `code`
45171
+ # @return [String]
45172
+ attr_accessor :code
45173
+
45174
+ # [Output Only] Metadata about this warning in key: value format. For example: "
45175
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
45176
+ # Corresponds to the JSON property `data`
45177
+ # @return [Array<Google::Apis::ComputeAlpha::SslPolicy::Warning::Datum>]
45178
+ attr_accessor :data
45179
+
45180
+ # [Output Only] A human-readable description of the warning code.
45181
+ # Corresponds to the JSON property `message`
45182
+ # @return [String]
45183
+ attr_accessor :message
45184
+
45185
+ def initialize(**args)
45186
+ update!(**args)
45187
+ end
45188
+
45189
+ # Update properties of this object
45190
+ def update!(**args)
45191
+ @code = args[:code] if args.key?(:code)
45192
+ @data = args[:data] if args.key?(:data)
45193
+ @message = args[:message] if args.key?(:message)
45194
+ end
45195
+
45196
+ #
45197
+ class Datum
45198
+ include Google::Apis::Core::Hashable
45199
+
45200
+ # [Output Only] A key that provides more detail on the warning being returned.
45201
+ # For example, for warnings where there are no results in a list request for a
45202
+ # particular zone, this key might be scope and the key value might be the zone
45203
+ # name. Other examples might be a key indicating a deprecated resource and a
45204
+ # suggested replacement, or a warning about invalid network settings (for
45205
+ # example, if an instance attempts to perform IP forwarding but is not enabled
45206
+ # for IP forwarding).
45207
+ # Corresponds to the JSON property `key`
45208
+ # @return [String]
45209
+ attr_accessor :key
45210
+
45211
+ # [Output Only] A warning data value corresponding to the key.
45212
+ # Corresponds to the JSON property `value`
45213
+ # @return [String]
45214
+ attr_accessor :value
45215
+
45216
+ def initialize(**args)
45217
+ update!(**args)
45218
+ end
45219
+
45220
+ # Update properties of this object
45221
+ def update!(**args)
45222
+ @key = args[:key] if args.key?(:key)
45223
+ @value = args[:value] if args.key?(:value)
45224
+ end
45225
+ end
45226
+ end
45227
+ end
45228
+
45229
+ #
45230
+ class SslPolicyReference
45231
+ include Google::Apis::Core::Hashable
45232
+
45233
+ # URL of the SSL policy resource. Set this to empty string to clear any existing
45234
+ # SSL policy associated with the target proxy resource.
45235
+ # Corresponds to the JSON property `sslPolicy`
45236
+ # @return [String]
45237
+ attr_accessor :ssl_policy
45238
+
45239
+ def initialize(**args)
45240
+ update!(**args)
45241
+ end
45242
+
45243
+ # Update properties of this object
45244
+ def update!(**args)
45245
+ @ssl_policy = args[:ssl_policy] if args.key?(:ssl_policy)
45246
+ end
45247
+ end
45248
+
45249
+ #
45250
+ class StatefulPolicy
45251
+ include Google::Apis::Core::Hashable
45252
+
45253
+ # Configuration of preserved resources.
45254
+ # Corresponds to the JSON property `preservedState`
45255
+ # @return [Google::Apis::ComputeAlpha::StatefulPolicyPreservedState]
45256
+ attr_accessor :preserved_state
45257
+
45258
+ def initialize(**args)
45259
+ update!(**args)
45260
+ end
45261
+
45262
+ # Update properties of this object
45263
+ def update!(**args)
45264
+ @preserved_state = args[:preserved_state] if args.key?(:preserved_state)
45265
+ end
45266
+ end
45267
+
45268
+ # Configuration of preserved resources.
45269
+ class StatefulPolicyPreservedState
45270
+ include Google::Apis::Core::Hashable
45271
+
45272
+ # Disks created on the instances that will be preserved on instance delete,
45273
+ # update, etc. This map is keyed with the device names of the disks.
45274
+ # Corresponds to the JSON property `disks`
45275
+ # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateDiskDevice>]
45276
+ attr_accessor :disks
45277
+
45278
+ # External network IPs assigned to the instances that will be preserved on
45279
+ # instance delete, update, etc. This map is keyed with the network interface
45280
+ # name.
45281
+ # Corresponds to the JSON property `externalIPs`
45282
+ # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateNetworkIp>]
45283
+ attr_accessor :external_i_ps
45284
+
45285
+ # Internal network IPs assigned to the instances that will be preserved on
45286
+ # instance delete, update, etc. This map is keyed with the network interface
45287
+ # name.
45288
+ # Corresponds to the JSON property `internalIPs`
45289
+ # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateNetworkIp>]
45290
+ attr_accessor :internal_i_ps
45291
+
45292
+ def initialize(**args)
45293
+ update!(**args)
45294
+ end
45295
+
45296
+ # Update properties of this object
45297
+ def update!(**args)
45298
+ @disks = args[:disks] if args.key?(:disks)
45299
+ @external_i_ps = args[:external_i_ps] if args.key?(:external_i_ps)
45300
+ @internal_i_ps = args[:internal_i_ps] if args.key?(:internal_i_ps)
45301
+ end
45302
+ end
45303
+
45304
+ #
45305
+ class StatefulPolicyPreservedStateDiskDevice
45306
+ include Google::Apis::Core::Hashable
45307
+
45308
+ # These stateful disks will never be deleted during autohealing, update or VM
45309
+ # instance recreate operations. This flag is used to configure if the disk
45310
+ # should be deleted after it is no longer used by the group, e.g. when the given
45311
+ # instance or the whole group is deleted. Note: disks attached in READ_ONLY mode
45312
+ # cannot be auto-deleted.
45313
+ # Corresponds to the JSON property `autoDelete`
45314
+ # @return [String]
45315
+ attr_accessor :auto_delete
45316
+
45317
+ def initialize(**args)
45318
+ update!(**args)
45319
+ end
45320
+
45321
+ # Update properties of this object
45322
+ def update!(**args)
45323
+ @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
45324
+ end
45325
+ end
45326
+
45327
+ #
45328
+ class StatefulPolicyPreservedStateNetworkIp
45329
+ include Google::Apis::Core::Hashable
45330
+
45331
+ # These stateful IPs will never be released during autohealing, update or VM
45332
+ # instance recreate operations. This flag is used to configure if the IP
45333
+ # reservation should be deleted after it is no longer used by the group, e.g.
45334
+ # when the given instance or the whole group is deleted.
45335
+ # Corresponds to the JSON property `autoDelete`
45336
+ # @return [String]
45337
+ attr_accessor :auto_delete
45338
+
45339
+ def initialize(**args)
45340
+ update!(**args)
45341
+ end
45342
+
45343
+ # Update properties of this object
45344
+ def update!(**args)
45345
+ @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
45346
+ end
45347
+ end
45348
+
45349
+ # The `Status` type defines a logical error model that is suitable for different
45350
+ # programming environments, including REST APIs and RPC APIs. It is used by [
45351
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
45352
+ # data: error code, error message, and error details. You can find out more
45353
+ # about this error model and how to work with it in the [API Design Guide](https:
45354
+ # //cloud.google.com/apis/design/errors).
45355
+ class Status
45356
+ include Google::Apis::Core::Hashable
45357
+
45358
+ # The status code, which should be an enum value of google.rpc.Code.
45359
+ # Corresponds to the JSON property `code`
45360
+ # @return [Fixnum]
45361
+ attr_accessor :code
45362
+
45363
+ # A list of messages that carry the error details. There is a common set of
45364
+ # message types for APIs to use.
45365
+ # Corresponds to the JSON property `details`
45366
+ # @return [Array<Hash<String,Object>>]
45367
+ attr_accessor :details
45368
+
45369
+ # A developer-facing error message, which should be in English. Any user-facing
45370
+ # error message should be localized and sent in the google.rpc.Status.details
45371
+ # field, or localized by the client.
45372
+ # Corresponds to the JSON property `message`
45373
+ # @return [String]
45374
+ attr_accessor :message
45375
+
45376
+ def initialize(**args)
45377
+ update!(**args)
45378
+ end
45379
+
45380
+ # Update properties of this object
45381
+ def update!(**args)
45382
+ @code = args[:code] if args.key?(:code)
45383
+ @details = args[:details] if args.key?(:details)
45384
+ @message = args[:message] if args.key?(:message)
45385
+ end
45386
+ end
45387
+
45388
+ # Represents a zonal storage pool resource.
45389
+ class StoragePool
45390
+ include Google::Apis::Core::Hashable
45391
+
45392
+ # [Output Only] Creation timestamp in RFC3339 text format.
45393
+ # Corresponds to the JSON property `creationTimestamp`
45394
+ # @return [String]
45395
+ attr_accessor :creation_timestamp
45396
+
45397
+ # An optional description of this resource. Provide this property when you
45398
+ # create the resource.
45399
+ # Corresponds to the JSON property `description`
45400
+ # @return [String]
45401
+ attr_accessor :description
45402
+
45403
+ # [Output Only] The unique identifier for the resource. This identifier is
45404
+ # defined by the server.
45405
+ # Corresponds to the JSON property `id`
45406
+ # @return [Fixnum]
45407
+ attr_accessor :id
45408
+
45409
+ # [Output Only] Type of the resource. Always compute#storagePool for storage
45410
+ # pools.
45411
+ # Corresponds to the JSON property `kind`
45412
+ # @return [String]
45413
+ attr_accessor :kind
45414
+
45415
+ # A fingerprint for the labels being applied to this storage pool, which is
45416
+ # essentially a hash of the labels set used for optimistic locking. The
45417
+ # fingerprint is initially generated by Compute Engine and changes after every
45418
+ # request to modify or update labels. You must always provide an up-to-date
45419
+ # fingerprint hash in order to update or change labels, otherwise the request
45420
+ # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
45421
+ # a get() request to retrieve a storage pool.
45422
+ # Corresponds to the JSON property `labelFingerprint`
45423
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
45424
+ # @return [String]
45425
+ attr_accessor :label_fingerprint
45426
+
45427
+ # Labels to apply to this storage pool. These can be later modified by the
45428
+ # setLabels method.
45429
+ # Corresponds to the JSON property `labels`
45430
+ # @return [Hash<String,String>]
45431
+ attr_accessor :labels
45432
+
45433
+ # Name of the resource. Provided by the client when the resource is created. The
45434
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
45435
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
45436
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
45437
+ # and all following characters must be a dash, lowercase letter, or digit,
45438
+ # except the last character, which cannot be a dash.
45439
+ # Corresponds to the JSON property `name`
45440
+ # @return [String]
45441
+ attr_accessor :name
45442
+
45443
+ # Provsioned IOPS of the storage pool.
45444
+ # Corresponds to the JSON property `provisionedIops`
45445
+ # @return [Fixnum]
45446
+ attr_accessor :provisioned_iops
45447
+
45448
+ # [Output Only] Contains output only fields.
45449
+ # Corresponds to the JSON property `resourceStatus`
45450
+ # @return [Google::Apis::ComputeAlpha::StoragePoolResourceStatus]
45451
+ attr_accessor :resource_status
45452
+
45453
+ # [Output Only] Server-defined fully-qualified URL for this resource.
45454
+ # Corresponds to the JSON property `selfLink`
45455
+ # @return [String]
45456
+ attr_accessor :self_link
45457
+
45458
+ # [Output Only] Server-defined URL for this resource's resource id.
45459
+ # Corresponds to the JSON property `selfLinkWithId`
45460
+ # @return [String]
45461
+ attr_accessor :self_link_with_id
45462
+
45463
+ # Size, in GiB, of the storage pool.
45464
+ # Corresponds to the JSON property `sizeGb`
45465
+ # @return [Fixnum]
45466
+ attr_accessor :size_gb
45467
+
45468
+ # [Output Only] The status of storage pool creation. - CREATING: Storage pool is
45469
+ # provisioning. storagePool. - FAILED: Storage pool creation failed. - READY:
45470
+ # Storage pool is ready for use. - DELETING: Storage pool is deleting.
45471
+ # Corresponds to the JSON property `state`
45472
+ # @return [String]
45473
+ attr_accessor :state
45474
+
45475
+ # Type of the storage pool
45476
+ # Corresponds to the JSON property `type`
45477
+ # @return [String]
45478
+ attr_accessor :type
45479
+
45480
+ # [Output Only] URL of the zone where the storage pool resides. You must specify
45481
+ # this field as part of the HTTP request URL. It is not settable as a field in
45482
+ # the request body.
45483
+ # Corresponds to the JSON property `zone`
45484
+ # @return [String]
45485
+ attr_accessor :zone
45486
+
45487
+ def initialize(**args)
45488
+ update!(**args)
45489
+ end
45490
+
45491
+ # Update properties of this object
45492
+ def update!(**args)
45493
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
45494
+ @description = args[:description] if args.key?(:description)
45495
+ @id = args[:id] if args.key?(:id)
45496
+ @kind = args[:kind] if args.key?(:kind)
45497
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
45498
+ @labels = args[:labels] if args.key?(:labels)
45499
+ @name = args[:name] if args.key?(:name)
45500
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
45501
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
45502
+ @self_link = args[:self_link] if args.key?(:self_link)
45503
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
45504
+ @size_gb = args[:size_gb] if args.key?(:size_gb)
45505
+ @state = args[:state] if args.key?(:state)
45506
+ @type = args[:type] if args.key?(:type)
45507
+ @zone = args[:zone] if args.key?(:zone)
45508
+ end
45509
+ end
45510
+
45511
+ #
45512
+ class StoragePoolAggregatedList
45513
+ include Google::Apis::Core::Hashable
45514
+
45515
+ #
45516
+ # Corresponds to the JSON property `etag`
45517
+ # @return [String]
45518
+ attr_accessor :etag
45519
+
45520
+ # [Output Only] Unique identifier for the resource; defined by the server.
45521
+ # Corresponds to the JSON property `id`
45522
+ # @return [String]
45523
+ attr_accessor :id
45524
+
45525
+ # A list of StoragePoolsScopedList resources.
45526
+ # Corresponds to the JSON property `items`
45527
+ # @return [Hash<String,Google::Apis::ComputeAlpha::StoragePoolsScopedList>]
45528
+ attr_accessor :items
45529
+
45530
+ # [Output Only] Type of resource. Always compute#storagePoolAggregatedList for
45531
+ # aggregated lists of storage pools.
45532
+ # Corresponds to the JSON property `kind`
45533
+ # @return [String]
45534
+ attr_accessor :kind
45535
+
45536
+ # [Output Only] This token allows you to get the next page of results for list
45537
+ # requests. If the number of results is larger than maxResults, use the
45538
+ # nextPageToken as a value for the query parameter pageToken in the next list
45539
+ # request. Subsequent list requests will have their own nextPageToken to
45540
+ # continue paging through the results.
45541
+ # Corresponds to the JSON property `nextPageToken`
45542
+ # @return [String]
45543
+ attr_accessor :next_page_token
45544
+
45545
+ # [Output Only] Server-defined URL for this resource.
45546
+ # Corresponds to the JSON property `selfLink`
45547
+ # @return [String]
45548
+ attr_accessor :self_link
45549
+
45550
+ # [Output Only] Unreachable resources.
45551
+ # Corresponds to the JSON property `unreachables`
45552
+ # @return [Array<String>]
45553
+ attr_accessor :unreachables
45554
+
45555
+ # [Output Only] Informational warning message.
45556
+ # Corresponds to the JSON property `warning`
45557
+ # @return [Google::Apis::ComputeAlpha::StoragePoolAggregatedList::Warning]
45558
+ attr_accessor :warning
45559
+
45560
+ def initialize(**args)
45561
+ update!(**args)
45562
+ end
45563
+
45564
+ # Update properties of this object
45565
+ def update!(**args)
45566
+ @etag = args[:etag] if args.key?(:etag)
45567
+ @id = args[:id] if args.key?(:id)
45568
+ @items = args[:items] if args.key?(:items)
45569
+ @kind = args[:kind] if args.key?(:kind)
45570
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
45571
+ @self_link = args[:self_link] if args.key?(:self_link)
45572
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
45573
+ @warning = args[:warning] if args.key?(:warning)
45574
+ end
45575
+
45576
+ # [Output Only] Informational warning message.
45577
+ class Warning
45578
+ include Google::Apis::Core::Hashable
45579
+
45580
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
45581
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
45582
+ # Corresponds to the JSON property `code`
45583
+ # @return [String]
45584
+ attr_accessor :code
45585
+
45586
+ # [Output Only] Metadata about this warning in key: value format. For example: "
45587
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
45588
+ # Corresponds to the JSON property `data`
45589
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolAggregatedList::Warning::Datum>]
45590
+ attr_accessor :data
45591
+
45592
+ # [Output Only] A human-readable description of the warning code.
45593
+ # Corresponds to the JSON property `message`
45594
+ # @return [String]
45595
+ attr_accessor :message
45596
+
45597
+ def initialize(**args)
45598
+ update!(**args)
45599
+ end
45600
+
45601
+ # Update properties of this object
45602
+ def update!(**args)
45603
+ @code = args[:code] if args.key?(:code)
45604
+ @data = args[:data] if args.key?(:data)
45605
+ @message = args[:message] if args.key?(:message)
45606
+ end
45607
+
45608
+ #
45609
+ class Datum
45610
+ include Google::Apis::Core::Hashable
45611
+
45612
+ # [Output Only] A key that provides more detail on the warning being returned.
45613
+ # For example, for warnings where there are no results in a list request for a
45614
+ # particular zone, this key might be scope and the key value might be the zone
45615
+ # name. Other examples might be a key indicating a deprecated resource and a
45616
+ # suggested replacement, or a warning about invalid network settings (for
45617
+ # example, if an instance attempts to perform IP forwarding but is not enabled
45618
+ # for IP forwarding).
45619
+ # Corresponds to the JSON property `key`
45620
+ # @return [String]
45621
+ attr_accessor :key
45622
+
45623
+ # [Output Only] A warning data value corresponding to the key.
45624
+ # Corresponds to the JSON property `value`
45625
+ # @return [String]
45626
+ attr_accessor :value
45627
+
45628
+ def initialize(**args)
45629
+ update!(**args)
45630
+ end
45631
+
45632
+ # Update properties of this object
45633
+ def update!(**args)
45634
+ @key = args[:key] if args.key?(:key)
45635
+ @value = args[:value] if args.key?(:value)
45636
+ end
45637
+ end
45638
+ end
45639
+ end
45640
+
45641
+ # A list of StoragePool resources.
45642
+ class StoragePoolList
45643
+ include Google::Apis::Core::Hashable
45644
+
45645
+ #
45646
+ # Corresponds to the JSON property `etag`
45647
+ # @return [String]
45648
+ attr_accessor :etag
45649
+
45650
+ # [Output Only] Unique identifier for the resource; defined by the server.
45651
+ # Corresponds to the JSON property `id`
45652
+ # @return [String]
45653
+ attr_accessor :id
45654
+
45655
+ # A list of StoragePool resources.
45656
+ # Corresponds to the JSON property `items`
45657
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePool>]
45658
+ attr_accessor :items
45659
+
45660
+ # [Output Only] Type of resource. Always compute#storagePoolList for lists of
45661
+ # storagePools.
45662
+ # Corresponds to the JSON property `kind`
45663
+ # @return [String]
45664
+ attr_accessor :kind
45665
+
45666
+ # [Output Only] This token allows you to get the next page of results for list
45667
+ # requests. If the number of results is larger than maxResults, use the
45668
+ # nextPageToken as a value for the query parameter pageToken in the next list
45669
+ # request. Subsequent list requests will have their own nextPageToken to
45670
+ # continue paging through the results.
45671
+ # Corresponds to the JSON property `nextPageToken`
45672
+ # @return [String]
45673
+ attr_accessor :next_page_token
45674
+
45675
+ # [Output Only] Server-defined URL for this resource.
45676
+ # Corresponds to the JSON property `selfLink`
45677
+ # @return [String]
45678
+ attr_accessor :self_link
45679
+
45680
+ # [Output Only] Unreachable resources. end_interface:
45681
+ # MixerListResponseWithEtagBuilder
45682
+ # Corresponds to the JSON property `unreachables`
45683
+ # @return [Array<String>]
45684
+ attr_accessor :unreachables
45685
+
45686
+ # [Output Only] Informational warning message.
45687
+ # Corresponds to the JSON property `warning`
45688
+ # @return [Google::Apis::ComputeAlpha::StoragePoolList::Warning]
45689
+ attr_accessor :warning
45690
+
45691
+ def initialize(**args)
45692
+ update!(**args)
45693
+ end
45694
+
45695
+ # Update properties of this object
45696
+ def update!(**args)
45697
+ @etag = args[:etag] if args.key?(:etag)
45698
+ @id = args[:id] if args.key?(:id)
45699
+ @items = args[:items] if args.key?(:items)
45700
+ @kind = args[:kind] if args.key?(:kind)
45701
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
45702
+ @self_link = args[:self_link] if args.key?(:self_link)
45703
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
45704
+ @warning = args[:warning] if args.key?(:warning)
45705
+ end
45706
+
45707
+ # [Output Only] Informational warning message.
45708
+ class Warning
45709
+ include Google::Apis::Core::Hashable
45710
+
45711
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
45712
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
45713
+ # Corresponds to the JSON property `code`
45714
+ # @return [String]
45715
+ attr_accessor :code
45716
+
45717
+ # [Output Only] Metadata about this warning in key: value format. For example: "
45718
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
45719
+ # Corresponds to the JSON property `data`
45720
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolList::Warning::Datum>]
45721
+ attr_accessor :data
45722
+
45723
+ # [Output Only] A human-readable description of the warning code.
45724
+ # Corresponds to the JSON property `message`
45725
+ # @return [String]
45726
+ attr_accessor :message
45727
+
45728
+ def initialize(**args)
45729
+ update!(**args)
45730
+ end
45731
+
45732
+ # Update properties of this object
45733
+ def update!(**args)
45734
+ @code = args[:code] if args.key?(:code)
45735
+ @data = args[:data] if args.key?(:data)
45736
+ @message = args[:message] if args.key?(:message)
45737
+ end
45738
+
45739
+ #
45740
+ class Datum
45741
+ include Google::Apis::Core::Hashable
45742
+
45743
+ # [Output Only] A key that provides more detail on the warning being returned.
45744
+ # For example, for warnings where there are no results in a list request for a
45745
+ # particular zone, this key might be scope and the key value might be the zone
45746
+ # name. Other examples might be a key indicating a deprecated resource and a
45747
+ # suggested replacement, or a warning about invalid network settings (for
45748
+ # example, if an instance attempts to perform IP forwarding but is not enabled
45749
+ # for IP forwarding).
45750
+ # Corresponds to the JSON property `key`
45751
+ # @return [String]
45752
+ attr_accessor :key
45753
+
45754
+ # [Output Only] A warning data value corresponding to the key.
45755
+ # Corresponds to the JSON property `value`
45756
+ # @return [String]
45757
+ attr_accessor :value
45758
+
45759
+ def initialize(**args)
45760
+ update!(**args)
45761
+ end
45762
+
45763
+ # Update properties of this object
45764
+ def update!(**args)
45765
+ @key = args[:key] if args.key?(:key)
45766
+ @value = args[:value] if args.key?(:value)
45767
+ end
45768
+ end
45769
+ end
45770
+ end
45771
+
45772
+ # [Output Only] Contains output only fields.
45773
+ class StoragePoolResourceStatus
44800
45774
  include Google::Apis::Core::Hashable
44801
45775
 
44802
- # [Output Only] Creation timestamp in RFC3339 text format.
44803
- # Corresponds to the JSON property `creationTimestamp`
44804
- # @return [String]
44805
- attr_accessor :creation_timestamp
44806
-
44807
- # A list of features enabled when the selected profile is CUSTOM. The method
44808
- # returns the set of features that can be specified in this list. This field
44809
- # must be empty if the profile is not CUSTOM.
44810
- # Corresponds to the JSON property `customFeatures`
44811
- # @return [Array<String>]
44812
- attr_accessor :custom_features
44813
-
44814
- # An optional description of this resource. Provide this property when you
44815
- # create the resource.
44816
- # Corresponds to the JSON property `description`
44817
- # @return [String]
44818
- attr_accessor :description
45776
+ # [Output Only] Sum of all the disk' provisioned IOPS.
45777
+ # Corresponds to the JSON property `aggregateDiskProvisionedIops`
45778
+ # @return [Fixnum]
45779
+ attr_accessor :aggregate_disk_provisioned_iops
44819
45780
 
44820
- # [Output Only] The list of features enabled in the SSL policy.
44821
- # Corresponds to the JSON property `enabledFeatures`
44822
- # @return [Array<String>]
44823
- attr_accessor :enabled_features
45781
+ # [Output Only] Sum of all the capacity provisioned in disks in this storage
45782
+ # pool. A disk's provisioned capacity is the same as its total capacity.
45783
+ # Corresponds to the JSON property `aggregateDiskSizeGb`
45784
+ # @return [Fixnum]
45785
+ attr_accessor :aggregate_disk_size_gb
44824
45786
 
44825
- # Fingerprint of this resource. A hash of the contents stored in this object.
44826
- # This field is used in optimistic locking. This field will be ignored when
44827
- # inserting a SslPolicy. An up-to-date fingerprint must be provided in order to
44828
- # update the SslPolicy, otherwise the request will fail with error 412
44829
- # conditionNotMet. To see the latest fingerprint, make a get() request to
44830
- # retrieve an SslPolicy.
44831
- # Corresponds to the JSON property `fingerprint`
44832
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
45787
+ # [Output Only] Timestamp of the last successful resize in RFC3339 text format.
45788
+ # Corresponds to the JSON property `lastResizeTimestamp`
44833
45789
  # @return [String]
44834
- attr_accessor :fingerprint
45790
+ attr_accessor :last_resize_timestamp
44835
45791
 
44836
- # [Output Only] The unique identifier for the resource. This identifier is
44837
- # defined by the server.
44838
- # Corresponds to the JSON property `id`
45792
+ # [Output Only] Maximum allowed aggregate disk size in gigabytes.
45793
+ # Corresponds to the JSON property `maxAggregateDiskSizeGb`
44839
45794
  # @return [Fixnum]
44840
- attr_accessor :id
44841
-
44842
- # [Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.
44843
- # Corresponds to the JSON property `kind`
44844
- # @return [String]
44845
- attr_accessor :kind
45795
+ attr_accessor :max_aggregate_disk_size_gb
44846
45796
 
44847
- # The minimum version of SSL protocol that can be used by the clients to
44848
- # establish a connection with the load balancer. This can be one of TLS_1_0,
44849
- # TLS_1_1, TLS_1_2.
44850
- # Corresponds to the JSON property `minTlsVersion`
44851
- # @return [String]
44852
- attr_accessor :min_tls_version
45797
+ # [Output Only] Number of disks used.
45798
+ # Corresponds to the JSON property `numberOfDisks`
45799
+ # @return [Fixnum]
45800
+ attr_accessor :number_of_disks
44853
45801
 
44854
- # Name of the resource. The name must be 1-63 characters long, and comply with
44855
- # RFC1035. Specifically, the name must be 1-63 characters long and match the
44856
- # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
44857
- # character must be a lowercase letter, and all following characters must be a
44858
- # dash, lowercase letter, or digit, except the last character, which cannot be a
44859
- # dash.
44860
- # Corresponds to the JSON property `name`
44861
- # @return [String]
44862
- attr_accessor :name
45802
+ # [Output Only] Sum of all the disks' local used bytes. This specifically refers
45803
+ # to the amount of bytes used on the disk without any encryption or compression.
45804
+ # Corresponds to the JSON property `usedBytes`
45805
+ # @return [Fixnum]
45806
+ attr_accessor :used_bytes
44863
45807
 
44864
- # Profile specifies the set of SSL features that can be used by the load
44865
- # balancer when negotiating SSL with clients. This can be one of COMPATIBLE,
44866
- # MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to
44867
- # enable must be specified in the customFeatures field.
44868
- # Corresponds to the JSON property `profile`
44869
- # @return [String]
44870
- attr_accessor :profile
45808
+ # [Output Only] Sum of all the disks' used reduced bytes. This is the actual
45809
+ # storage capacity consumed by all of the disks.
45810
+ # Corresponds to the JSON property `usedReducedBytes`
45811
+ # @return [Fixnum]
45812
+ attr_accessor :used_reduced_bytes
44871
45813
 
44872
- # [Output Only] URL of the region where the regional SSL policy resides. This
44873
- # field is not applicable to global SSL policies.
44874
- # Corresponds to the JSON property `region`
44875
- # @return [String]
44876
- attr_accessor :region
45814
+ def initialize(**args)
45815
+ update!(**args)
45816
+ end
44877
45817
 
44878
- # [Output Only] Server-defined URL for the resource.
44879
- # Corresponds to the JSON property `selfLink`
44880
- # @return [String]
44881
- attr_accessor :self_link
45818
+ # Update properties of this object
45819
+ def update!(**args)
45820
+ @aggregate_disk_provisioned_iops = args[:aggregate_disk_provisioned_iops] if args.key?(:aggregate_disk_provisioned_iops)
45821
+ @aggregate_disk_size_gb = args[:aggregate_disk_size_gb] if args.key?(:aggregate_disk_size_gb)
45822
+ @last_resize_timestamp = args[:last_resize_timestamp] if args.key?(:last_resize_timestamp)
45823
+ @max_aggregate_disk_size_gb = args[:max_aggregate_disk_size_gb] if args.key?(:max_aggregate_disk_size_gb)
45824
+ @number_of_disks = args[:number_of_disks] if args.key?(:number_of_disks)
45825
+ @used_bytes = args[:used_bytes] if args.key?(:used_bytes)
45826
+ @used_reduced_bytes = args[:used_reduced_bytes] if args.key?(:used_reduced_bytes)
45827
+ end
45828
+ end
44882
45829
 
44883
- # [Output Only] Server-defined URL for this resource with the resource id.
44884
- # Corresponds to the JSON property `selfLinkWithId`
44885
- # @return [String]
44886
- attr_accessor :self_link_with_id
45830
+ #
45831
+ class StoragePoolsScopedList
45832
+ include Google::Apis::Core::Hashable
44887
45833
 
44888
- # The TLS settings for the server.
44889
- # Corresponds to the JSON property `tlsSettings`
44890
- # @return [Google::Apis::ComputeAlpha::ServerTlsSettings]
44891
- attr_accessor :tls_settings
45834
+ # [Output Only] A list of storage pool contained in this scope.
45835
+ # Corresponds to the JSON property `storagePools`
45836
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePool>]
45837
+ attr_accessor :storage_pools
44892
45838
 
44893
- # [Output Only] If potential misconfigurations are detected for this SSL policy,
44894
- # this field will be populated with warning messages.
44895
- # Corresponds to the JSON property `warnings`
44896
- # @return [Array<Google::Apis::ComputeAlpha::SslPolicy::Warning>]
44897
- attr_accessor :warnings
45839
+ # [Output Only] Informational warning which replaces the list of storage pool
45840
+ # when the list is empty.
45841
+ # Corresponds to the JSON property `warning`
45842
+ # @return [Google::Apis::ComputeAlpha::StoragePoolsScopedList::Warning]
45843
+ attr_accessor :warning
44898
45844
 
44899
45845
  def initialize(**args)
44900
45846
  update!(**args)
@@ -44902,24 +45848,12 @@ module Google
44902
45848
 
44903
45849
  # Update properties of this object
44904
45850
  def update!(**args)
44905
- @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
44906
- @custom_features = args[:custom_features] if args.key?(:custom_features)
44907
- @description = args[:description] if args.key?(:description)
44908
- @enabled_features = args[:enabled_features] if args.key?(:enabled_features)
44909
- @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
44910
- @id = args[:id] if args.key?(:id)
44911
- @kind = args[:kind] if args.key?(:kind)
44912
- @min_tls_version = args[:min_tls_version] if args.key?(:min_tls_version)
44913
- @name = args[:name] if args.key?(:name)
44914
- @profile = args[:profile] if args.key?(:profile)
44915
- @region = args[:region] if args.key?(:region)
44916
- @self_link = args[:self_link] if args.key?(:self_link)
44917
- @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
44918
- @tls_settings = args[:tls_settings] if args.key?(:tls_settings)
44919
- @warnings = args[:warnings] if args.key?(:warnings)
45851
+ @storage_pools = args[:storage_pools] if args.key?(:storage_pools)
45852
+ @warning = args[:warning] if args.key?(:warning)
44920
45853
  end
44921
45854
 
44922
- #
45855
+ # [Output Only] Informational warning which replaces the list of storage pool
45856
+ # when the list is empty.
44923
45857
  class Warning
44924
45858
  include Google::Apis::Core::Hashable
44925
45859
 
@@ -44932,7 +45866,7 @@ module Google
44932
45866
  # [Output Only] Metadata about this warning in key: value format. For example: "
44933
45867
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
44934
45868
  # Corresponds to the JSON property `data`
44935
- # @return [Array<Google::Apis::ComputeAlpha::SslPolicy::Warning::Datum>]
45869
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolsScopedList::Warning::Datum>]
44936
45870
  attr_accessor :data
44937
45871
 
44938
45872
  # [Output Only] A human-readable description of the warning code.
@@ -44984,165 +45918,6 @@ module Google
44984
45918
  end
44985
45919
  end
44986
45920
 
44987
- #
44988
- class SslPolicyReference
44989
- include Google::Apis::Core::Hashable
44990
-
44991
- # URL of the SSL policy resource. Set this to empty string to clear any existing
44992
- # SSL policy associated with the target proxy resource.
44993
- # Corresponds to the JSON property `sslPolicy`
44994
- # @return [String]
44995
- attr_accessor :ssl_policy
44996
-
44997
- def initialize(**args)
44998
- update!(**args)
44999
- end
45000
-
45001
- # Update properties of this object
45002
- def update!(**args)
45003
- @ssl_policy = args[:ssl_policy] if args.key?(:ssl_policy)
45004
- end
45005
- end
45006
-
45007
- #
45008
- class StatefulPolicy
45009
- include Google::Apis::Core::Hashable
45010
-
45011
- # Configuration of preserved resources.
45012
- # Corresponds to the JSON property `preservedState`
45013
- # @return [Google::Apis::ComputeAlpha::StatefulPolicyPreservedState]
45014
- attr_accessor :preserved_state
45015
-
45016
- def initialize(**args)
45017
- update!(**args)
45018
- end
45019
-
45020
- # Update properties of this object
45021
- def update!(**args)
45022
- @preserved_state = args[:preserved_state] if args.key?(:preserved_state)
45023
- end
45024
- end
45025
-
45026
- # Configuration of preserved resources.
45027
- class StatefulPolicyPreservedState
45028
- include Google::Apis::Core::Hashable
45029
-
45030
- # Disks created on the instances that will be preserved on instance delete,
45031
- # update, etc. This map is keyed with the device names of the disks.
45032
- # Corresponds to the JSON property `disks`
45033
- # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateDiskDevice>]
45034
- attr_accessor :disks
45035
-
45036
- # External network IPs assigned to the instances that will be preserved on
45037
- # instance delete, update, etc. This map is keyed with the network interface
45038
- # name.
45039
- # Corresponds to the JSON property `externalIPs`
45040
- # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateNetworkIp>]
45041
- attr_accessor :external_i_ps
45042
-
45043
- # Internal network IPs assigned to the instances that will be preserved on
45044
- # instance delete, update, etc. This map is keyed with the network interface
45045
- # name.
45046
- # Corresponds to the JSON property `internalIPs`
45047
- # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateNetworkIp>]
45048
- attr_accessor :internal_i_ps
45049
-
45050
- def initialize(**args)
45051
- update!(**args)
45052
- end
45053
-
45054
- # Update properties of this object
45055
- def update!(**args)
45056
- @disks = args[:disks] if args.key?(:disks)
45057
- @external_i_ps = args[:external_i_ps] if args.key?(:external_i_ps)
45058
- @internal_i_ps = args[:internal_i_ps] if args.key?(:internal_i_ps)
45059
- end
45060
- end
45061
-
45062
- #
45063
- class StatefulPolicyPreservedStateDiskDevice
45064
- include Google::Apis::Core::Hashable
45065
-
45066
- # These stateful disks will never be deleted during autohealing, update or VM
45067
- # instance recreate operations. This flag is used to configure if the disk
45068
- # should be deleted after it is no longer used by the group, e.g. when the given
45069
- # instance or the whole group is deleted. Note: disks attached in READ_ONLY mode
45070
- # cannot be auto-deleted.
45071
- # Corresponds to the JSON property `autoDelete`
45072
- # @return [String]
45073
- attr_accessor :auto_delete
45074
-
45075
- def initialize(**args)
45076
- update!(**args)
45077
- end
45078
-
45079
- # Update properties of this object
45080
- def update!(**args)
45081
- @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
45082
- end
45083
- end
45084
-
45085
- #
45086
- class StatefulPolicyPreservedStateNetworkIp
45087
- include Google::Apis::Core::Hashable
45088
-
45089
- # These stateful IPs will never be released during autohealing, update or VM
45090
- # instance recreate operations. This flag is used to configure if the IP
45091
- # reservation should be deleted after it is no longer used by the group, e.g.
45092
- # when the given instance or the whole group is deleted.
45093
- # Corresponds to the JSON property `autoDelete`
45094
- # @return [String]
45095
- attr_accessor :auto_delete
45096
-
45097
- def initialize(**args)
45098
- update!(**args)
45099
- end
45100
-
45101
- # Update properties of this object
45102
- def update!(**args)
45103
- @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
45104
- end
45105
- end
45106
-
45107
- # The `Status` type defines a logical error model that is suitable for different
45108
- # programming environments, including REST APIs and RPC APIs. It is used by [
45109
- # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
45110
- # data: error code, error message, and error details. You can find out more
45111
- # about this error model and how to work with it in the [API Design Guide](https:
45112
- # //cloud.google.com/apis/design/errors).
45113
- class Status
45114
- include Google::Apis::Core::Hashable
45115
-
45116
- # The status code, which should be an enum value of google.rpc.Code.
45117
- # Corresponds to the JSON property `code`
45118
- # @return [Fixnum]
45119
- attr_accessor :code
45120
-
45121
- # A list of messages that carry the error details. There is a common set of
45122
- # message types for APIs to use.
45123
- # Corresponds to the JSON property `details`
45124
- # @return [Array<Hash<String,Object>>]
45125
- attr_accessor :details
45126
-
45127
- # A developer-facing error message, which should be in English. Any user-facing
45128
- # error message should be localized and sent in the google.rpc.Status.details
45129
- # field, or localized by the client.
45130
- # Corresponds to the JSON property `message`
45131
- # @return [String]
45132
- attr_accessor :message
45133
-
45134
- def initialize(**args)
45135
- update!(**args)
45136
- end
45137
-
45138
- # Update properties of this object
45139
- def update!(**args)
45140
- @code = args[:code] if args.key?(:code)
45141
- @details = args[:details] if args.key?(:details)
45142
- @message = args[:message] if args.key?(:message)
45143
- end
45144
- end
45145
-
45146
45921
  # Represents a Subnetwork resource. A subnetwork (also known as a subnet) is a
45147
45922
  # logical partition of a Virtual Private Cloud network with one primary IP range
45148
45923
  # and zero or more secondary IP ranges. For more information, read Virtual
@@ -46419,6 +47194,16 @@ module Google
46419
47194
  # @return [Array<String>]
46420
47195
  attr_accessor :http_filters
46421
47196
 
47197
+ # Specifies how long to keep a connection open, after completing a response,
47198
+ # while there is no matching traffic (in seconds). If an HTTP keep-alive is not
47199
+ # specified, a default value (610 seconds) will be used. For Global external
47200
+ # HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum
47201
+ # allowed value is 1200 seconds. For Global external HTTP(S) load balancer (
47202
+ # classic), this option is not available publicly.
47203
+ # Corresponds to the JSON property `httpKeepAliveTimeoutSec`
47204
+ # @return [Fixnum]
47205
+ attr_accessor :http_keep_alive_timeout_sec
47206
+
46422
47207
  # [Output Only] The unique identifier for the resource. This identifier is
46423
47208
  # defined by the server.
46424
47209
  # Corresponds to the JSON property `id`
@@ -46486,6 +47271,7 @@ module Google
46486
47271
  @description = args[:description] if args.key?(:description)
46487
47272
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
46488
47273
  @http_filters = args[:http_filters] if args.key?(:http_filters)
47274
+ @http_keep_alive_timeout_sec = args[:http_keep_alive_timeout_sec] if args.key?(:http_keep_alive_timeout_sec)
46489
47275
  @id = args[:id] if args.key?(:id)
46490
47276
  @kind = args[:kind] if args.key?(:kind)
46491
47277
  @name = args[:name] if args.key?(:name)
@@ -46966,6 +47752,16 @@ module Google
46966
47752
  # @return [Array<String>]
46967
47753
  attr_accessor :http_filters
46968
47754
 
47755
+ # Specifies how long to keep a connection open, after completing a response,
47756
+ # while there is no matching traffic (in seconds). If an HTTP keep-alive is not
47757
+ # specified, a default value (610 seconds) will be used. For Global external
47758
+ # HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum
47759
+ # allowed value is 1200 seconds. For Global external HTTP(S) load balancer (
47760
+ # classic), this option is not available publicly.
47761
+ # Corresponds to the JSON property `httpKeepAliveTimeoutSec`
47762
+ # @return [Fixnum]
47763
+ attr_accessor :http_keep_alive_timeout_sec
47764
+
46969
47765
  # [Output Only] The unique identifier for the resource. This identifier is
46970
47766
  # defined by the server.
46971
47767
  # Corresponds to the JSON property `id`
@@ -47031,8 +47827,11 @@ module Google
47031
47827
  # Optional. A URL referring to a networksecurity.ServerTlsPolicy resource that
47032
47828
  # describes how the proxy should authenticate inbound traffic. serverTlsPolicy
47033
47829
  # only applies to a global TargetHttpsProxy attached to globalForwardingRules
47034
- # with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank,
47035
- # communications are not encrypted. Note: This field currently has no impact.
47830
+ # with the loadBalancingScheme set to INTERNAL_SELF_MANAGED or EXTERNAL or
47831
+ # EXTERNAL_MANAGED. For details which ServerTlsPolicy resources are accepted
47832
+ # with INTERNAL_SELF_MANAGED and which with EXTERNAL, EXTERNAL_MANAGED
47833
+ # loadBalancingScheme consult ServerTlsPolicy documentation. If left blank,
47834
+ # communications are not encrypted.
47036
47835
  # Corresponds to the JSON property `serverTlsPolicy`
47037
47836
  # @return [String]
47038
47837
  attr_accessor :server_tls_policy
@@ -47076,6 +47875,7 @@ module Google
47076
47875
  @description = args[:description] if args.key?(:description)
47077
47876
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
47078
47877
  @http_filters = args[:http_filters] if args.key?(:http_filters)
47878
+ @http_keep_alive_timeout_sec = args[:http_keep_alive_timeout_sec] if args.key?(:http_keep_alive_timeout_sec)
47079
47879
  @id = args[:id] if args.key?(:id)
47080
47880
  @kind = args[:kind] if args.key?(:kind)
47081
47881
  @name = args[:name] if args.key?(:name)
@@ -49895,6 +50695,17 @@ module Google
49895
50695
  # @return [String]
49896
50696
  attr_accessor :date
49897
50697
 
50698
+ # The latest time for the planned maintenance window to start. This timestamp
50699
+ # value is in RFC3339 text format.
50700
+ # Corresponds to the JSON property `latestWindowStartTime`
50701
+ # @return [String]
50702
+ attr_accessor :latest_window_start_time
50703
+
50704
+ #
50705
+ # Corresponds to the JSON property `maintenanceStatus`
50706
+ # @return [String]
50707
+ attr_accessor :maintenance_status
50708
+
49898
50709
  # Represents a window of time using two timestamps: `earliest` and `latest`.
49899
50710
  # This timestamp values are in RFC3339 text format.
49900
50711
  # Corresponds to the JSON property `startTimeWindow`
@@ -49912,6 +50723,18 @@ module Google
49912
50723
  # @return [String]
49913
50724
  attr_accessor :type
49914
50725
 
50726
+ # The time by which the maintenance disruption will be completed. This timestamp
50727
+ # value is in RFC3339 text format.
50728
+ # Corresponds to the JSON property `windowEndTime`
50729
+ # @return [String]
50730
+ attr_accessor :window_end_time
50731
+
50732
+ # The current start time of the maintenance window. This timestamp value is in
50733
+ # RFC3339 text format.
50734
+ # Corresponds to the JSON property `windowStartTime`
50735
+ # @return [String]
50736
+ attr_accessor :window_start_time
50737
+
49915
50738
  def initialize(**args)
49916
50739
  update!(**args)
49917
50740
  end
@@ -49920,9 +50743,13 @@ module Google
49920
50743
  def update!(**args)
49921
50744
  @can_reschedule = args[:can_reschedule] if args.key?(:can_reschedule)
49922
50745
  @date = args[:date] if args.key?(:date)
50746
+ @latest_window_start_time = args[:latest_window_start_time] if args.key?(:latest_window_start_time)
50747
+ @maintenance_status = args[:maintenance_status] if args.key?(:maintenance_status)
49923
50748
  @start_time_window = args[:start_time_window] if args.key?(:start_time_window)
49924
50749
  @time = args[:time] if args.key?(:time)
49925
50750
  @type = args[:type] if args.key?(:type)
50751
+ @window_end_time = args[:window_end_time] if args.key?(:window_end_time)
50752
+ @window_start_time = args[:window_start_time] if args.key?(:window_start_time)
49926
50753
  end
49927
50754
  end
49928
50755