google-apis-compute_alpha 0.103.0 → 0.105.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.
@@ -1340,6 +1340,25 @@ module Google
1340
1340
  end
1341
1341
  end
1342
1342
 
1343
+ #
1344
+ class AllocationReservationSharingPolicy
1345
+ include Google::Apis::Core::Hashable
1346
+
1347
+ # Sharing config for all Google Cloud services.
1348
+ # Corresponds to the JSON property `serviceShareType`
1349
+ # @return [String]
1350
+ attr_accessor :service_share_type
1351
+
1352
+ def initialize(**args)
1353
+ update!(**args)
1354
+ end
1355
+
1356
+ # Update properties of this object
1357
+ def update!(**args)
1358
+ @service_share_type = args[:service_share_type] if args.key?(:service_share_type)
1359
+ end
1360
+ end
1361
+
1343
1362
  # [Output Only] Contains output only fields.
1344
1363
  class AllocationResourceStatus
1345
1364
  include Google::Apis::Core::Hashable
@@ -1368,6 +1387,12 @@ module Google
1368
1387
  # @return [String]
1369
1388
  attr_accessor :source_instance_template_id
1370
1389
 
1390
+ # Per service utilization breakdown. The Key is the Google Cloud managed service
1391
+ # name.
1392
+ # Corresponds to the JSON property `utilizations`
1393
+ # @return [Hash<String,Fixnum>]
1394
+ attr_accessor :utilizations
1395
+
1371
1396
  def initialize(**args)
1372
1397
  update!(**args)
1373
1398
  end
@@ -1375,6 +1400,7 @@ module Google
1375
1400
  # Update properties of this object
1376
1401
  def update!(**args)
1377
1402
  @source_instance_template_id = args[:source_instance_template_id] if args.key?(:source_instance_template_id)
1403
+ @utilizations = args[:utilizations] if args.key?(:utilizations)
1378
1404
  end
1379
1405
  end
1380
1406
 
@@ -2998,6 +3024,12 @@ module Google
2998
3024
  # @return [Float]
2999
3025
  attr_accessor :capacity_scaler
3000
3026
 
3027
+ # List of custom metrics that are used for CUSTOM_METRICS BalancingMode and
3028
+ # WEIGHTED_ROUND_ROBIN BackendService locality_lb_policy.
3029
+ # Corresponds to the JSON property `customMetrics`
3030
+ # @return [Array<Google::Apis::ComputeAlpha::BackendCustomMetric>]
3031
+ attr_accessor :custom_metrics
3032
+
3001
3033
  # An optional description of this resource. Provide this property when you
3002
3034
  # create the resource.
3003
3035
  # Corresponds to the JSON property `description`
@@ -3088,6 +3120,7 @@ module Google
3088
3120
  def update!(**args)
3089
3121
  @balancing_mode = args[:balancing_mode] if args.key?(:balancing_mode)
3090
3122
  @capacity_scaler = args[:capacity_scaler] if args.key?(:capacity_scaler)
3123
+ @custom_metrics = args[:custom_metrics] if args.key?(:custom_metrics)
3091
3124
  @description = args[:description] if args.key?(:description)
3092
3125
  @failover = args[:failover] if args.key?(:failover)
3093
3126
  @group = args[:group] if args.key?(:group)
@@ -3564,6 +3597,49 @@ module Google
3564
3597
  end
3565
3598
  end
3566
3599
 
3600
+ # Custom Metrics are used for CUSTOM_METRICS balancing_mode and
3601
+ # WEIGHTED_ROUND_ROBIN BackendService locality_lb_policy.
3602
+ class BackendCustomMetric
3603
+ include Google::Apis::Core::Hashable
3604
+
3605
+ # If true, the metric data is collected and reported to Cloud Monitoring, but is
3606
+ # not used for load balancing.
3607
+ # Corresponds to the JSON property `dryRun`
3608
+ # @return [Boolean]
3609
+ attr_accessor :dry_run
3610
+ alias_method :dry_run?, :dry_run
3611
+
3612
+ # Optional parameter to define a target utilization for the Custom Metrics
3613
+ # balancing mode. The valid range is [0.0, 1.0].
3614
+ # Corresponds to the JSON property `maxUtilization`
3615
+ # @return [Float]
3616
+ attr_accessor :max_utilization
3617
+
3618
+ # Name of a custom utilization signal. The name must be 1-24 characters long,
3619
+ # and comply with RFC1035. Specifically, the name must be 1-24 characters long
3620
+ # and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the
3621
+ # first character must be a lowercase letter, and all following characters must
3622
+ # be a dash, lowercase letter, or digit, except the last character, which cannot
3623
+ # be a dash. For usage guidelines, see Custom Metrics balancing mode. This field
3624
+ # can only be used for a global or regional backend service with the
3625
+ # loadBalancingScheme set to EXTERNAL_MANAGED, INTERNAL_MANAGED
3626
+ # INTERNAL_SELF_MANAGED.
3627
+ # Corresponds to the JSON property `name`
3628
+ # @return [String]
3629
+ attr_accessor :name
3630
+
3631
+ def initialize(**args)
3632
+ update!(**args)
3633
+ end
3634
+
3635
+ # Update properties of this object
3636
+ def update!(**args)
3637
+ @dry_run = args[:dry_run] if args.key?(:dry_run)
3638
+ @max_utilization = args[:max_utilization] if args.key?(:max_utilization)
3639
+ @name = args[:name] if args.key?(:name)
3640
+ end
3641
+ end
3642
+
3567
3643
  # Represents a Backend Service resource. A backend service defines how Google
3568
3644
  # Cloud load balancers distribute traffic. The backend service configuration
3569
3645
  # contains a set of values, such as the protocol used to connect to backends,
@@ -3965,7 +4041,7 @@ module Google
3965
4041
  # @return [Fixnum]
3966
4042
  attr_accessor :timeout_sec
3967
4043
 
3968
- #
4044
+ # [Output Only] List of resources referencing given backend service.
3969
4045
  # Corresponds to the JSON property `usedBy`
3970
4046
  # @return [Array<Google::Apis::ComputeAlpha::BackendServiceUsedBy>]
3971
4047
  attr_accessor :used_by
@@ -5172,7 +5248,9 @@ module Google
5172
5248
  class BackendServiceUsedBy
5173
5249
  include Google::Apis::Core::Hashable
5174
5250
 
5175
- #
5251
+ # [Output Only] Server-defined URL for resources referencing given
5252
+ # BackendService like UrlMaps, TargetTcpProxies, TargetSslProxies and
5253
+ # ForwardingRule.
5176
5254
  # Corresponds to the JSON property `reference`
5177
5255
  # @return [String]
5178
5256
  attr_accessor :reference
@@ -6255,6 +6333,13 @@ module Google
6255
6333
  # @return [String]
6256
6334
  attr_accessor :creation_timestamp
6257
6335
 
