google-apis-compute_beta 0.140.0 → 0.142.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -750,21 +750,30 @@ module Google
750
750
  # @return [Fixnum]
751
751
  attr_accessor :id
752
752
 
753
- # Reference to the source of external IPv4 addresses,
754
- # like a PublicDelegatedPrefix (PDP) for BYOIP.
755
- # The PDP must support enhanced IPv4 allocations.
756
- # Use one of the following formats to specify a PDP when reserving an
757
- # external IPv4 address using BYOIP.
753
+ # Reference to the source of IP addresses.
754
+ # It supports the following cases:
758
755
  #
759
756
  # -
760
- # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/
761
- # projectId/regions/region/publicDelegatedPrefixes/pdp-name
757
+ # Case 1: PublicDelegatedPrefix (PDP) for BYOIP external IPv4
758
+ # addresses. The PDP must support enhanced IPv4 allocations.
762
759
  # -
763
- # Partial URL, as in
764
- #
760
+ # Case 2: Internal Range for global internal addresses.
761
+ # Use one of the following formats to specify the resource:
762
+ # For a Public Delegated Prefix:
765
763
  #
764
+ # -
765
+ # Full resource URL:https://www.googleapis.com/compute/v1/projects/projectId/
766
+ # regions/region/publicDelegatedPrefixes/pdp
767
+ # - Partial URL:
766
768
  # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
767
769
  # - regions/region/publicDelegatedPrefixes/pdp-name
770
+ #
771
+ # For an Internal Range:
772
+ #
773
+ # - Full URL:https://networkconnectivity.googleapis.com/v1/projects/project/
774
+ # locations/global/internalRanges/internal-range
775
+ # - Partial URL:projects/project/locations/global/internalRanges/internal-
776
+ # range
768
777
  # Corresponds to the JSON property `ipCollection`
769
778
  # @return [String]
770
779
  attr_accessor :ip_collection
@@ -8370,22 +8379,25 @@ module Google
8370
8379
  class CapacityHistoryResponse
8371
8380
  include Google::Apis::Core::Hashable
8372
8381
 
8373
- #
8382
+ # Output only. The location (region or zone) for which the capacity history is
8383
+ # returned.
8384
+ # It is returned as a URL - For example,https://www.googleapis.com/compute/v1/
8385
+ # projects/project/zones/zone.
8374
8386
  # Corresponds to the JSON property `location`
8375
8387
  # @return [String]
8376
8388
  attr_accessor :location
8377
8389
 
8378
- #
8390
+ # The machine type for which the capacity history is returned.
8379
8391
  # Corresponds to the JSON property `machineType`
8380
8392
  # @return [String]
8381
8393
  attr_accessor :machine_type
8382
8394
 
8383
- #
8395
+ # The preemption history for the requested machine type and location.
8384
8396
  # Corresponds to the JSON property `preemptionHistory`
8385
8397
  # @return [Array<Google::Apis::ComputeBeta::CapacityHistoryResponsePreemptionRecord>]
8386
8398
  attr_accessor :preemption_history
8387
8399
 
8388
- #
8400
+ # The price history for the requested machine type and location.
8389
8401
  # Corresponds to the JSON property `priceHistory`
8390
8402
  # @return [Array<Google::Apis::ComputeBeta::CapacityHistoryResponsePriceRecord>]
8391
8403
  attr_accessor :price_history
@@ -8403,7 +8415,7 @@ module Google
8403
8415
  end
8404
8416
  end
8405
8417
 
8406
- #
8418
+ # A record of Spot VM preemption history.
8407
8419
  class CapacityHistoryResponsePreemptionRecord
8408
8420
  include Google::Apis::Core::Hashable
8409
8421
 
@@ -8416,7 +8428,10 @@ module Google
8416
8428
  # @return [Google::Apis::ComputeBeta::Interval]
8417
8429
  attr_accessor :interval
8418
8430
 
8419
- #
8431
+ # The preemption rate during the interval, representing the fraction of
8432
+ # Spot VMs that were preempted. Range: 0.0 to 1.0. Preemption rate is
8433
+ # calculated as (total preempted Spots) / (total Spots that stopped
8434
+ # running).
8420
8435
  # Corresponds to the JSON property `preemptionRate`
8421
8436
  # @return [Float]
8422
8437
  attr_accessor :preemption_rate
@@ -8432,7 +8447,7 @@ module Google
8432
8447
  end
8433
8448
  end
8434
8449
 
8435
- #
8450
+ # A record of price history.
8436
8451
  class CapacityHistoryResponsePriceRecord
8437
8452
  include Google::Apis::Core::Hashable
8438
8453
 
@@ -8634,6 +8649,13 @@ module Google
8634
8649
  # @return [Google::Apis::ComputeBeta::CommitmentParams]
8635
8650
  attr_accessor :params
8636
8651
 
