google-apis-compute_alpha 0.103.0 → 0.105.0

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