6336
+ # [Input Only] Optional, specifies the CUD end time requested by the customer in
6337
+ # RFC3339 text format. Needed when the customer wants CUD's end date is later
6338
+ # than the start date + term duration.
6339
+ # Corresponds to the JSON property `customEndTimestamp`
6340
+ # @return [String]
6341
+ attr_accessor :custom_end_timestamp
6342
+
6258
6343
  # An optional description of this resource. Provide this property when you
6259
6344
  # create the resource.
6260
6345
  # Corresponds to the JSON property `description`
@@ -6383,6 +6468,7 @@ module Google
6383
6468
  @auto_renew = args[:auto_renew] if args.key?(:auto_renew)
6384
6469
  @category = args[:category] if args.key?(:category)
6385
6470
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
6471
+ @custom_end_timestamp = args[:custom_end_timestamp] if args.key?(:custom_end_timestamp)
6386
6472
  @description = args[:description] if args.key?(:description)
6387
6473
  @end_timestamp = args[:end_timestamp] if args.key?(:end_timestamp)
6388
6474
  @existing_reservations = args[:existing_reservations] if args.key?(:existing_reservations)
@@ -6657,6 +6743,13 @@ module Google
6657
6743
  # @return [Google::Apis::ComputeAlpha::CommitmentResourceStatusCancellationInformation]
6658
6744
  attr_accessor :cancellation_information
6659
6745
 
6746
+ # [Output Only] Indicates the end time of customer's eligibility to send custom
6747
+ # term requests in RFC3339 text format. Term extension requests that (not the
6748
+ # end time in the request) after this time will be rejected.
6749
+ # Corresponds to the JSON property `customTermEligibilityEndTimestamp`
6750
+ # @return [String]
6751
+ attr_accessor :custom_term_eligibility_end_timestamp
6752
+
6660
6753
  def initialize(**args)
6661
6754
  update!(**args)
6662
6755
  end
@@ -6664,6 +6757,7 @@ module Google
6664
6757
  # Update properties of this object
6665
6758
  def update!(**args)
6666
6759
  @cancellation_information = args[:cancellation_information] if args.key?(:cancellation_information)
6760
+ @custom_term_eligibility_end_timestamp = args[:custom_term_eligibility_end_timestamp] if args.key?(:custom_term_eligibility_end_timestamp)
6667
6761
  end
6668
6762
  end
6669
6763
 
@@ -17149,10 +17243,15 @@ module Google
17149
17243
  # @return [Array<Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy>]
17150
17244
  attr_accessor :auto_healing_policies
17151
17245
 
17152
- # The base instance name to use for instances in this group. The value must be 1-
17153
- # 58 characters long. Instances are named by appending a hyphen and a random
17154
- # four-character string to the base instance name. The base instance name must
17155
- # comply with RFC1035.
17246
+ # The base instance name is a prefix that you want to attach to the names of all
17247
+ # VMs in a MIG. The maximum character length is 58 and the name must comply with
17248
+ # RFC1035 format. When a VM is created in the group, the MIG appends a hyphen
17249
+ # and a random four-character string to the base instance name. If you want the
17250
+ # MIG to assign sequential numbers instead of a random string, then end the base
17251
+ # instance name with a hyphen followed by one or more hash symbols. The hash
17252
+ # symbols indicate the number of digits. For example, a base instance name of "
17253
+ # vm-###" results in "vm-001" as a VM name. @pattern [a-z](([-a-z0-9]`0,57`)|([-
17254
+ # a-z0-9]`0,52`-#`1,10`(\\[[0-9]`1,10`\\])?))
17156
17255
  # Corresponds to the JSON property `baseInstanceName`
17157
17256
  # @return [String]
17158
17257
  attr_accessor :base_instance_name
@@ -17263,6 +17362,11 @@ module Google
17263
17362
  # @return [String]
17264
17363
  attr_accessor :region
17265
17364
 
17365
+ # Resource policies for this managed instance group.
17366
+ # Corresponds to the JSON property `resourcePolicies`
17367
+ # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerResourcePolicies]
17368
+ attr_accessor :resource_policies
17369
+
17266
17370
  # [Output Only] Reserved for future use.
17267
17371
  # Corresponds to the JSON property `satisfiesPzi`
17268
17372
  # @return [Boolean]
@@ -17392,6 +17496,7 @@ module Google
17392
17496
  @named_ports = args[:named_ports] if args.key?(:named_ports)
17393
17497
  @params = args[:params] if args.key?(:params)
17394
17498
  @region = args[:region] if args.key?(:region)
17499
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
17395
17500
  @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
17396
17501
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
17397
17502
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -17881,6 +17986,19 @@ module Google
17881
17986
  # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerInstanceLifecyclePolicyMetadataBasedReadinessSignal]
17882
17987
  attr_accessor :metadata_based_readiness_signal
17883
17988
 
17989
+ # The action that a MIG performs on an unhealthy VM. A VM is marked as unhealthy
17990
+ # when the application running on that VM fails a health check. Valid values are:
17991
+ # - DEFAULT_ACTION (default): The MIG performs the same action as specified in
17992
+ # the instanceLifecyclePolicy.defaultActionOnFailure field. If the
17993
+ # defaultActionOnFailure field is set to REPAIR, then the MIG repairs unhealthy
17994
+ # VMs. If the defaultActionOnFailure field is set to DO_NOTHING, then the MIG
17995
+ # doesn't repair unhealthy VMs. - REPAIR: The MIG repairs unhealthy VMs by
17996
+ # recreating it. - DO_NOTHING: The MIG doesn't repair unhealthy VMs. For more
17997
+ # information, see About repairing VMs in a MIG.
17998
+ # Corresponds to the JSON property `onFailedHealthCheck`
17999
+ # @return [String]
18000
+ attr_accessor :on_failed_health_check
18001
+
17884
18002
  def initialize(**args)
17885
18003
  update!(**args)
17886
18004
  end
@@ -17890,6 +18008,7 @@ module Google
17890
18008
  @default_action_on_failure = args[:default_action_on_failure] if args.key?(:default_action_on_failure)
17891
18009
  @force_update_on_repair = args[:force_update_on_repair] if args.key?(:force_update_on_repair)
17892
18010
  @metadata_based_readiness_signal = args[:metadata_based_readiness_signal] if args.key?(:metadata_based_readiness_signal)
18011
+ @on_failed_health_check = args[:on_failed_health_check] if args.key?(:on_failed_health_check)
17893
18012
  end
17894
18013
  end
17895
18014
 
@@ -18559,6 +18678,30 @@ module Google
18559
18678
  end
18560
18679
  end
18561
18680
 