8652
+ # Optional. Used when category is PERSISTENT_DISK.
8653
+ # Each entry in the list represents a commitment to a specific Persistent
8654
+ # Disk product type and dimension.
8655
+ # Corresponds to the JSON property `persistentDiskResources`
8656
+ # @return [Array<Google::Apis::ComputeBeta::PersistentDiskResourceCommitment>]
8657
+ attr_accessor :persistent_disk_resources
8658
+
8637
8659
  # The minimum time duration that you commit to purchasing resources.
8638
8660
  # The plan that you choose determines the preset term length of the
8639
8661
  # commitment (which is 1 year or 3 years) and affects the discount rate that
@@ -8746,6 +8768,7 @@ module Google
8746
8768
  @merge_source_commitments = args[:merge_source_commitments] if args.key?(:merge_source_commitments)
8747
8769
  @name = args[:name] if args.key?(:name)
8748
8770
  @params = args[:params] if args.key?(:params)
8771
+ @persistent_disk_resources = args[:persistent_disk_resources] if args.key?(:persistent_disk_resources)
8749
8772
  @plan = args[:plan] if args.key?(:plan)
8750
8773
  @region = args[:region] if args.key?(:region)
8751
8774
  @reservations = args[:reservations] if args.key?(:reservations)
@@ -14130,7 +14153,9 @@ module Google
14130
14153
 
14131
14154
  # The Action to perform when the client connection triggers the rule.
14132
14155
  # Valid actions for firewall rules are: "allow", "deny",
14133
- # "apply_security_profile_group" and "goto_next".
14156
+ # "apply_security_profile_group" and "goto_next" (
14157
+ # "apply_security_profile_group" can be specified only for global
14158
+ # network firewall policies or hierarchical firewall policies).
14134
14159
  # Valid actions for packet mirroring rules are: "mirror", "do_not_mirror"
14135
14160
  # and "goto_next".
14136
14161
  # Corresponds to the JSON property `action`
@@ -14199,12 +14224,13 @@ module Google
14199
14224
  # @return [Fixnum]
14200
14225
  attr_accessor :rule_tuple_count
14201
14226
 
14202
- # A fully-qualified URL of a SecurityProfile resource instance.
14227
+ # A fully-qualified URL of a SecurityProfileGroup resource instance.
14203
14228
  # Example:
14204
14229
  # https://networksecurity.googleapis.com/v1/projects/`project`/locations/`
14205
14230
  # location`/securityProfileGroups/my-security-profile-group
14206
14231
  # Must be specified if action is one of 'apply_security_profile_group' or
14207
- # 'mirror'. Cannot be specified for other actions.
14232
+ # 'mirror'. Cannot be specified for other actions. Can be specified only
14233
+ # for global network firewall policies or hierarchical firewall policies.
14208
14234
  # Corresponds to the JSON property `securityProfileGroup`
14209
14235
  # @return [String]
14210
14236
  attr_accessor :security_profile_group
@@ -22971,6 +22997,27 @@ module Google
22971
22997
  end
22972
22998
  end
22973
22999
 
23000
+ # Represents a read-only view of a global Image resource.
23001
+ class ImageView
23002
+ include Google::Apis::Core::Hashable
23003
+
23004
+ # Represents an Image resource.
23005
+ # You can use images to create boot disks for your VM instances.
23006
+ # For more information, read Images.
23007
+ # Corresponds to the JSON property `image`
23008
+ # @return [Google::Apis::ComputeBeta::Image]
23009
+ attr_accessor :image
23010
+
23011
+ def initialize(**args)
23012
+ update!(**args)
23013
+ end
23014
+
23015
+ # Update properties of this object
23016
+ def update!(**args)
23017
+ @image = args[:image] if args.key?(:image)
23018
+ end
23019
+ end
23020
+
22974
23021
  # Initial State for shielded instance,
22975
23022
  # these are public keys which are safe to store in public
22976
23023
  class InitialStateConfig
@@ -23166,6 +23213,12 @@ module Google
23166
23213
  # @return [String]
23167
23214
  attr_accessor :last_suspended_timestamp
23168
23215
 
23216
+ # Specifies which method should be used for encrypting the
23217
+ # Local SSDs attached to the VM.
23218
+ # Corresponds to the JSON property `localSsdEncryptionMode`
23219
+ # @return [String]
23220
+ attr_accessor :local_ssd_encryption_mode
23221
+
23169
23222
  # Full or partial URL of the machine type resource to use for this instance,
23170
23223
  # in the format:zones/zone/machineTypes/machine-type. This is provided by the
23171
23224
  # client
@@ -23399,6 +23452,7 @@ module Google
23399
23452
  @last_start_timestamp = args[:last_start_timestamp] if args.key?(:last_start_timestamp)
23400
23453
  @last_stop_timestamp = args[:last_stop_timestamp] if args.key?(:last_stop_timestamp)
23401
23454
  @last_suspended_timestamp = args[:last_suspended_timestamp] if args.key?(:last_suspended_timestamp)
