google-apis-compute_alpha 0.63.0 → 0.65.0

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