18681
+ #
18682
+ class InstanceGroupManagerResourcePolicies
18683
+ include Google::Apis::Core::Hashable
18684
+
18685
+ # The URL of the workload policy that is specified for this managed instance
18686
+ # group. It can be a full or partial URL. For example, the following are all
18687
+ # valid URLs to a workload policy: - https://www.googleapis.com/compute/v1/
18688
+ # projects/project/regions/region /resourcePolicies/resourcePolicy - projects/
18689
+ # project/regions/region/resourcePolicies/resourcePolicy - regions/region/
18690
+ # resourcePolicies/resourcePolicy
18691
+ # Corresponds to the JSON property `workloadPolicy`
18692
+ # @return [String]
18693
+ attr_accessor :workload_policy
18694
+
18695
+ def initialize(**args)
18696
+ update!(**args)
18697
+ end
18698
+
18699
+ # Update properties of this object
18700
+ def update!(**args)
18701
+ @workload_policy = args[:workload_policy] if args.key?(:workload_policy)
18702
+ end
18703
+ end
18704
+
18562
18705
  #
18563
18706
  class InstanceGroupManagerStandbyPolicy
18564
18707
  include Google::Apis::Core::Hashable
@@ -20314,9 +20457,10 @@ module Google
20314
20457
  attr_accessor :labels
20315
20458
 
20316
20459
  # The machine type to use for instances that are created from these properties.
20317
- # This field only accept machine types name. e.g. n2-standard-4 and does not
20318
- # accept machine type full or partial url. e.g. projects/my-l7ilb-project/zones/
20319
- # us-central1-a/machineTypes/n2-standard-4 will throw INTERNAL_ERROR.
20460
+ # This field only accepts a machine type name, for example `n2-standard-4`. If
20461
+ # you use the machine type full or partial URL, for example `projects/my-l7ilb-
20462
+ # project/zones/us-central1-a/machineTypes/n2-standard-4`, the request will
20463
+ # result in an `INTERNAL_ERROR`.
20320
20464
  # Corresponds to the JSON property `machineType`
20321
20465
  # @return [String]
20322
20466
  attr_accessor :machine_type
@@ -21823,6 +21967,147 @@ module Google
21823
21967
  end
21824
21968
  end
21825
21969
 
21970
+ #
21971
+ class InstantSnapshotGroup
21972
+ include Google::Apis::Core::Hashable
21973
+
21974
+ # [Output Only] Creation timestamp in RFC3339 text format.
21975
+ # Corresponds to the JSON property `creationTimestamp`
21976
+ # @return [String]
21977
+ attr_accessor :creation_timestamp
21978
+
21979
+ # Optional. An optional description of this resource. Provide this property when
21980
+ # you create the resource.
21981
+ # Corresponds to the JSON property `description`
21982
+ # @return [String]
21983
+ attr_accessor :description
21984
+
21985
+ # [Output Only] The unique identifier for the resource. This identifier is
21986
+ # defined by the server.
21987
+ # Corresponds to the JSON property `id`
21988
+ # @return [Fixnum]
21989
+ attr_accessor :id
21990
+
21991
+ # [Output Only] Type of the resource. Always compute#instantSnapshotGroup for
21992
+ # InstantSnapshotGroup resources.
21993
+ # Corresponds to the JSON property `kind`
21994
+ # @return [String]
21995
+ attr_accessor :kind
21996
+
21997
+ # Identifier. Name of the resource; provided by the client when the resource is
21998
+ # created. The name must be 1-63 characters long, and comply with RFC1035.
21999
+ # Specifically, the name must be 1-63 characters long and match the regular
22000
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must
22001
+ # be a lowercase letter, and all following characters must be a dash, lowercase
22002
+ # letter, or digit, except the last character, which cannot be a dash.
22003
+ # Corresponds to the JSON property `name`
22004
+ # @return [String]
22005
+ attr_accessor :name
22006
+
22007
+ # [Output Only] URL of the region where the instant snapshot group resides. You
22008
+ # must specify this field as part of the HTTP request URL. It is not settable as
22009
+ # a field in the request body.
22010
+ # Corresponds to the JSON property `region`
22011
+ # @return [String]
22012
+ attr_accessor :region
22013
+
22014
+ #
22015
+ # Corresponds to the JSON property `resourceStatus`
22016
+ # @return [Google::Apis::ComputeAlpha::InstantSnapshotGroupResourceStatus]
22017
+ attr_accessor :resource_status
22018
+
22019
+ # [Output Only] Server-defined URL for the resource.
22020
+ # Corresponds to the JSON property `selfLink`
22021
+ # @return [String]
22022
+ attr_accessor :self_link
22023
+
22024
+ # [Output Only] Server-defined URL for this resource's resource id.
22025
+ # Corresponds to the JSON property `selfLinkWithId`
22026
+ # @return [String]
22027
+ attr_accessor :self_link_with_id
22028
+
22029
+ # [Output Only]
22030
+ # Corresponds to the JSON property `status`
22031
+ # @return [String]
22032
+ attr_accessor :status
22033
+
22034
+ # [Output Only] URL of the zone where the instant snapshot group resides. You
22035
+ # must specify this field as part of the HTTP request URL. It is not settable as
22036
+ # a field in the request body.
22037
+ # Corresponds to the JSON property `zone`
22038
+ # @return [String]
22039
+ attr_accessor :zone
22040
+
22041
+ def initialize(**args)
22042
+ update!(**args)
22043
+ end
22044
+
22045
+ # Update properties of this object
22046
+ def update!(**args)
22047
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
22048
+ @description = args[:description] if args.key?(:description)
22049
+ @id = args[:id] if args.key?(:id)
22050
+ @kind = args[:kind] if args.key?(:kind)
22051
+ @name = args[:name] if args.key?(:name)
22052
+ @region = args[:region] if args.key?(:region)
22053
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
22054
+ @self_link = args[:self_link] if args.key?(:self_link)
22055
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
22056
+ @status = args[:status] if args.key?(:status)
22057
+ @zone = args[:zone] if args.key?(:zone)
22058
+ end
22059
+ end
22060
+
22061
+ #
22062
+ class InstantSnapshotGroupResourceStatus
22063
+ include Google::Apis::Core::Hashable
22064
+
22065
+ # [Output Only]
22066
+ # Corresponds to the JSON property `consistencyMembershipResolutionTime`
22067
+ # @return [String]
22068
+ attr_accessor :consistency_membership_resolution_time
22069
+
22070
+ # [Output Only]
22071
+ # Corresponds to the JSON property `sourceInfo`
22072
+ # @return [Google::Apis::ComputeAlpha::InstantSnapshotGroupSourceInfo]
22073
+ attr_accessor :source_info
22074
+
22075
+ def initialize(**args)
22076
+ update!(**args)
22077
+ end
22078
+
22079
+ # Update properties of this object
22080
+ def update!(**args)
22081
+ @consistency_membership_resolution_time = args[:consistency_membership_resolution_time] if args.key?(:consistency_membership_resolution_time)
22082
+ @source_info = args[:source_info] if args.key?(:source_info)
22083
+ end
22084
+ end
22085
+
22086
+ #
22087
+ class InstantSnapshotGroupSourceInfo
22088
+ include Google::Apis::Core::Hashable
22089
+
22090
+ #
22091
+ # Corresponds to the JSON property `consistencyGroup`
22092
+ # @return [String]
22093
+ attr_accessor :consistency_group
22094
+
22095
+ #
22096
+ # Corresponds to the JSON property `consistencyGroupId`
22097
+ # @return [String]
22098
+ attr_accessor :consistency_group_id
22099
+
22100
+ def initialize(**args)
22101
+ update!(**args)
22102
+ end
22103
+
22104
+ # Update properties of this object
22105
+ def update!(**args)
22106
+ @consistency_group = args[:consistency_group] if args.key?(:consistency_group)
22107
+ @consistency_group_id = args[:consistency_group_id] if args.key?(:consistency_group_id)
22108
+ end
22109
+ end
22110
+
21826
22111
  # Contains a list of InstantSnapshot resources.