23455
+ @local_ssd_encryption_mode = args[:local_ssd_encryption_mode] if args.key?(:local_ssd_encryption_mode)
23402
23456
  @machine_type = args[:machine_type] if args.key?(:machine_type)
23403
23457
  @metadata = args[:metadata] if args.key?(:metadata)
23404
23458
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
@@ -24823,13 +24877,14 @@ module Google
24823
24877
  include Google::Apis::Core::Hashable
24824
24878
 
24825
24879
  # The action that a MIG performs on a failed VM. If the value of the
24826
- # onFailedHealthCheck field
24827
- # is `DEFAULT_ACTION`, then the same action also applies to the VMs on which
24828
- # your application
24829
- # fails a health check. Valid values are - REPAIR (default): MIG automatically
24830
- # repairs a failed
24831
- # VM by recreating it. For more information, seeAbout repairing
24832
- # VMs in a MIG. - DO_NOTHING: MIG does not repair a failed VM.
24880
+ # onFailedHealthCheck field is `DEFAULT_ACTION`, then the same action also
24881
+ # applies to the VMs on which your application fails a health check.
24882
+ # Valid values are
24883
+ #
24884
+ # - REPAIR (default): MIG automatically repairs a failed VM
24885
+ # by recreating it. For more information, see About
24886
+ # repairing VMs in a MIG.
24887
+ # - DO_NOTHING: MIG does not repair a failed VM.
24833
24888
  # Corresponds to the JSON property `defaultActionOnFailure`
24834
24889
  # @return [String]
24835
24890
  attr_accessor :default_action_on_failure
@@ -28294,6 +28349,12 @@ module Google
28294
28349
  # @return [Hash<String,String>]
28295
28350
  attr_accessor :labels
28296
28351
 
28352
+ # Specifies which method should be used for encrypting the
28353
+ # Local SSDs attached to the VM.
28354
+ # Corresponds to the JSON property `localSsdEncryptionMode`
28355
+ # @return [String]
28356
+ attr_accessor :local_ssd_encryption_mode
28357
+
28297
28358
  # The machine type to use for instances that are created from these
28298
28359
  # properties.
28299
28360
  # This field only accepts a machine type name, for example `n2-standard-4`.
@@ -28419,6 +28480,7 @@ module Google
28419
28480
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
28420
28481
  @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
28421
28482
  @labels = args[:labels] if args.key?(:labels)
28483
+ @local_ssd_encryption_mode = args[:local_ssd_encryption_mode] if args.key?(:local_ssd_encryption_mode)
28422
28484
  @machine_type = args[:machine_type] if args.key?(:machine_type)
28423
28485
  @metadata = args[:metadata] if args.key?(:metadata)
28424
28486
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
@@ -36979,15 +37041,13 @@ module Google
36979
37041
  # @return [Google::Apis::ComputeBeta::ManagedInstancePropertiesFromFlexibilityPolicy]
36980
37042
  attr_accessor :properties_from_flexibility_policy
36981
37043
 
36982
- # Output only. [Output Only] Information about the termination timestamp of the
36983
- # instance,
36984
- # if applicable.
37044
+ # Output only. Information about the termination timestamp of the instance, if
37045
+ # applicable.
36985
37046
  # Corresponds to the JSON property `scheduling`
36986
37047
  # @return [Google::Apis::ComputeBeta::ManagedInstanceScheduling]
36987
37048
  attr_accessor :scheduling
36988
37049
 
36989
- # Output only. [Output Only] Specifies the graceful shutdown details if the
36990
- # instance is in
37050
+ # Output only. Specifies the graceful shutdown details if the instance is in
36991
37051
  # `PENDING_STOP` state or there is a programmed stop scheduled.
36992
37052
  # Corresponds to the JSON property `shutdownDetails`
36993
37053
  # @return [Google::Apis::ComputeBeta::ManagedInstanceShutdownDetails]
@@ -37263,16 +37323,17 @@ module Google
37263
37323
  class ManagedInstanceScheduling
37264
37324
  include Google::Apis::Core::Hashable
37265
37325
 
37266
- # Output only. [Output Only] The timestamp at which the underlying instance will
37267
- # be
37326
+ # Output only. The timestamp at which the underlying instance will be
37268
37327
  # triggered for graceful shutdown if it is configured. This is in RFC3339 text
37269
37328
  # format.
37270
37329
  # Corresponds to the JSON property `gracefulShutdownTimestamp`
37271
37330
  # @return [String]
37272
37331
  attr_accessor :graceful_shutdown_timestamp
37273
37332
 
37274
- # Output only. [Output Only] The timestamp at which the managed instance will be
37275
- # terminated. This is in RFC3339 text format.
37333
+ # Output only. The timestamp at which the managed instance will be terminated.
37334
+ # This is
37335
+ # in RFC3339 text
37336
+ # format.
37276
37337
  # Corresponds to the JSON property `terminationTimestamp`