21827
22112
  class InstantSnapshotList
21828
22113
  include Google::Apis::Core::Hashable
@@ -22370,6 +22655,11 @@ module Google
22370
22655
  # @return [Google::Apis::ComputeAlpha::InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy]
22371
22656
  attr_accessor :bandwidth_percentage_policy
22372
22657
 
22658
+ #
22659
+ # Corresponds to the JSON property `egressMinBandwidthPercentagePolicy`
22660
+ # @return [Google::Apis::ComputeAlpha::InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy]
22661
+ attr_accessor :egress_min_bandwidth_percentage_policy
22662
+
22373
22663
  # A description for the AAI profile on this interconnect.
22374
22664
  # Corresponds to the JSON property `profileDescription`
22375
22665
  # @return [String]
@@ -22387,15 +22677,15 @@ module Google
22387
22677
  # Update properties of this object
22388
22678
  def update!(**args)
22389
22679
  @bandwidth_percentage_policy = args[:bandwidth_percentage_policy] if args.key?(:bandwidth_percentage_policy)
22680
+ @egress_min_bandwidth_percentage_policy = args[:egress_min_bandwidth_percentage_policy] if args.key?(:egress_min_bandwidth_percentage_policy)
22390
22681
  @profile_description = args[:profile_description] if args.key?(:profile_description)
22391
22682
  @strict_priority_policy = args[:strict_priority_policy] if args.key?(:strict_priority_policy)
22392
22683
  end
22393
22684
  end
22394
22685
 
22395
- # Specify bandwidth percentages (0-100) for various traffic classes in
22396
- # BandwidthPercentagePolicy. The sum of all percentages must equal 100. It is
22397
- # valid to specify percentages for some classes and not for others. The others
22398
- # will be implicitly marked as 0.
22686
+ # Specify bandwidth percentages [1-100] for various traffic classes in
22687
+ # BandwidthPercentagePolicy. The sum of all percentages must equal 100. All
22688
+ # traffic classes must have a percentage value specified.
22399
22689
  class InterconnectApplicationAwareInterconnectBandwidthPercentage
22400
22690
  include Google::Apis::Core::Hashable
22401
22691
 
@@ -25360,6 +25650,136 @@ module Google
25360
25650
  end
25361
25651
  end
25362
25652
 
25653
+ # Contains a list of InstantSnapshotGroup resources.
25654
+ class ListInstantSnapshotGroups
25655
+ include Google::Apis::Core::Hashable
25656
+
25657
+ #
25658
+ # Corresponds to the JSON property `etag`
25659
+ # @return [String]
25660
+ attr_accessor :etag
25661
+
25662
+ # [Output Only] Unique identifier for the resource; defined by the server.
25663
+ # Corresponds to the JSON property `id`
25664
+ # @return [String]
25665
+ attr_accessor :id
25666
+
25667
+ # A list of InstantSnapshotGroup resources.
25668
+ # Corresponds to the JSON property `items`
25669
+ # @return [Array<Google::Apis::ComputeAlpha::InstantSnapshotGroup>]
25670
+ attr_accessor :items
25671
+
25672
+ # Type of resource.
25673
+ # Corresponds to the JSON property `kind`
25674
+ # @return [String]
25675
+ attr_accessor :kind
25676
+
25677
+ # [Output Only] This token allows you to get the next page of results for list
25678
+ # requests. If the number of results is larger than maxResults, use the
25679
+ # nextPageToken as a value for the query parameter pageToken in the next list
25680
+ # request. Subsequent list requests will have their own nextPageToken to
25681
+ # continue paging through the results.
25682
+ # Corresponds to the JSON property `nextPageToken`
25683
+ # @return [String]
25684
+ attr_accessor :next_page_token
25685
+
25686
+ # [Output Only] Server-defined URL for this resource.
25687
+ # Corresponds to the JSON property `selfLink`
25688
+ # @return [String]
25689
+ attr_accessor :self_link
25690
+
25691
+ # [Output Only] Unreachable resources. end_interface:
25692
+ # MixerListResponseWithEtagBuilder
25693
+ # Corresponds to the JSON property `unreachables`
25694
+ # @return [Array<String>]
25695
+ attr_accessor :unreachables
25696
+
25697
+ # [Output Only] Informational warning message.
25698
+ # Corresponds to the JSON property `warning`
25699
+ # @return [Google::Apis::ComputeAlpha::ListInstantSnapshotGroups::Warning]
25700
+ attr_accessor :warning
25701
+
25702
+ def initialize(**args)
25703
+ update!(**args)
25704
+ end
25705
+
25706
+ # Update properties of this object
25707
+ def update!(**args)
25708
+ @etag = args[:etag] if args.key?(:etag)
25709
+ @id = args[:id] if args.key?(:id)
25710
+ @items = args[:items] if args.key?(:items)
25711
+ @kind = args[:kind] if args.key?(:kind)
25712
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
25713
+ @self_link = args[:self_link] if args.key?(:self_link)
25714
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
25715
+ @warning = args[:warning] if args.key?(:warning)
25716
+ end
25717
+
25718
+ # [Output Only] Informational warning message.
25719
+ class Warning
25720
+ include Google::Apis::Core::Hashable
25721
+
25722
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
25723
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
25724
+ # Corresponds to the JSON property `code`
25725
+ # @return [String]
25726
+ attr_accessor :code
25727
+
25728
+ # [Output Only] Metadata about this warning in key: value format. For example: "
25729
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
25730
+ # Corresponds to the JSON property `data`
25731
+ # @return [Array<Google::Apis::ComputeAlpha::ListInstantSnapshotGroups::Warning::Datum>]
25732
+ attr_accessor :data
25733
+
25734
+ # [Output Only] A human-readable description of the warning code.
25735
+ # Corresponds to the JSON property `message`
25736
+ # @return [String]
25737
+ attr_accessor :message
25738
+
25739
+ def initialize(**args)
25740
+ update!(**args)
25741
+ end
25742
+
25743
+ # Update properties of this object
25744
+ def update!(**args)
25745
+ @code = args[:code] if args.key?(:code)
25746
+ @data = args[:data] if args.key?(:data)
25747
+ @message = args[:message] if args.key?(:message)
25748
+ end
25749
+
25750
+ #
25751
+ class Datum
25752
+ include Google::Apis::Core::Hashable
25753
+
25754
+ # [Output Only] A key that provides more detail on the warning being returned.
25755
+ # For example, for warnings where there are no results in a list request for a
25756
+ # particular zone, this key might be scope and the key value might be the zone
25757
+ # name. Other examples might be a key indicating a deprecated resource and a
25758
+ # suggested replacement, or a warning about invalid network settings (for
25759
+ # example, if an instance attempts to perform IP forwarding but is not enabled
25760
+ # for IP forwarding).
25761
+ # Corresponds to the JSON property `key`
25762
+ # @return [String]
25763
+ attr_accessor :key
25764
+
25765
+ # [Output Only] A warning data value corresponding to the key.
25766
+ # Corresponds to the JSON property `value`
25767
+ # @return [String]
25768
+ attr_accessor :value
25769
+
25770
+ def initialize(**args)
25771
+ update!(**args)
25772
+ end
25773
+
25774
+ # Update properties of this object
25775
+ def update!(**args)
25776
+ @key = args[:key] if args.key?(:key)
25777
+ @value = args[:value] if args.key?(:value)
25778
+ end
25779
+ end
25780
+ end
25781
+ end
25782
+
25363
25783
  #