37277
37338
  # @return [String]
37278
37339
  attr_accessor :termination_timestamp
@@ -37300,9 +37361,10 @@ module Google
37300
37361
  # @return [Google::Apis::ComputeBeta::Duration]
37301
37362
  attr_accessor :max_duration
37302
37363
 
37303
- # Output only. [Output Only] Past timestamp indicating the beginning of `
37304
- # PENDING_STOP`
37305
- # state of instance in RFC3339 text format.
37364
+ # Output only. Past timestamp indicating the beginning of `PENDING_STOP` state
37365
+ # of
37366
+ # instance in RFC3339
37367
+ # text format.
37306
37368
  # Corresponds to the JSON property `requestTimestamp`
37307
37369
  # @return [String]
37308
37370
  attr_accessor :request_timestamp
@@ -38590,14 +38652,16 @@ module Google
38590
38652
  # @return [String]
38591
38653
  attr_accessor :network
38592
38654
 
38593
- # Projects that are allowed to connect to this network attachment.
38594
- # The project can be specified using its id or number.
38655
+ # Projects or service class ids that are allowed to connect to this network
38656
+ # attachment. The project can be specified using its id or number. Service
38657
+ # class id can be specified as "serviceclasses/`service_class_id`".
38595
38658
  # Corresponds to the JSON property `producerAcceptLists`
38596
38659
  # @return [Array<String>]
38597
38660
  attr_accessor :producer_accept_lists
38598
38661
 
38599
- # Projects that are not allowed to connect to this network attachment.
38600
- # The project can be specified using its id or number.
38662
+ # Projects or service class ids that are not allowed to connect to this
38663
+ # network attachment. The project can be specified using its id or number.
38664
+ # Service class id can be specified as "serviceclasses/`service_class_id`".
38601
38665
  # Corresponds to the JSON property `producerRejectLists`
38602
38666
  # @return [Array<String>]
38603
38667
  attr_accessor :producer_reject_lists
@@ -47380,6 +47444,38 @@ module Google
47380
47444
  end
47381
47445
  end
47382
47446
 
47447
+ # Commitment for a particular persistent disk resource.
47448
+ class PersistentDiskResourceCommitment
47449
+ include Google::Apis::Core::Hashable
47450
+
47451
+ # Required. The amount of the resource to commit to, in GiB.
47452
+ # Corresponds to the JSON property `amount`
47453
+ # @return [Fixnum]
47454
+ attr_accessor :amount
47455
+
47456
+ # The specific dimension of the product for this amount.
47457
+ # Corresponds to the JSON property `dimensionType`
47458
+ # @return [String]
47459
+ attr_accessor :dimension_type
47460
+
47461
+ # The PD product being committed to. All entries in a
47462
+ # Commitment.persistent_disk_resources list must have the same product_type.
47463
+ # Corresponds to the JSON property `productType`
47464
+ # @return [String]
47465
+ attr_accessor :product_type
47466
+
47467
+ def initialize(**args)
47468
+ update!(**args)
47469
+ end
47470
+
47471
+ # Update properties of this object
47472
+ def update!(**args)
47473
+ @amount = args[:amount] if args.key?(:amount)
47474
+ @dimension_type = args[:dimension_type] if args.key?(:dimension_type)
47475
+ @product_type = args[:product_type] if args.key?(:product_type)
47476
+ end
47477
+ end
47478
+
47383
47479
  # An Identity and Access Management (IAM) policy, which specifies access
47384
47480
  # controls for Google Cloud resources.
47385
47481
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
@@ -49399,6 +49495,55 @@ module Google
49399
49495
  end
49400
49496
  end
49401
49497
 
49498
+ # The spec for modifying the path using a regular expression.
49499
+ class RegexRewrite
49500
+ include Google::Apis::Core::Hashable
49501
+
49502
+ # The regular expression used to match against the URL path.
49503
+ # It uses RE2 syntax with the following constraints:
49504
+ #
49505
+ #
49506
+ # - Any single character operators
49507
+ # - Groups are allowed to have only submatch operator inside
49508
+ # - Groups are allowed only without any char repetition, e.g.
49509
+ # .*
49510
+ # - Any char repetition, e.g. .*, is
49511
+ # only allowed to be used in a single regex together with:
49512
+ #
49513
+ #
49514
+ # - Empty string operators
49515
+ # - Other repetitions
49516
+ # - Ranges
49517
+ # - Repetitions of ranges
49518
+ #
49519
+ #
49520
+ # - Ranges are only allowed to have:
49521
+ #
49522
+ #
49523
+ # - Character range
49524
+ # - Digits range
49525
+ # - Symbols listed in characters allowed for ranges
49526
+ # Corresponds to the JSON property `pathPattern`
49527
+ # @return [String]
49528
+ attr_accessor :path_pattern
49529
+
49530
+ # Required when path pattern is specified. Used to rewrite matching parts of
49531
+ # the path.
49532
+ # Corresponds to the JSON property `pathSubstitution`
49533
+ # @return [String]
49534
+ attr_accessor :path_substitution
49535
+
49536
+ def initialize(**args)
49537
+ update!(**args)
49538
+ end
49539
+
49540
+ # Update properties of this object
49541
+ def update!(**args)
49542
+ @path_pattern = args[:path_pattern] if args.key?(:path_pattern)
49543
+ @path_substitution = args[:path_substitution] if args.key?(:path_substitution)
49544
+ end
49545
+ end
49546
+
49402
49547
  # Represents a Region resource.