25364
25784
  class LocalDisk
25365
25785
  include Google::Apis::Core::Hashable
@@ -26991,6 +27411,316 @@ module Google
26991
27411
  end
26992
27412
  end
26993
27413
 
27414
+ # MultiMIG represents a group of Managed Instance Groups.
27415
+ class MultiMig
27416
+ include Google::Apis::Core::Hashable
27417
+
27418
+ # [Output Only] Creation timestamp in RFC3339 text format.
27419
+ # Corresponds to the JSON property `creationTimestamp`
27420
+ # @return [String]
27421
+ attr_accessor :creation_timestamp
27422
+
27423
+ # An optional description of this resource. Provide this property when you
27424
+ # create the resource.
27425
+ # Corresponds to the JSON property `description`
27426
+ # @return [String]
27427
+ attr_accessor :description
27428
+
27429
+ # [Output Only] The unique identifier for the resource. This identifier is
27430
+ # defined by the server.
27431
+ # Corresponds to the JSON property `id`
27432
+ # @return [Fixnum]
27433
+ attr_accessor :id
27434
+
27435
+ # [Output Only] Type of the resource. Always compute#multiMig for MultiMIGs.
27436
+ # Corresponds to the JSON property `kind`
27437
+ # @return [String]
27438
+ attr_accessor :kind
27439
+
27440
+ # Policy regarding where to create MIGs Initially only zonal MIGs in the same
27441
+ # zone are supported.
27442
+ # Corresponds to the JSON property `locationPolicy`
27443
+ # @return [Google::Apis::ComputeAlpha::MultiMigLocationPolicy]
27444
+ attr_accessor :location_policy
27445
+
27446
+ # Name of the resource. Provided by the client when the resource is created. The
27447
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
27448
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
27449
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
27450
+ # and all following characters must be a dash, lowercase letter, or digit,
27451
+ # except the last character, which cannot be a dash.
27452
+ # Corresponds to the JSON property `name`
27453
+ # @return [String]
27454
+ attr_accessor :name
27455
+
27456
+ # User-provided names for Parts of MultiMIG and the Parts themselves.
27457
+ # Corresponds to the JSON property `parts`
27458
+ # @return [Hash<String,Google::Apis::ComputeAlpha::MultiMigPart>]
27459
+ attr_accessor :parts
27460
+
27461
+ # [Output Only] URL of the region where the resource resides. Only applicable
27462
+ # for regional resources. You must specify this field as part of the HTTP
27463
+ # request URL. It is not settable as a field in the request body.
27464
+ # Corresponds to the JSON property `region`
27465
+ # @return [String]
27466
+ attr_accessor :region
27467
+
27468
+ # Policy for handling provisioning and other scheduling-related events.
27469
+ # Corresponds to the JSON property `schedulingPolicy`
27470
+ # @return [Google::Apis::ComputeAlpha::MultiMigSchedulingPolicy]
27471
+ attr_accessor :scheduling_policy
27472
+
27473
+ # [Output only] Server-defined URL for the resource.
27474
+ # Corresponds to the JSON property `selfLink`
27475
+ # @return [String]
27476
+ attr_accessor :self_link
27477
+
27478
+ # [Output Only] Server-defined URL for this resource with the resource id.
27479
+ # Corresponds to the JSON property `selfLinkWithId`
27480
+ # @return [String]
27481
+ attr_accessor :self_link_with_id
27482
+
27483
+ #
27484
+ # Corresponds to the JSON property `status`
27485
+ # @return [Google::Apis::ComputeAlpha::MultiMigStatus]
27486
+ attr_accessor :status
27487
+
27488
+ def initialize(**args)
27489
+ update!(**args)
27490
+ end
27491
+
27492
+ # Update properties of this object
27493
+ def update!(**args)
27494
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
27495
+ @description = args[:description] if args.key?(:description)
27496
+ @id = args[:id] if args.key?(:id)
27497
+ @kind = args[:kind] if args.key?(:kind)
27498
+ @location_policy = args[:location_policy] if args.key?(:location_policy)
27499
+ @name = args[:name] if args.key?(:name)
27500
+ @parts = args[:parts] if args.key?(:parts)
27501
+ @region = args[:region] if args.key?(:region)
27502
+ @scheduling_policy = args[:scheduling_policy] if args.key?(:scheduling_policy)
27503
+ @self_link = args[:self_link] if args.key?(:self_link)
27504
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
27505
+ @status = args[:status] if args.key?(:status)
27506
+ end
27507
+ end
27508
+
27509
+ # Policy regarding where to create MIGs Initially only zonal MIGs in the same
27510
+ # zone are supported.
27511
+ class MultiMigLocationPolicy
27512
+ include Google::Apis::Core::Hashable
27513
+
27514
+ # List of zones where MIGs will be provisioned. Should be valid RFC1035 name
27515
+ # Corresponds to the JSON property `provisioningZones`
27516
+ # @return [Array<String>]
27517
+ attr_accessor :provisioning_zones
27518
+
27519
+ def initialize(**args)
27520
+ update!(**args)
27521
+ end
27522
+
27523
+ # Update properties of this object
27524
+ def update!(**args)
27525
+ @provisioning_zones = args[:provisioning_zones] if args.key?(:provisioning_zones)
27526
+ end
27527
+ end
27528
+
27529
+ # Config for an MMIG part.
27530
+ class MultiMigPart
27531
+ include Google::Apis::Core::Hashable
27532
+
27533
+ # Link to an existing InstanceGroupManager that will be adopted by a MultiMIG.
27534
+ # Corresponds to the JSON property `instanceGroupManager`
27535
+ # @return [String]
27536
+ attr_accessor :instance_group_manager
27537
+
27538
+ # Represents a Managed Instance Group resource. An instance group is a
27539
+ # collection of VM instances that you can manage as a single entity. For more
27540
+ # information, read Instance groups. For zonal Managed Instance Group, use the
27541
+ # instanceGroupManagers resource. For regional Managed Instance Group, use the
27542
+ # regionInstanceGroupManagers resource.
27543
+ # Corresponds to the JSON property `instanceGroupManagerProperties`
27544
+ # @return [Google::Apis::ComputeAlpha::InstanceGroupManager]
27545
+ attr_accessor :instance_group_manager_properties
27546
+
27547
+ def initialize(**args)
27548
+ update!(**args)
27549
+ end
27550
+
27551
+ # Update properties of this object
27552
+ def update!(**args)
27553
+ @instance_group_manager = args[:instance_group_manager] if args.key?(:instance_group_manager)
27554
+ @instance_group_manager_properties = args[:instance_group_manager_properties] if args.key?(:instance_group_manager_properties)
27555
+ end
27556
+ end
27557
+
27558
+ # Policy for handling provisioning and other scheduling-related events.
27559
+ class MultiMigSchedulingPolicy
27560
+ include Google::Apis::Core::Hashable
27561
+
27562
+ # How provisioning of MIGs should be scheduled (coordinated or not)
27563
+ # Corresponds to the JSON property `provisioning`
27564
+ # @return [String]
27565
+ attr_accessor :provisioning
27566
+
27567
+ def initialize(**args)
27568
+ update!(**args)
27569
+ end
27570
+
27571
+ # Update properties of this object
27572
+ def update!(**args)
27573
+ @provisioning = args[:provisioning] if args.key?(:provisioning)
27574
+ end
27575
+ end
27576
+
27577
+ #
27578
+ class MultiMigStatus
27579
+ include Google::Apis::Core::Hashable
27580
+
27581
+ #
27582
+ # Corresponds to the JSON property `memberInstanceGroupManagers`
27583
+ # @return [Array<String>]
27584
+ attr_accessor :member_instance_group_managers
27585
+
27586
+ def initialize(**args)
27587
+ update!(**args)
27588
+ end
27589
+
27590
+ # Update properties of this object
27591
+ def update!(**args)
27592
+ @member_instance_group_managers = args[:member_instance_group_managers] if args.key?(:member_instance_group_managers)
27593
+ end
27594
+ end
27595
+
27596
+ #
27597
+ class MultiMigsList
27598
+ include Google::Apis::Core::Hashable
27599
+
27600
+ #
27601
+ # Corresponds to the JSON property `etag`
27602
+ # @return [String]
27603
+ attr_accessor :etag
27604
+
27605
+ # Unique identifier for the resource; defined by the server.
27606
+ # Corresponds to the JSON property `id`
27607
+ # @return [String]
27608
+ attr_accessor :id
27609
+
27610
+ # A list of MultiMig resources.
27611
+ # Corresponds to the JSON property `items`
27612
+ # @return [Array<Google::Apis::ComputeAlpha::MultiMig>]
27613
+ attr_accessor :items
27614
+
27615
+ # Type of resource.
27616
+ # Corresponds to the JSON property `kind`
27617
+ # @return [String]
27618
+ attr_accessor :kind
27619
+
27620
+ # This token allows you to get the next page of results for maxResults, use the
27621
+ # nextPageToken as a value for the query parameter pageToken in the next list
27622
+ # request. Subsequent list requests will have their own nextPageToken to
27623
+ # continue paging through the results.
27624
+ # Corresponds to the JSON property `nextPageToken`
27625
+ # @return [String]
27626
+ attr_accessor :next_page_token
27627
+
27628
+ # [Output only] Server-defined URL for this resource.
27629
+ # Corresponds to the JSON property `selfLink`
27630
+ # @return [String]
27631
+ attr_accessor :self_link
27632
+
27633
+ # [Output only] Unreachable resources.
27634
+ # Corresponds to the JSON property `unreachables`
27635
+ # @return [Array<String>]
27636
+ attr_accessor :unreachables
27637
+
27638
+ # Informational warning message.
27639
+ # Corresponds to the JSON property `warning`
27640
+ # @return [Google::Apis::ComputeAlpha::MultiMigsList::Warning]
27641
+ attr_accessor :warning
27642
+
27643
+ def initialize(**args)
27644
+ update!(**args)
27645
+ end
27646
+
27647
+ # Update properties of this object
27648
+ def update!(**args)
27649
+ @etag = args[:etag] if args.key?(:etag)
27650
+ @id = args[:id] if args.key?(:id)
27651
+ @items = args[:items] if args.key?(:items)
27652
+ @kind = args[:kind] if args.key?(:kind)
27653
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
27654
+ @self_link = args[:self_link] if args.key?(:self_link)
27655
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
27656
+ @warning = args[:warning] if args.key?(:warning)
27657
+ end
27658
+
27659
+ # Informational warning message.
27660
+ class Warning
27661
+ include Google::Apis::Core::Hashable
27662
+
27663
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
27664
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
27665
+ # Corresponds to the JSON property `code`
27666
+ # @return [String]
27667
+ attr_accessor :code
27668
+
27669
+ # [Output Only] Metadata about this warning in key: value format. For example: "
27670
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
27671
+ # Corresponds to the JSON property `data`
27672
+ # @return [Array<Google::Apis::ComputeAlpha::MultiMigsList::Warning::Datum>]
27673
+ attr_accessor :data
27674
+
27675
+ # [Output Only] A human-readable description of the warning code.
27676
+ # Corresponds to the JSON property `message`
27677
+ # @return [String]
27678
+ attr_accessor :message
27679
+
27680
+ def initialize(**args)
27681
+ update!(**args)
27682
+ end
27683
+
27684
+ # Update properties of this object
27685
+ def update!(**args)
27686
+ @code = args[:code] if args.key?(:code)
27687
+ @data = args[:data] if args.key?(:data)
27688
+ @message = args[:message] if args.key?(:message)
27689
+ end
27690
+
27691
+ #
27692
+ class Datum
27693
+ include Google::Apis::Core::Hashable
27694
+
27695
+ # [Output Only] A key that provides more detail on the warning being returned.
27696
+ # For example, for warnings where there are no results in a list request for a
27697
+ # particular zone, this key might be scope and the key value might be the zone
27698
+ # name. Other examples might be a key indicating a deprecated resource and a
27699
+ # suggested replacement, or a warning about invalid network settings (for
27700
+ # example, if an instance attempts to perform IP forwarding but is not enabled
27701
+ # for IP forwarding).
27702
+ # Corresponds to the JSON property `key`
27703
+ # @return [String]
27704
+ attr_accessor :key
27705
+
27706
+ # [Output Only] A warning data value corresponding to the key.
27707
+ # Corresponds to the JSON property `value`
27708
+ # @return [String]
27709
+ attr_accessor :value
27710
+
27711
+ def initialize(**args)
27712
+ update!(**args)
27713
+ end
27714
+
27715
+ # Update properties of this object
27716
+ def update!(**args)
27717
+ @key = args[:key] if args.key?(:key)
27718
+ @value = args[:value] if args.key?(:value)
27719
+ end
27720
+ end
27721
+ end
27722
+ end
27723
+
26994
27724
  # [Deprecated] Configuration for the mutual Tls mode for peer authentication.