49403
49548
  # A region is a geographical area where a resource is located. For more
49404
49549
  # information, readRegions
@@ -51658,6 +51803,210 @@ module Google
51658
51803
  end
51659
51804
  end
51660
51805
 
51806
+ # Represents a ReliabilityRisk resource.
51807
+ class ReliabilityRisk
51808
+ include Google::Apis::Core::Hashable
51809
+
51810
+ # Output only. [Output Only] Creation timestamp in RFC3339
51811
+ # text format.
51812
+ # Corresponds to the JSON property `creationTimestamp`
51813
+ # @return [String]
51814
+ attr_accessor :creation_timestamp
51815
+
51816
+ # An optional textual description of the resource; provided when the
51817
+ # resource is created.
51818
+ # Corresponds to the JSON property `description`
51819
+ # @return [String]
51820
+ attr_accessor :description
51821
+
51822
+ # Detailed insights and metrics about a detected reliability risk.
51823
+ # Corresponds to the JSON property `details`
51824
+ # @return [Google::Apis::ComputeBeta::RiskDetails]
51825
+ attr_accessor :details
51826
+
51827
+ # [Output Only] The unique identifier for the resource. This identifier is
51828
+ # defined by the server.
51829
+ # Corresponds to the JSON property `id`
51830
+ # @return [Fixnum]
51831
+ attr_accessor :id
51832
+
51833
+ # Output only. [Output Only] Type of resource. Always compute#reliabilityRisk
51834
+ # for reliability risks.
51835
+ # Corresponds to the JSON property `kind`
51836
+ # @return [String]
51837
+ attr_accessor :kind
51838
+
51839
+ # Name of the resource. The name must be 1-63 characters long and
51840
+ # comply with RFC1035.
51841
+ # Corresponds to the JSON property `name`
51842
+ # @return [String]
51843
+ attr_accessor :name
51844
+
51845
+ # Recommendation for mitigating a reliability risk, including a reference URL.
51846
+ # Corresponds to the JSON property `recommendation`
51847
+ # @return [Google::Apis::ComputeBeta::RiskRecommendation]
51848
+ attr_accessor :recommendation
51849
+
51850
+ # Output only. [Output Only] Server-defined URL for the resource.
51851
+ # Corresponds to the JSON property `selfLink`
51852
+ # @return [String]
51853
+ attr_accessor :self_link
51854
+
51855
+ # Output only. [Output Only] Server-defined URL for this resource with the
51856
+ # resource id.
51857
+ # Corresponds to the JSON property `selfLinkWithId`
51858
+ # @return [String]
51859
+ attr_accessor :self_link_with_id
51860
+
51861
+ def initialize(**args)
51862
+ update!(**args)
51863
+ end
51864
+
51865
+ # Update properties of this object
51866
+ def update!(**args)
51867
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
51868
+ @description = args[:description] if args.key?(:description)
51869
+ @details = args[:details] if args.key?(:details)
51870
+ @id = args[:id] if args.key?(:id)
51871
+ @kind = args[:kind] if args.key?(:kind)
51872
+ @name = args[:name] if args.key?(:name)
51873
+ @recommendation = args[:recommendation] if args.key?(:recommendation)
51874
+ @self_link = args[:self_link] if args.key?(:self_link)
51875
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
51876
+ end
51877
+ end
51878
+
51879
+ # Response message for the List method of ReliabilityRisksService.
51880
+ class ReliabilityRisksListResponse
51881
+ include Google::Apis::Core::Hashable
51882
+
51883
+ #
51884
+ # Corresponds to the JSON property `etag`
51885
+ # @return [String]
51886
+ attr_accessor :etag
51887
+
51888
+ # [Output Only] Unique identifier for the resource; defined by the server.
51889
+ # Corresponds to the JSON property `id`
51890
+ # @return [String]
51891
+ attr_accessor :id
51892
+
51893
+ # A list of ReliabilityRisk resources.
51894
+ # Corresponds to the JSON property `items`
51895
+ # @return [Array<Google::Apis::ComputeBeta::ReliabilityRisk>]
51896
+ attr_accessor :items
51897
+
51898
+ # [Output Only] This token allows you to get the next page of results for
51899
+ # list requests. If the number of results is larger thanmaxResults, use the
51900
+ # nextPageToken as a value for
51901
+ # the query parameter pageToken in the next list request.
51902
+ # Subsequent list requests will have their own nextPageToken to
51903
+ # continue paging through the results.
51904
+ # Corresponds to the JSON property `nextPageToken`
51905
+ # @return [String]
51906
+ attr_accessor :next_page_token
51907
+
51908
+ # Output only. [Output Only] Server-defined URL for this resource.
51909
+ # Corresponds to the JSON property `selfLink`
51910
+ # @return [String]
51911
+ attr_accessor :self_link
51912
+
51913
+ # Output only. [Output Only] Unreachable resources.
51914
+ # end_interface: MixerListResponseWithEtagBuilder
51915
+ # Corresponds to the JSON property `unreachables`
51916
+ # @return [Array<String>]
51917
+ attr_accessor :unreachables
51918
+
51919
+ # [Output Only] Informational warning message.
51920
+ # Corresponds to the JSON property `warning`
51921
+ # @return [Google::Apis::ComputeBeta::ReliabilityRisksListResponse::Warning]
51922
+ attr_accessor :warning
51923
+
51924
+ def initialize(**args)
51925
+ update!(**args)
51926
+ end
51927
+
51928
+ # Update properties of this object
51929
+ def update!(**args)
51930
+ @etag = args[:etag] if args.key?(:etag)
51931
+ @id = args[:id] if args.key?(:id)
51932
+ @items = args[:items] if args.key?(:items)
51933
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
51934
+ @self_link = args[:self_link] if args.key?(:self_link)
51935
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
51936
+ @warning = args[:warning] if args.key?(:warning)
51937
+ end
51938
+
51939
+ # [Output Only] Informational warning message.
51940
+ class Warning
51941
+ include Google::Apis::Core::Hashable
51942
+
51943
+ # [Output Only] A warning code, if applicable. For example, Compute
51944
+ # Engine returns NO_RESULTS_ON_PAGE if there
51945
+ # are no results in the response.
51946
+ # Corresponds to the JSON property `code`
51947
+ # @return [String]
51948
+ attr_accessor :code
51949
+
51950
+ # [Output Only] Metadata about this warning in key:
51951
+ # value format. For example:
51952
+ # "data": [
51953
+ # `
51954
+ # "key": "scope",
51955
+ # "value": "zones/us-east1-d"
51956
+ # `
51957
+ # Corresponds to the JSON property `data`
51958
+ # @return [Array<Google::Apis::ComputeBeta::ReliabilityRisksListResponse::Warning::Datum>]
51959
+ attr_accessor :data
51960
+
51961
+ # [Output Only] A human-readable description of the warning code.
51962
+ # Corresponds to the JSON property `message`
51963
+ # @return [String]
51964
+ attr_accessor :message
51965
+
51966
+ def initialize(**args)
51967
+ update!(**args)
51968
+ end
51969
+
51970
+ # Update properties of this object
51971
+ def update!(**args)
51972
+ @code = args[:code] if args.key?(:code)
51973
+ @data = args[:data] if args.key?(:data)
51974
+ @message = args[:message] if args.key?(:message)
51975
+ end
51976
+
51977
+ #
51978
+ class Datum
51979
+ include Google::Apis::Core::Hashable
51980
+
51981
+ # [Output Only] A key that provides more detail on the warning being
51982
+ # returned. For example, for warnings where there are no results in a list
51983
+ # request for a particular zone, this key might be scope and
51984
+ # the key value might be the zone name. Other examples might be a key
51985
+ # indicating a deprecated resource and a suggested replacement, or a
51986
+ # warning about invalid network settings (for example, if an instance
51987
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
51988
+ # Corresponds to the JSON property `key`
51989
+ # @return [String]
51990
+ attr_accessor :key
51991
+
51992
+ # [Output Only] A warning data value corresponding to the key.
51993
+ # Corresponds to the JSON property `value`
51994
+ # @return [String]
51995
+ attr_accessor :value
51996
+
51997
+ def initialize(**args)
51998
+ update!(**args)
51999
+ end
52000
+
52001
+ # Update properties of this object
52002
+ def update!(**args)
52003
+ @key = args[:key] if args.key?(:key)
52004
+ @value = args[:value] if args.key?(:value)
52005
+ end
52006
+ end
52007
+ end
52008
+ end
52009
+
51661
52010
  # A policy that specifies how requests intended for the route's backends
51662
52011
  # are shadowed to a separate mirrored backend service. The load balancer
51663
52012
  # doesn't wait for responses from the shadow service. Before sending traffic
@@ -54913,6 +55262,113 @@ module Google
54913
55262
  end
54914
55263
  end
54915
55264
 
55265
+ # Detailed insights and metrics about a detected reliability risk.
55266
+ class RiskDetails
55267
+ include Google::Apis::Core::Hashable
55268
+
55269
+ # The duration of the risk since it was detected.
55270
+ # Corresponds to the JSON property `duration`
55271
+ # @return [String]
55272
+ attr_accessor :duration
55273
+
55274
+ # Detailed insights for a global DNS reliability risk.
55275
+ # Corresponds to the JSON property `globalDnsInsight`
55276
+ # @return [Google::Apis::ComputeBeta::RiskDetailsGlobalDnsInsight]
55277
+ attr_accessor :global_dns_insight
55278
+
55279
+ # The last time the risk was updated.
55280
+ # Corresponds to the JSON property `lastUpdateTimestamp`
55281
+ # @return [String]
55282
+ attr_accessor :last_update_timestamp
55283
+
55284
+ # The severity of the risk.
55285
+ # Corresponds to the JSON property `severity`
55286
+ # @return [String]
55287
+ attr_accessor :severity
55288
+
55289
+ # The type of risk.
55290
+ # Corresponds to the JSON property `type`
55291
+ # @return [String]
55292
+ attr_accessor :type
55293
+
55294
+ def initialize(**args)
55295
+ update!(**args)
55296
+ end
55297
+
55298
+ # Update properties of this object
55299
+ def update!(**args)
55300
+ @duration = args[:duration] if args.key?(:duration)
55301
+ @global_dns_insight = args[:global_dns_insight] if args.key?(:global_dns_insight)
55302
+ @last_update_timestamp = args[:last_update_timestamp] if args.key?(:last_update_timestamp)
55303
+ @severity = args[:severity] if args.key?(:severity)
55304
+ @type = args[:type] if args.key?(:type)
55305
+ end
55306
+ end
55307
+
55308
+ # Detailed insights for a global DNS reliability risk.
55309
+ class RiskDetailsGlobalDnsInsight
55310
+ include Google::Apis::Core::Hashable
55311
+
55312
+ # Indicates whether the project's default DNS setting is global DNS.
55313
+ # Corresponds to the JSON property `projectDefaultIsGlobalDns`
55314
+ # @return [Boolean]
55315
+ attr_accessor :project_default_is_global_dns
55316
+ alias_method :project_default_is_global_dns?, :project_default_is_global_dns
55317
+
55318
+ # The observation window for the query counts.
55319
+ # Corresponds to the JSON property `queryObservationWindow`
55320
+ # @return [String]
55321
+ attr_accessor :query_observation_window
55322
+
55323
+ # The number of queries that are risky. This is always less than or
55324
+ # equal to total_query_count.
55325
+ # Corresponds to the JSON property `riskyQueryCount`
55326
+ # @return [Fixnum]
55327
+ attr_accessor :risky_query_count
55328
+
55329
+ # The total number of queries in the observation window.
55330
+ # Corresponds to the JSON property `totalQueryCount`
55331
+ # @return [Fixnum]
55332
+ attr_accessor :total_query_count
55333
+
55334
+ def initialize(**args)
55335
+ update!(**args)
55336
+ end
55337
+
55338
+ # Update properties of this object
55339
+ def update!(**args)
55340
+ @project_default_is_global_dns = args[:project_default_is_global_dns] if args.key?(:project_default_is_global_dns)
55341
+ @query_observation_window = args[:query_observation_window] if args.key?(:query_observation_window)
55342
+ @risky_query_count = args[:risky_query_count] if args.key?(:risky_query_count)
55343
+ @total_query_count = args[:total_query_count] if args.key?(:total_query_count)
55344
+ end
55345
+ end
55346
+
55347
+ # Recommendation for mitigating a reliability risk, including a reference URL.
55348
+ class RiskRecommendation
55349
+ include Google::Apis::Core::Hashable
55350
+
55351
+ # Mitigation guide for the risk.
55352
+ # Corresponds to the JSON property `content`
55353
+ # @return [String]
55354
+ attr_accessor :content
55355
+
55356
+ # URL referencing a more detailed mitigation guide.
55357
+ # Corresponds to the JSON property `referenceUrl`
55358
+ # @return [String]
55359
+ attr_accessor :reference_url
55360
+
55361
+ def initialize(**args)
55362
+ update!(**args)
55363
+ end
55364
+
55365
+ # Update properties of this object
55366
+ def update!(**args)
55367
+ @content = args[:content] if args.key?(:content)
55368
+ @reference_url = args[:reference_url] if args.key?(:reference_url)
55369
+ end
55370
+ end
55371
+
54916
55372
  # Rollout resource.