26995
27725
  # Configuration for the mutual Tls mode for peer authentication.
26996
27726
  class MutualTls
@@ -28178,12 +28908,6 @@ module Google
28178
28908
  # @return [Fixnum]
28179
28909
  attr_accessor :client_destination_port
28180
28910
 
28181
- # Represents the port number to which PSC consumer sends packets. Only valid for
28182
- # network endpoint groups created with CLIENT_PORT_PER_ENDPOINT mapping mode.
28183
- # Corresponds to the JSON property `clientPort`
28184
- # @return [Fixnum]
28185
- attr_accessor :client_port
28186
-
28187
28911
  # Optional fully qualified domain name of network endpoint. This can only be
28188
28912
  # specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT.
28189
28913
  # Corresponds to the JSON property `fqdn`
@@ -28241,7 +28965,6 @@ module Google
28241
28965
  def update!(**args)
28242
28966
  @annotations = args[:annotations] if args.key?(:annotations)
28243
28967
  @client_destination_port = args[:client_destination_port] if args.key?(:client_destination_port)
28244
- @client_port = args[:client_port] if args.key?(:client_port)
28245
28968
  @fqdn = args[:fqdn] if args.key?(:fqdn)
28246
28969
  @instance = args[:instance] if args.key?(:instance)
28247
28970
  @ip_address = args[:ip_address] if args.key?(:ip_address)