54917
55373
  # A Rollout is a specific instance of a RolloutPlan. It represents a single
54918
55374
  # execution of a strategy to roll out a specific resource. It also provides
@@ -57421,8 +57877,9 @@ module Google
57421
57877
 
57422
57878
  # Output only. Effective timeout (in seconds) for TCP connections that are in
57423
57879
  # TIME_WAIT
57424
- # state. This value is equal to tcp_time_wait_timeout_sec if it is set,
57425
- # otherwise it is equal to 120s. The field is output only.
57880
+ # state. This value is equal to tcp_time_wait_timeout_sec.
57881
+ # If tcp_time_wait_timeout_sec isn't set, the effective timeout is 30s or
57882
+ # 120s. The field is output only.
57426
57883
  # Corresponds to the JSON property `effectiveTcpTimeWaitTimeoutSec`
57427
57884
  # @return [Fixnum]
57428
57885
  attr_accessor :effective_tcp_time_wait_timeout_sec
@@ -61598,6 +62055,12 @@ module Google
61598
62055
  # @return [String]
61599
62056
  attr_accessor :name
61600
62057
 
62058
+ # The number of NAT IP addresses to be allocated per connected endpoint.
62059
+ # If not specified, the default value is 1.
62060
+ # Corresponds to the JSON property `natIpsPerEndpoint`
62061
+ # @return [Fixnum]
62062
+ attr_accessor :nat_ips_per_endpoint
62063
+
61601
62064
  # An array of URLs where each entry is the URL of a subnet provided