@@ -28272,11 +28995,6 @@ module Google
28272
28995
  # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupAppEngine]
28273
28996
  attr_accessor :app_engine
28274
28997
 
28275
- # Only valid when networkEndpointType is GCE_VM_IP_PORT and the NEG is regional.
28276
- # Corresponds to the JSON property `clientPortMappingMode`
28277
- # @return [String]
28278
- attr_accessor :client_port_mapping_mode
28279
-
28280
28998
  # Configuration for a Cloud Function network endpoint group (NEG). The function
28281
28999
  # must be provided explicitly or in the URL mask. Note: Cloud Function must be
28282
29000
  # in the same project and located in the same region as the Serverless NEG.
@@ -28416,7 +29134,6 @@ module Google
28416
29134
  def update!(**args)
28417
29135
  @annotations = args[:annotations] if args.key?(:annotations)
28418
29136
  @app_engine = args[:app_engine] if args.key?(:app_engine)
28419
- @client_port_mapping_mode = args[:client_port_mapping_mode] if args.key?(:client_port_mapping_mode)
28420
29137
  @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
28421
29138
  @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
28422
29139
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -39094,6 +39811,12 @@ module Google
39094
39811
  # @return [String]
39095
39812
  attr_accessor :name
39096
39813
 
39814
+ # Specify the reservation sharing policy. If unspecified, the reservation will
39815
+ # not be shared with Google Cloud managed services.
39816
+ # Corresponds to the JSON property `reservationSharingPolicy`
39817
+ # @return [Google::Apis::ComputeAlpha::AllocationReservationSharingPolicy]
39818
+ attr_accessor :reservation_sharing_policy
39819
+
39097
39820
  # Resource policies to be added to this reservation. The key is defined by user,
39098
39821
  # and the value is resource policy url. This is to define placement policy with
39099
39822
  # reservation.
@@ -39166,6 +39889,7 @@ module Google
39166
39889
  @id = args[:id] if args.key?(:id)
39167
39890
  @kind = args[:kind] if args.key?(:kind)
39168
39891
  @name = args[:name] if args.key?(:name)
39892
+ @reservation_sharing_policy = args[:reservation_sharing_policy] if args.key?(:reservation_sharing_policy)
39169
39893
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
39170
39894
  @resource_status = args[:resource_status] if args.key?(:resource_status)
39171
39895
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
@@ -39813,6 +40537,11 @@ module Google
39813
40537
  # @return [Google::Apis::ComputeAlpha::ResourcePolicyVmMaintenancePolicy]
39814
40538
  attr_accessor :vm_maintenance_policy
39815
40539
 
40540
+ # Represents the workload policy.
40541
+ # Corresponds to the JSON property `workloadPolicy`
40542
+ # @return [Google::Apis::ComputeAlpha::ResourcePolicyWorkloadPolicy]
40543
+ attr_accessor :workload_policy
40544
+
39816
40545
  def initialize(**args)
39817
40546
  update!(**args)
39818
40547
  end
@@ -39834,6 +40563,7 @@ module Google
39834
40563
  @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
39835
40564
  @status = args[:status] if args.key?(:status)
39836
40565
  @vm_maintenance_policy = args[:vm_maintenance_policy] if args.key?(:vm_maintenance_policy)
40566
+ @workload_policy = args[:workload_policy] if args.key?(:workload_policy)
39837
40567
  end
39838
40568
  end
39839
40569
 
@@ -40611,6 +41341,25 @@ module Google
40611
41341
  end
40612
41342
  end
40613
41343
 
41344
+ # Represents the workload policy.
41345
+ class ResourcePolicyWorkloadPolicy
41346
+ include Google::Apis::Core::Hashable
41347
+
41348
+ #
41349
+ # Corresponds to the JSON property `type`
41350
+ # @return [String]
41351
+ attr_accessor :type
41352
+
41353
+ def initialize(**args)
41354
+ update!(**args)
41355
+ end
41356
+
41357
+ # Update properties of this object
41358
+ def update!(**args)
41359
+ @type = args[:type] if args.key?(:type)
41360
+ end
41361
+ end
41362
+
40614
41363
  # Contains output only fields. Use this sub-message for actual values set on
40615
41364
  # Instance attributes as compared to the value requested by the user (intent) in
40616
41365
  # their instance CRUD calls.
@@ -40688,11 +41437,9 @@ module Google
40688
41437
  class ResourceStatusScheduling
40689
41438
  include Google::Apis::Core::Hashable
40690
41439
 
40691
- # Specifies the availability domain (AD), which this instance should be
40692
- # scheduled on. The AD belongs to the spread GroupPlacementPolicy resource
40693
- # policy that has been assigned to the instance. Specify a value between 1-max
40694
- # count of availability domains in your GroupPlacementPolicy. See go/placement-
40695
- # policy-extension for more details.
41440
+ # Specifies the availability domain to place the instance in. The value must be
41441
+ # a number between 1 and the number of availability domains specified in the
41442
+ # spread placement policy attached to the instance.
40696
41443
  # Corresponds to the JSON property `availabilityDomain`