61602
62065
  # by the service producer to use for NAT in this service attachment.
61603
62066
  # Corresponds to the JSON property `natSubnets`
@@ -61695,6 +62158,7 @@ module Google
61695
62158
  @kind = args[:kind] if args.key?(:kind)
61696
62159
  @metadata = args[:metadata] if args.key?(:metadata)
61697
62160
  @name = args[:name] if args.key?(:name)
62161
+ @nat_ips_per_endpoint = args[:nat_ips_per_endpoint] if args.key?(:nat_ips_per_endpoint)
61698
62162
  @nat_subnets = args[:nat_subnets] if args.key?(:nat_subnets)
61699
62163
  @producer_forwarding_rule = args[:producer_forwarding_rule] if args.key?(:producer_forwarding_rule)
61700
62164
  @propagated_connection_limit = args[:propagated_connection_limit] if args.key?(:propagated_connection_limit)
@@ -65010,8 +65474,7 @@ module Google
65010
65474
  class SslPolicyReference
65011
65475
  include Google::Apis::Core::Hashable
65012
65476
 
65013
- # URL of the SSL policy resource. Set this to empty string to clear any
65014
- # existing SSL policy associated with the target proxy resource.
65477
+ #
65015
65478
  # Corresponds to the JSON property `sslPolicy`
65016
65479
  # @return [String]
65017
65480
  attr_accessor :ssl_policy
@@ -66740,6 +67203,14 @@ module Google
66740
67203
  # @return [String]
66741
67204
  attr_accessor :ipv6_gce_endpoint
66742
67205
 
67206
+ # Specifies the network tier for EXTERNAL IPv6. Can only be set when
67207
+ # ipv6_access_type is EXTERNAL. Defaults to project defaultNetworkTier if not
67208
+ # specified during the creation of the subnetwork. This field is IMMUTABLE
67209
+ # once set with EXTERNAL IPv6.
67210
+ # Corresponds to the JSON property `ipv6NetworkTier`
67211
+ # @return [String]
67212
+ attr_accessor :ipv6_network_tier
67213
+
66743
67214
  # Output only. [Output Only] Type of the resource. Always compute#subnetwork
66744
67215
  # for Subnetwork resources.
66745
67216
  # Corresponds to the JSON property `kind`
@@ -66894,6 +67365,7 @@ module Google
66894
67365
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
66895
67366
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
66896
67367
  @ipv6_gce_endpoint = args[:ipv6_gce_endpoint] if args.key?(:ipv6_gce_endpoint)
67368
+ @ipv6_network_tier = args[:ipv6_network_tier] if args.key?(:ipv6_network_tier)
66897
67369
  @kind = args[:kind] if args.key?(:kind)
66898
67370
  @log_config = args[:log_config] if args.key?(:log_config)
66899
67371
  @name = args[:name] if args.key?(:name)
@@ -72768,6 +73240,11 @@ module Google
72768
73240
  # @return [String]
72769
73241
  attr_accessor :path_template_rewrite
72770
73242
 
73243
+ # The spec for modifying the path using a regular expression.
73244
+ # Corresponds to the JSON property `regexRewrite`
73245
+ # @return [Google::Apis::ComputeBeta::RegexRewrite]
73246
+ attr_accessor :regex_rewrite
73247
+
72771
73248
  def initialize(**args)
72772
73249
  update!(**args)
72773
73250
  end
@@ -72777,6 +73254,7 @@ module Google
72777
73254
  @host_rewrite = args[:host_rewrite] if args.key?(:host_rewrite)
72778
73255
  @path_prefix_rewrite = args[:path_prefix_rewrite] if args.key?(:path_prefix_rewrite)
72779
73256
  @path_template_rewrite = args[:path_template_rewrite] if args.key?(:path_template_rewrite)
73257
+ @regex_rewrite = args[:regex_rewrite] if args.key?(:regex_rewrite)
72780
73258
  end
72781
73259
  end
72782
73260