40697
41444
  # @return [Fixnum]
40698
41445
  attr_accessor :availability_domain
@@ -40920,9 +41667,14 @@ module Google
40920
41667
 
40921
41668
  # The URL to a forwarding rule of type loadBalancingScheme=INTERNAL that should
40922
41669
  # handle matching packets or the IP address of the forwarding Rule. For example,
40923
- # the following are all valid URLs: - 10.128.0.56 - https://www.googleapis.com/
40924
- # compute/v1/projects/project/regions/region /forwardingRules/forwardingRule -
40925
- # regions/region/forwardingRules/forwardingRule
41670
+ # the following are all valid URLs: - https://www.googleapis.com/compute/v1/
41671
+ # projects/project/regions/region /forwardingRules/forwardingRule - regions/
41672
+ # region/forwardingRules/forwardingRule If an IP address is provided, must
41673
+ # specify an IPv4 address in dot-decimal notation or an IPv6 address in RFC 4291
41674
+ # format. For example, the following are all valid IP addresses: - 10.128.0.56 -
41675
+ # 2001:db8::2d9:51:0:0 - 2001:db8:0:0:2d9:51:0:0 IPv6 addresses will be
41676
+ # displayed using RFC 5952 compressed format (e.g. 2001:db8::2d9:51:0:0). Should
41677
+ # never be an IPv4-mapped IPv6 address.
40926
41678
  # Corresponds to the JSON property `nextHopIlb`
40927
41679
  # @return [String]
40928
41680
  attr_accessor :next_hop_ilb
@@ -42489,11 +43241,11 @@ module Google
42489
43241
  # CEL expression that specifies the match condition that egress traffic from a
42490
43242
  # VM is evaluated against. If it evaluates to true, the corresponding `action`
42491
43243
  # is enforced. The following examples are valid match expressions for public NAT:
42492
- # "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
42493
- # 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
42494
- # following example is a valid match expression for private NAT: "nexthop.hub ==
43244
+ # `inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
43245
+ # 0/16')` `destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'` The
43246
+ # following example is a valid match expression for private NAT: `nexthop.hub ==
42495
43247
  # '//networkconnectivity.googleapis.com/projects/my-project/locations/global/
42496
- # hubs/hub-1'"
43248
+ # hubs/hub-1'`
42497
43249
  # Corresponds to the JSON property `match`
42498
43250
  # @return [String]
42499
43251
  attr_accessor :match
@@ -42604,12 +43356,19 @@ module Google
42604
43356
  class RouterStatus
42605
43357
  include Google::Apis::Core::Hashable
42606
43358
 
42607
- # Best routes for this router's network.
43359
+ # A list of the best dynamic routes for this Cloud Router's Virtual Private
43360
+ # Cloud (VPC) network in the same region as this Cloud Router. Lists all of the
43361
+ # best routes per prefix that are programmed into this region's VPC data plane.
43362
+ # When global dynamic routing mode is turned on in the VPC network, this list
43363
+ # can include cross-region dynamic routes from Cloud Routers in other regions.
42608
43364
  # Corresponds to the JSON property `bestRoutes`
42609
43365
  # @return [Array<Google::Apis::ComputeAlpha::Route>]
42610
43366
  attr_accessor :best_routes
42611
43367
 
42612
- # Best routes learned by this router.
43368
+ # A list of the best BGP routes learned by this Cloud Router. It is possible
43369
+ # that routes listed might not be programmed into the data plane, if the Google
43370
+ # Cloud control plane finds a more optimal route for a prefix than a route
43371
+ # learned by this Cloud Router.
42613
43372
  # Corresponds to the JSON property `bestRoutesForRouter`
42614
43373
  # @return [Array<Google::Apis::ComputeAlpha::Route>]
42615
43374
  attr_accessor :best_routes_for_router
@@ -43830,11 +44589,9 @@ module Google
43830
44589
  attr_accessor :automatic_restart
43831
44590
  alias_method :automatic_restart?, :automatic_restart
43832
44591
 
43833
- # Specifies the availability domain (AD), which this instance should be
43834
- # scheduled on. The AD belongs to the spread GroupPlacementPolicy resource
43835
- # policy that has been assigned to the instance. Specify a value between 1-max
43836
- # count of availability domains in your GroupPlacementPolicy. See go/placement-
43837
- # policy-extension for more details.
44592
+ # Specifies the availability domain to place the instance in. The value must be
44593
+ # a number between 1 and the number of availability domains specified in the
44594
+ # spread placement policy attached to the instance.
43838
44595
  # Corresponds to the JSON property `availabilityDomain`
43839
44596
  # @return [Fixnum]
43840
44597
  attr_accessor :availability_domain
@@ -49618,7 +50375,8 @@ module Google
49618
50375
  # @return [String]
49619
50376
  attr_accessor :performance_provisioning_type
49620
50377
 
49621
- # Size, in GiB, of the storage pool.
50378
+ # Size, in GiB, of the storage pool. For more information about the size limits,
50379
+ # see https://cloud.google.com/compute/docs/disks/storage-pools.
49622
50380
  # Corresponds to the JSON property `poolProvisionedCapacityGb`
49623
50381
  # @return [Fixnum]
49624
50382
  attr_accessor :pool_provisioned_capacity_gb
@@ -50238,8 +50996,9 @@ module Google
50238
50996
  # @return [Fixnum]
50239
50997
  attr_accessor :pool_used_capacity_bytes
50240
50998
 
50241
- # Sum of all the disks' provisioned IOPS, minus some amount that is allowed per
50242
- # disk that is not counted towards pool's IOPS capacity.
50999
+ # [Output Only] Sum of all the disks' provisioned IOPS, minus some amount that
51000
+ # is allowed per disk that is not counted towards pool's IOPS capacity. For more
51001
+ # information, see https://cloud.google.com/compute/docs/disks/storage-pools.
50243
51002
  # Corresponds to the JSON property `poolUsedIops`
50244
51003
  # @return [Fixnum]
50245
51004
  attr_accessor :pool_used_iops
@@ -57263,8 +58022,9 @@ module Google
57263
58022
  attr_accessor :self_link
57264
58023
 
57265
58024
  # The stack type for this VPN gateway to identify the IP protocols that are
57266
- # enabled. Possible values are: IPV4_ONLY, IPV4_IPV6. If not specified,
57267
- # IPV4_ONLY will be used.
58025
+ # enabled. Possible values are: IPV4_ONLY, IPV4_IPV6, IPV6_ONLY. If not
58026
+ # specified, IPV4_ONLY is used if the gateway IP version is IPV4, or IPV4_IPV6
58027
+ # if the gateway IP version is IPV6.
57268
58028
  # Corresponds to the JSON property `stackType`
57269
58029
  # @return [String]
57270
58030
  attr_accessor :stack_type