google-apis-compute_alpha 0.76.0 → 0.78.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -2954,7 +2954,7 @@ module Google
2954
2954
  attr_accessor :schedule
2955
2955
 
2956
2956
  # The time zone to use when interpreting the schedule. The value of this field
2957
- # must be a time zone name from the tz database: http://en.wikipedia.org/wiki/
2957
+ # must be a time zone name from the tz database: https://en.wikipedia.org/wiki/
2958
2958
  # Tz_database. This field is assigned a default value of “UTC” if left empty.
2959
2959
  # Corresponds to the JSON property `timeZone`
2960
2960
  # @return [String]
@@ -3921,9 +3921,9 @@ module Google
3921
3921
  attr_accessor :timeout_sec
3922
3922
 
3923
3923
  #
3924
- # Corresponds to the JSON property `usedBys`
3924
+ # Corresponds to the JSON property `usedBy`
3925
3925
  # @return [Array<Google::Apis::ComputeAlpha::BackendServiceUsedBy>]
3926
- attr_accessor :used_bys
3926
+ attr_accessor :used_by
3927
3927
 
3928
3928
  # The network scope of the backends that can be added to the backend service.
3929
3929
  # This field can be either GLOBAL_VPC_NETWORK or REGIONAL_VPC_NETWORK. A backend
@@ -3985,7 +3985,7 @@ module Google
3985
3985
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
3986
3986
  @subsetting = args[:subsetting] if args.key?(:subsetting)
3987
3987
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
3988
- @used_bys = args[:used_bys] if args.key?(:used_bys)
3988
+ @used_by = args[:used_by] if args.key?(:used_by)
3989
3989
  @vpc_network_scope = args[:vpc_network_scope] if args.key?(:vpc_network_scope)
3990
3990
  end
3991
3991
  end
@@ -4481,8 +4481,7 @@ module Google
4481
4481
  include Google::Apis::Core::Hashable
4482
4482
 
4483
4483
  # Whether the serving infrastructure will authenticate and authorize all
4484
- # incoming requests. If true, the oauth2ClientId and oauth2ClientSecret fields
4485
- # must be non-empty.
4484
+ # incoming requests.
4486
4485
  # Corresponds to the JSON property `enabled`
4487
4486
  # @return [Boolean]
4488
4487
  attr_accessor :enabled
@@ -4684,6 +4683,11 @@ module Google
4684
4683
  # @return [String]
4685
4684
  attr_accessor :id
4686
4685
 
4686
+ # A list of BackendService resources.
4687
+ # Corresponds to the JSON property `items`
4688
+ # @return [Array<Google::Apis::ComputeAlpha::BackendService>]
4689
+ attr_accessor :items
4690
+
4687
4691
  # [Output Only] Type of resource. Always compute#usableBackendServiceList for
4688
4692
  # lists of usable backend services.
4689
4693
  # Corresponds to the JSON property `kind`
@@ -4716,6 +4720,7 @@ module Google
4716
4720
  # Update properties of this object
4717
4721
  def update!(**args)
4718
4722
  @id = args[:id] if args.key?(:id)
4723
+ @items = args[:items] if args.key?(:items)
4719
4724
  @kind = args[:kind] if args.key?(:kind)
4720
4725
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
4721
4726
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -5332,6 +5337,101 @@ module Google
5332
5337
  end
5333
5338
  end
5334
5339
 
5340
+ #
5341
+ class BgpRoute
5342
+ include Google::Apis::Core::Hashable
5343
+
5344
+ # [Output only] AS-PATH for the route
5345
+ # Corresponds to the JSON property `asPaths`
5346
+ # @return [Array<Google::Apis::ComputeAlpha::BgpRouteAsPath>]
5347
+ attr_accessor :as_paths
5348
+
5349
+ # [Output only] BGP communities in human-readable A:B format.
5350
+ # Corresponds to the JSON property `communities`
5351
+ # @return [Array<String>]
5352
+ attr_accessor :communities
5353
+
5354
+ # Network Layer Reachability Information (NLRI) for a route.
5355
+ # Corresponds to the JSON property `destination`
5356
+ # @return [Google::Apis::ComputeAlpha::BgpRouteNetworkLayerReachabilityInformation]
5357
+ attr_accessor :destination
5358
+
5359
+ # [Output only] BGP multi-exit discriminator
5360
+ # Corresponds to the JSON property `med`
5361
+ # @return [Fixnum]
5362
+ attr_accessor :med
5363
+
5364
+ # [Output only] BGP origin (EGP, IGP or INCOMPLETE)
5365
+ # Corresponds to the JSON property `origin`
5366
+ # @return [String]
5367
+ attr_accessor :origin
5368
+
5369
+ def initialize(**args)
5370
+ update!(**args)
5371
+ end
5372
+
5373
+ # Update properties of this object
5374
+ def update!(**args)
5375
+ @as_paths = args[:as_paths] if args.key?(:as_paths)
5376
+ @communities = args[:communities] if args.key?(:communities)
5377
+ @destination = args[:destination] if args.key?(:destination)
5378
+ @med = args[:med] if args.key?(:med)
5379
+ @origin = args[:origin] if args.key?(:origin)
5380
+ end
5381
+ end
5382
+
5383
+ #
5384
+ class BgpRouteAsPath
5385
+ include Google::Apis::Core::Hashable
5386
+
5387
+ # [Output only] ASNs in the path segment. When type is SEQUENCE, these are
5388
+ # ordered.
5389
+ # Corresponds to the JSON property `asns`
5390
+ # @return [Array<Fixnum>]
5391
+ attr_accessor :asns
5392
+
5393
+ # [Output only] Type of AS-PATH segment (SEQUENCE or SET)
5394
+ # Corresponds to the JSON property `type`
5395
+ # @return [String]
5396
+ attr_accessor :type
5397
+
5398
+ def initialize(**args)
5399
+ update!(**args)
5400
+ end
5401
+
5402
+ # Update properties of this object
5403
+ def update!(**args)
5404
+ @asns = args[:asns] if args.key?(:asns)
5405
+ @type = args[:type] if args.key?(:type)
5406
+ end
5407
+ end
5408
+
5409
+ # Network Layer Reachability Information (NLRI) for a route.
5410
+ class BgpRouteNetworkLayerReachabilityInformation
5411
+ include Google::Apis::Core::Hashable
5412
+
5413
+ # Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.
5414
+ # Corresponds to the JSON property `destination`
5415
+ # @return [String]
5416
+ attr_accessor :destination
5417
+
5418
+ # If the BGP session supports multiple paths (RFC 7911), the path identifier for
5419
+ # this route.
5420
+ # Corresponds to the JSON property `pathId`
5421
+ # @return [Fixnum]
5422
+ attr_accessor :path_id
5423
+
5424
+ def initialize(**args)
5425
+ update!(**args)
5426
+ end
5427
+
5428
+ # Update properties of this object
5429
+ def update!(**args)
5430
+ @destination = args[:destination] if args.key?(:destination)
5431
+ @path_id = args[:path_id] if args.key?(:path_id)
5432
+ end
5433
+ end
5434
+
5335
5435
  # Associates `members`, or principals, with a `role`.
5336
5436
  class Binding
5337
5437
  include Google::Apis::Core::Hashable
@@ -5738,70 +5838,6 @@ module Google
5738
5838
  end
5739
5839
  end
5740
5840
 
5741
- # Represents the network information between workload placements.
5742
- class CapacityConstraint
5743
- include Google::Apis::Core::Hashable
5744
-
5745
- #
5746
- # Corresponds to the JSON property `constraintMetadata`
5747
- # @return [String]
5748
- attr_accessor :constraint_metadata
5749
-
5750
- # Weighted sum of BandwidthTerms (each term is coefficient * term) must be less
5751
- # than or equal to max_sum.
5752
- # Corresponds to the JSON property `maxSumGbps`
5753
- # @return [Float]
5754
- attr_accessor :max_sum_gbps
5755
-
5756
- #
5757
- # Corresponds to the JSON property `terms`
5758
- # @return [Array<Google::Apis::ComputeAlpha::CapacityConstraintConstraintTerm>]
5759
- attr_accessor :terms
5760
-
5761
- def initialize(**args)
5762
- update!(**args)
5763
- end
5764
-
5765
- # Update properties of this object
5766
- def update!(**args)
5767
- @constraint_metadata = args[:constraint_metadata] if args.key?(:constraint_metadata)
5768
- @max_sum_gbps = args[:max_sum_gbps] if args.key?(:max_sum_gbps)
5769
- @terms = args[:terms] if args.key?(:terms)
5770
- end
5771
- end
5772
-
5773
- #
5774
- class CapacityConstraintConstraintTerm
5775
- include Google::Apis::Core::Hashable
5776
-
5777
- # Coefficient of this term in the linear expression. The value of the term will
5778
- # be coefficient * (demand from src to dst in Gbps).
5779
- # Corresponds to the JSON property `coefficient`
5780
- # @return [Float]
5781
- attr_accessor :coefficient
5782
-
5783
- #
5784
- # Corresponds to the JSON property `destinationNode`
5785
- # @return [Google::Apis::ComputeAlpha::PlacementLocation]
5786
- attr_accessor :destination_node
5787
-
5788
- # Source and destination nodes.
5789
- # Corresponds to the JSON property `sourceNode`
5790
- # @return [Google::Apis::ComputeAlpha::PlacementLocation]
5791
- attr_accessor :source_node
5792
-
5793
- def initialize(**args)
5794
- update!(**args)
5795
- end
5796
-
5797
- # Update properties of this object
5798
- def update!(**args)
5799
- @coefficient = args[:coefficient] if args.key?(:coefficient)
5800
- @destination_node = args[:destination_node] if args.key?(:destination_node)
5801
- @source_node = args[:source_node] if args.key?(:source_node)
5802
- end
5803
- end
5804
-
5805
5841
  # [Deprecated] gRPC channel credentials to access the SDS server. gRPC channel
5806
5842
  # credentials to access the SDS server.
5807
5843
  class ChannelCredentials
@@ -6033,7 +6069,7 @@ module Google
6033
6069
  # @return [String]
6034
6070
  attr_accessor :region
6035
6071
 
6036
- # List of reservations in this commitment.
6072
+ # List of create-on-create reseravtions for this commitment.
6037
6073
  # Corresponds to the JSON property `reservations`
6038
6074
  # @return [Array<Google::Apis::ComputeAlpha::Reservation>]
6039
6075
  attr_accessor :reservations
@@ -10594,13 +10630,13 @@ module Google
10594
10630
  # @return [String]
10595
10631
  attr_accessor :name
10596
10632
 
10597
- # This field is not used for external load balancing. For Internal TCP/UDP Load
10598
- # Balancing, this field identifies the network that the load balanced IP should
10599
- # belong to for this Forwarding Rule. If the subnetwork is specified, the
10600
- # network of the subnetwork will be used. If neither subnetwork nor this field
10601
- # is specified, the default network will be used. For Private Service Connect
10602
- # forwarding rules that forward traffic to Google APIs, a network must be
10603
- # provided.
10633
+ # This field is not used for global external load balancing. For Internal TCP/
10634
+ # UDP Load Balancing, this field identifies the network that the load balanced
10635
+ # IP should belong to for this Forwarding Rule. If the subnetwork is specified,
10636
+ # the network of the subnetwork will be used. If neither subnetwork nor this
10637
+ # field is specified, the default network will be used. For Private Service
10638
+ # Connect forwarding rules that forward traffic to Google APIs, a network must
10639
+ # be provided.
10604
10640
  # Corresponds to the JSON property `network`
10605
10641
  # @return [String]
10606
10642
  attr_accessor :network
@@ -11954,25 +11990,6 @@ module Google
11954
11990
  end
11955
11991
  end
11956
11992
 
11957
- #
11958
- class GetNetworkCapacityConstraintsResponse
11959
- include Google::Apis::Core::Hashable
11960
-
11961
- # Set of capacity constraints that describe network adjacency.
11962
- # Corresponds to the JSON property `capacityConstraints`
11963
- # @return [Array<Google::Apis::ComputeAlpha::CapacityConstraint>]
11964
- attr_accessor :capacity_constraints
11965
-
11966
- def initialize(**args)
11967
- update!(**args)
11968
- end
11969
-
11970
- # Update properties of this object
11971
- def update!(**args)
11972
- @capacity_constraints = args[:capacity_constraints] if args.key?(:capacity_constraints)
11973
- end
11974
- end
11975
-
11976
11993
  #
11977
11994
  class GetOwnerInstanceResponse
11978
11995
  include Google::Apis::Core::Hashable
@@ -14767,8 +14784,8 @@ module Google
14767
14784
  # weightedBackendServices, service must not be set. Conversely if service is set,
14768
14785
  # routeAction cannot contain any weightedBackendServices. Only one of
14769
14786
  # urlRedirect, service or routeAction.weightedBackendService must be set. URL
14770
- # maps for Classic external HTTP(S) load balancers only support the urlRewrite
14771
- # action within a route rule's routeAction.
14787
+ # maps for classic Application Load Balancers only support the urlRewrite action
14788
+ # within a route rule's routeAction.
14772
14789
  # Corresponds to the JSON property `routeAction`
14773
14790
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
14774
14791
  attr_accessor :route_action
@@ -16932,14 +16949,6 @@ module Google
16932
16949
  # @return [Fixnum]
16933
16950
  attr_accessor :creating_atomically
16934
16951
 
16935
- # [Output Only] The number of instances that the managed instance group will
16936
- # attempt to create in bulk. If the desired count of instances cannot be created,
16937
- # entire batch will be deleted and the group will decrease its targetSize value
16938
- # accordingly.
16939
- # Corresponds to the JSON property `creatingInBulk`
16940
- # @return [Fixnum]
16941
- attr_accessor :creating_in_bulk
16942
-
16943
16952
  # [Output Only] The number of instances that the managed instance group will
16944
16953
  # attempt to create. The group attempts to create each instance only once. If
16945
16954
  # the group fails to create any of these instances, it decreases the group's
@@ -17027,7 +17036,6 @@ module Google
17027
17036
  @abandoning = args[:abandoning] if args.key?(:abandoning)
17028
17037
  @creating = args[:creating] if args.key?(:creating)
17029
17038
  @creating_atomically = args[:creating_atomically] if args.key?(:creating_atomically)
17030
- @creating_in_bulk = args[:creating_in_bulk] if args.key?(:creating_in_bulk)
17031
17039
  @creating_without_retries = args[:creating_without_retries] if args.key?(:creating_without_retries)
17032
17040
  @deleting = args[:deleting] if args.key?(:deleting)
17033
17041
  @none = args[:none] if args.key?(:none)
@@ -17259,8 +17267,8 @@ module Google
17259
17267
  class InstanceGroupManagerInstanceFlexibilityPolicy
17260
17268
  include Google::Apis::Core::Hashable
17261
17269
 
17262
- # List of instance selection options that the group will use when creating new
17263
- # VMs.
17270
+ # Named instance selections configuring properties that the group will use when
17271
+ # creating new VMs.
17264
17272
  # Corresponds to the JSON property `instanceSelectionLists`
17265
17273
  # @return [Hash<String,Google::Apis::ComputeAlpha::InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection>]
17266
17274
  attr_accessor :instance_selection_lists
@@ -27266,6 +27274,12 @@ module Google
27266
27274
  # @return [Hash<String,String>]
27267
27275
  attr_accessor :annotations
27268
27276
 
27277
+ # Only valid for network endpoint groups created with client_port_mapping
27278
+ # supported. Represents the port number to which original packet is sent.
27279
+ # Corresponds to the JSON property `clientPort`
27280
+ # @return [Fixnum]
27281
+ attr_accessor :client_port
27282
+
27269
27283
  # Optional fully qualified domain name of network endpoint. This can only be
27270
27284
  # specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT.
27271
27285
  # Corresponds to the JSON property `fqdn`
@@ -27300,6 +27314,13 @@ module Google
27300
27314
  # @return [Fixnum]
27301
27315
  attr_accessor :port
27302
27316
 
27317
+ # The name of the zone where the instance hosting the network endpoint is
27318
+ # located (valid only for regional GCE_VM_IP_PORT NEGs). It should comply with
27319
+ # RFC1035. The zone must belong to the region of the Network Endpoint Group.
27320
+ # Corresponds to the JSON property `zone`
27321
+ # @return [String]
27322
+ attr_accessor :zone
27323
+
27303
27324
  def initialize(**args)
27304
27325
  update!(**args)
27305
27326
  end
@@ -27307,19 +27328,20 @@ module Google
27307
27328
  # Update properties of this object
27308
27329
  def update!(**args)
27309
27330
  @annotations = args[:annotations] if args.key?(:annotations)
27331
+ @client_port = args[:client_port] if args.key?(:client_port)
27310
27332
  @fqdn = args[:fqdn] if args.key?(:fqdn)
27311
27333
  @instance = args[:instance] if args.key?(:instance)
27312
27334
  @ip_address = args[:ip_address] if args.key?(:ip_address)
27313
27335
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
27314
27336
  @port = args[:port] if args.key?(:port)
27337
+ @zone = args[:zone] if args.key?(:zone)
27315
27338
  end
27316
27339
  end
27317
27340
 
27318
27341
  # Represents a collection of network endpoints. A network endpoint group (NEG)
27319
27342
  # defines how a set of endpoints should be reached, whether they are reachable,
27320
- # and where they are located. For more information about using NEGs, see Setting
27321
- # up external HTTP(S) Load Balancing with internet NEGs, Setting up zonal NEGs,
27322
- # or Setting up external HTTP(S) Load Balancing with serverless NEGs.
27343
+ # and where they are located. For more information about using NEGs for
27344
+ # different use cases, see Network endpoint groups overview.
27323
27345
  class NetworkEndpointGroup
27324
27346
  include Google::Apis::Core::Hashable
27325
27347
 
@@ -27337,6 +27359,12 @@ module Google
27337
27359
  # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupAppEngine]
27338
27360
  attr_accessor :app_engine
27339
27361
 
27362
+ # Only valid when networkEndpointType is "GCE_VM_IP_PORT" and the NEG is
27363
+ # regional.
27364
+ # Corresponds to the JSON property `clientPortMappingMode`
27365
+ # @return [String]
27366
+ attr_accessor :client_port_mapping_mode
27367
+
27340
27368
  # Configuration for a Cloud Function network endpoint group (NEG). The function
27341
27369
  # must be provided explicitly or in the URL mask. Note: Cloud Function must be
27342
27370
  # in the same project and located in the same region as the Serverless NEG.
@@ -27475,6 +27503,7 @@ module Google
27475
27503
  def update!(**args)
27476
27504
  @annotations = args[:annotations] if args.key?(:annotations)
27477
27505
  @app_engine = args[:app_engine] if args.key?(:app_engine)
27506
+ @client_port_mapping_mode = args[:client_port_mapping_mode] if args.key?(:client_port_mapping_mode)
27478
27507
  @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
27479
27508
  @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
27480
27509
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -28794,6 +28823,20 @@ module Google
28794
28823
  class NetworkRoutingConfig
28795
28824
  include Google::Apis::Core::Hashable
28796
28825
 
28826
+ # Enable comparison of Multi-Exit Discriminators (MED) across routes with
28827
+ # different neighbor ASNs when using the STANDARD BGP best path selection
28828
+ # algorithm.
28829
+ # Corresponds to the JSON property `bgpAlwaysCompareMed`
28830
+ # @return [Boolean]
28831
+ attr_accessor :bgp_always_compare_med
28832
+ alias_method :bgp_always_compare_med?, :bgp_always_compare_med
28833
+
28834
+ # The BGP best path selection algorithm to be employed within this network for
28835
+ # dynamic routes learned by Cloud Routers. Can be LEGACY (default) or STANDARD.
28836
+ # Corresponds to the JSON property `bgpBestPathSelectionMode`
28837
+ # @return [String]
28838
+ attr_accessor :bgp_best_path_selection_mode
28839
+
28797
28840
  # The network-wide routing mode to use. If set to REGIONAL, this network's Cloud
28798
28841
  # Routers will only advertise routes with subnets of this network in the same
28799
28842
  # region as the router. If set to GLOBAL, this network's Cloud Routers will
@@ -28808,6 +28851,8 @@ module Google
28808
28851
 
28809
28852
  # Update properties of this object
28810
28853
  def update!(**args)
28854
+ @bgp_always_compare_med = args[:bgp_always_compare_med] if args.key?(:bgp_always_compare_med)
28855
+ @bgp_best_path_selection_mode = args[:bgp_best_path_selection_mode] if args.key?(:bgp_best_path_selection_mode)
28811
28856
  @routing_mode = args[:routing_mode] if args.key?(:routing_mode)
28812
28857
  end
28813
28858
  end
@@ -32876,8 +32921,8 @@ module Google
32876
32921
  # If defaultRouteAction specifies any weightedBackendServices, defaultService
32877
32922
  # must not be set. Conversely if defaultService is set, defaultRouteAction
32878
32923
  # cannot contain any weightedBackendServices. Only one of defaultRouteAction or
32879
- # defaultUrlRedirect must be set. URL maps for Classic external HTTP(S) load
32880
- # balancers only support the urlRewrite action within a path matcher's
32924
+ # defaultUrlRedirect must be set. URL maps for classic Application Load
32925
+ # Balancers only support the urlRewrite action within a path matcher's
32881
32926
  # defaultRouteAction.
32882
32927
  # Corresponds to the JSON property `defaultRouteAction`
32883
32928
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
@@ -32984,9 +33029,8 @@ module Google
32984
33029
  # the request to the selected backend. If routeAction specifies any
32985
33030
  # weightedBackendServices, service must not be set. Conversely if service is set,
32986
33031
  # routeAction cannot contain any weightedBackendServices. Only one of
32987
- # routeAction or urlRedirect must be set. URL maps for Classic external HTTP(S)
32988
- # load balancers only support the urlRewrite action within a path rule's
32989
- # routeAction.
33032
+ # routeAction or urlRedirect must be set. URL maps for classic Application Load
33033
+ # Balancers only support the urlRewrite action within a path rule's routeAction.
32990
33034
  # Corresponds to the JSON property `routeAction`
32991
33035
  # @return [Google::Apis::ComputeAlpha::HttpRouteAction]
32992
33036
  attr_accessor :route_action
@@ -33184,31 +33228,6 @@ module Google
33184
33228
  end
33185
33229
  end
33186
33230
 
33187
- #
33188
- class PlacementLocation
33189
- include Google::Apis::Core::Hashable
33190
-
33191
- # Aggregation block id of the placement group.
33192
- # Corresponds to the JSON property `aggregationBlockId`
33193
- # @return [String]
33194
- attr_accessor :aggregation_block_id
33195
-
33196
- # Partial or full URL of the resource policy for the placement group.
33197
- # Corresponds to the JSON property `resourcePolicy`
33198
- # @return [String]
33199
- attr_accessor :resource_policy
33200
-
33201
- def initialize(**args)
33202
- update!(**args)
33203
- end
33204
-
33205
- # Update properties of this object
33206
- def update!(**args)
33207
- @aggregation_block_id = args[:aggregation_block_id] if args.key?(:aggregation_block_id)
33208
- @resource_policy = args[:resource_policy] if args.key?(:resource_policy)
33209
- end
33210
- end
33211
-
33212
33231
  # An Identity and Access Management (IAM) policy, which specifies access
33213
33232
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
33214
33233
  # A `binding` binds one or more `members`, or principals, to a single `role`.
@@ -37241,17 +37260,19 @@ module Google
37241
37260
  # Global](/compute/docs/reference/rest/alpha/urlMaps) * [Regional](/compute/docs/
37242
37261
  # reference/rest/alpha/regionUrlMaps) A URL map resource is a component of
37243
37262
  # certain types of cloud load balancers and Traffic Director: * urlMaps are used
37244
- # by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
37245
- # used by internal HTTP(S) load balancers. For a list of supported URL map
37246
- # features by the load balancer type, see the Load balancing features: Routing
37247
- # and traffic management table. For a list of supported URL map features for
37248
- # Traffic Director, see the Traffic Director features: Routing and traffic
37249
- # management table. This resource defines mappings from hostnames and URL paths
37250
- # to either a backend service or a backend bucket. To use the global urlMaps
37251
- # resource, the backend service must have a loadBalancingScheme of either
37252
- # EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
37253
- # backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
37254
- # information, read URL Map Concepts.
37263
+ # by global external Application Load Balancers, classic Application Load
37264
+ # Balancers, and cross-region internal Application Load Balancers. *
37265
+ # regionUrlMaps are used by internal Application Load Balancers, regional
37266
+ # external Application Load Balancers and regional internal Application Load
37267
+ # Balancers. For a list of supported URL map features by the load balancer type,
37268
+ # see the Load balancing features: Routing and traffic management table. For a
37269
+ # list of supported URL map features for Traffic Director, see the Traffic
37270
+ # Director features: Routing and traffic management table. This resource defines
37271
+ # mappings from hostnames and URL paths to either a backend service or a backend
37272
+ # bucket. To use the global urlMaps resource, the backend service must have a
37273
+ # loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the
37274
+ # regionUrlMaps resource, the backend service must have a loadBalancingScheme of
37275
+ # INTERNAL_MANAGED. For more information, read URL Map Concepts.
37255
37276
  # Corresponds to the JSON property `resource`
37256
37277
  # @return [Google::Apis::ComputeAlpha::UrlMap]
37257
37278
  attr_accessor :resource
@@ -39455,6 +39476,98 @@ module Google
39455
39476
  end
39456
39477
  end
39457
39478
 
39479
+ #
39480
+ class RoutePolicy
39481
+ include Google::Apis::Core::Hashable
39482
+
39483
+ # A fingerprint for the Route Policy being applied to this Router, which is
39484
+ # essentially a hash of the Route Policy used for optimistic locking. The
39485
+ # fingerprint is initially generated by Compute Engine and changes after every
39486
+ # request to modify or update Route Policy. You must always provide an up-to-
39487
+ # date fingerprint hash in order to update or change labels. To see the latest
39488
+ # fingerprint, make a getRoutePolicy() request to retrieve a Route Policy.
39489
+ # Corresponds to the JSON property `fingerprint`
39490
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
39491
+ # @return [String]
39492
+ attr_accessor :fingerprint
39493
+
39494
+ # Route Policy name, which must be a resource ID segment and unique within all
39495
+ # the router's Route Policies. Name should conform to RFC1035.
39496
+ # Corresponds to the JSON property `name`
39497
+ # @return [String]
39498
+ attr_accessor :name
39499
+
39500
+ # List of terms (the order in the list is not important, they are evaluated in
39501
+ # order of priority). Order of policies is not retained and might change when
39502
+ # getting policy later.
39503
+ # Corresponds to the JSON property `terms`
39504
+ # @return [Array<Google::Apis::ComputeAlpha::RoutePolicyPolicyTerm>]
39505
+ attr_accessor :terms
39506
+
39507
+ #
39508
+ # Corresponds to the JSON property `type`
39509
+ # @return [String]
39510
+ attr_accessor :type
39511
+
39512
+ def initialize(**args)
39513
+ update!(**args)
39514
+ end
39515
+
39516
+ # Update properties of this object
39517
+ def update!(**args)
39518
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
39519
+ @name = args[:name] if args.key?(:name)
39520
+ @terms = args[:terms] if args.key?(:terms)
39521
+ @type = args[:type] if args.key?(:type)
39522
+ end
39523
+ end
39524
+
39525
+ #
39526
+ class RoutePolicyPolicyTerm
39527
+ include Google::Apis::Core::Hashable
39528
+
39529
+ # CEL expressions to evaluate to modify a route when this term matches.
39530
+ # Corresponds to the JSON property `actions`
39531
+ # @return [Array<Google::Apis::ComputeAlpha::Expr>]
39532
+ attr_accessor :actions
39533
+
39534
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
39535
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
39536
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
39537
+ # "Summary size limit" description: "Determines if a summary is less than 100
39538
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
39539
+ # Requestor is owner" description: "Determines if requestor is the document
39540
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
39541
+ # Logic): title: "Public documents" description: "Determine whether the document
39542
+ # should be publicly visible" expression: "document.type != 'private' &&
39543
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
39544
+ # string" description: "Create a notification string with a timestamp."
39545
+ # expression: "'New message received at ' + string(document.create_time)" The
39546
+ # exact variables and functions that may be referenced within an expression are
39547
+ # determined by the service that evaluates it. See the service documentation for
39548
+ # additional information.
39549
+ # Corresponds to the JSON property `match`
39550
+ # @return [Google::Apis::ComputeAlpha::Expr]
39551
+ attr_accessor :match
39552
+
39553
+ # The evaluation priority for this term, which must be between 0 (inclusive) and
39554
+ # 2^31 (exclusive), and unique within the list.
39555
+ # Corresponds to the JSON property `priority`
39556
+ # @return [Fixnum]
39557
+ attr_accessor :priority
39558
+
39559
+ def initialize(**args)
39560
+ update!(**args)
39561
+ end
39562
+
39563
+ # Update properties of this object
39564
+ def update!(**args)
39565
+ @actions = args[:actions] if args.key?(:actions)
39566
+ @match = args[:match] if args.key?(:match)
39567
+ @priority = args[:priority] if args.key?(:priority)
39568
+ end
39569
+ end
39570
+
39458
39571
  # Represents a Cloud Router resource. For more information about Cloud Router,
39459
39572
  # read the Cloud Router overview.
39460
39573
  class Router
@@ -39496,9 +39609,11 @@ module Google
39496
39609
  # @return [Fixnum]
39497
39610
  attr_accessor :id
39498
39611
 
39499
- # Router interfaces. Each interface requires either one linked resource, (for
39500
- # example, linkedVpnTunnel), or IP address and IP address range (for example,
39501
- # ipRange), or both.
39612
+ # Router interfaces. To create a BGP peer that uses a router interface, the
39613
+ # interface must have one of the following fields specified: - linkedVpnTunnel -
39614
+ # linkedInterconnectAttachment - subnetwork You can create a router interface
39615
+ # without any of these fields specified. However, you cannot create a BGP peer
39616
+ # that uses that interface.
39502
39617
  # Corresponds to the JSON property `interfaces`
39503
39618
  # @return [Array<Google::Apis::ComputeAlpha::RouterInterface>]
39504
39619
  attr_accessor :interfaces
@@ -39865,6 +39980,20 @@ module Google
39865
39980
  attr_accessor :enable_ipv6
39866
39981
  alias_method :enable_ipv6?, :enable_ipv6
39867
39982
 
39983
+ # List of export policies applied to this peer, in the order they must be
39984
+ # evaluated. The name must correspond to an existing policy that has
39985
+ # ROUTE_POLICY_TYPE_EXPORT type.
39986
+ # Corresponds to the JSON property `exportPolicies`
39987
+ # @return [Array<String>]
39988
+ attr_accessor :export_policies
39989
+
39990
+ # List of import policies applied to this peer, in the order they must be
39991
+ # evaluated. The name must correspond to an existing policy that has
39992
+ # ROUTE_POLICY_TYPE_IMPORT type.
39993
+ # Corresponds to the JSON property `importPolicies`
39994
+ # @return [Array<String>]
39995
+ attr_accessor :import_policies
39996
+
39868
39997
  # Name of the interface the BGP peer is associated with.
39869
39998
  # Corresponds to the JSON property `interfaceName`
39870
39999
  # @return [String]
@@ -39959,6 +40088,8 @@ module Google
39959
40088
  @enable = args[:enable] if args.key?(:enable)
39960
40089
  @enable_ipv4 = args[:enable_ipv4] if args.key?(:enable_ipv4)
39961
40090
  @enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
40091
+ @export_policies = args[:export_policies] if args.key?(:export_policies)
40092
+ @import_policies = args[:import_policies] if args.key?(:import_policies)
39962
40093
  @interface_name = args[:interface_name] if args.key?(:interface_name)
39963
40094
  @ip_address = args[:ip_address] if args.key?(:ip_address)
39964
40095
  @ipv4_nexthop_address = args[:ipv4_nexthop_address] if args.key?(:ipv4_nexthop_address)
@@ -40099,14 +40230,14 @@ module Google
40099
40230
 
40100
40231
  # URI of the linked Interconnect attachment. It must be in the same region as
40101
40232
  # the router. Each interface can have one linked resource, which can be a VPN
40102
- # tunnel, an Interconnect attachment, or a virtual machine instance.
40233
+ # tunnel, an Interconnect attachment, or a subnetwork.
40103
40234
  # Corresponds to the JSON property `linkedInterconnectAttachment`
40104
40235
  # @return [String]
40105
40236
  attr_accessor :linked_interconnect_attachment
40106
40237
 
40107
40238
  # URI of the linked VPN tunnel, which must be in the same region as the router.
40108
40239
  # Each interface can have one linked resource, which can be a VPN tunnel, an
40109
- # Interconnect attachment, or a virtual machine instance.
40240
+ # Interconnect attachment, or a subnetwork.
40110
40241
  # Corresponds to the JSON property `linkedVpnTunnel`
40111
40242
  # @return [String]
40112
40243
  attr_accessor :linked_vpn_tunnel
@@ -40308,7 +40439,7 @@ module Google
40308
40439
  attr_accessor :key
40309
40440
 
40310
40441
  # Name used to identify the key. Must be unique within a router. Must be
40311
- # referenced by at least one bgpPeer. Must comply with RFC1035.
40442
+ # referenced by exactly one bgpPeer. Must comply with RFC1035.
40312
40443
  # Corresponds to the JSON property `name`
40313
40444
  # @return [String]
40314
40445
  attr_accessor :name
@@ -40551,8 +40682,8 @@ module Google
40551
40682
  # "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
40552
40683
  # 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
40553
40684
  # following example is a valid match expression for private NAT: "nexthop.hub ==
40554
- # 'https://networkconnectivity.googleapis.com/v1alpha1/projects/my-project/
40555
- # global/hub/hub-1'"
40685
+ # '//networkconnectivity.googleapis.com/projects/my-project/locations/global/
40686
+ # hubs/hub-1'"
40556
40687
  # Corresponds to the JSON property `match`
40557
40688
  # @return [String]
40558
40689
  attr_accessor :match
@@ -40967,13 +41098,17 @@ module Google
40967
41098
  end
40968
41099
 
40969
41100
  #
40970
- class RoutersPreviewResponse
41101
+ class RoutersGetRoutePolicyResponse
40971
41102
  include Google::Apis::Core::Hashable
40972
41103
 
40973
- # Represents a Cloud Router resource. For more information about Cloud Router,
40974
- # read the Cloud Router overview.
41104
+ # end_interface: MixerGetResponseWithEtagBuilder
41105
+ # Corresponds to the JSON property `etag`
41106
+ # @return [String]
41107
+ attr_accessor :etag
41108
+
41109
+ #
40975
41110
  # Corresponds to the JSON property `resource`
40976
- # @return [Google::Apis::ComputeAlpha::Router]
41111
+ # @return [Google::Apis::ComputeAlpha::RoutePolicy]
40977
41112
  attr_accessor :resource
40978
41113
 
40979
41114
  def initialize(**args)
@@ -40982,23 +41117,59 @@ module Google
40982
41117
 
40983
41118
  # Update properties of this object
40984
41119
  def update!(**args)
41120
+ @etag = args[:etag] if args.key?(:etag)
40985
41121
  @resource = args[:resource] if args.key?(:resource)
40986
41122
  end
40987
41123
  end
40988
41124
 
40989
41125
  #
40990
- class RoutersScopedList
41126
+ class RoutersListBgpRoutes
40991
41127
  include Google::Apis::Core::Hashable
40992
41128
 
40993
- # A list of routers contained in this scope.
40994
- # Corresponds to the JSON property `routers`
40995
- # @return [Array<Google::Apis::ComputeAlpha::Router>]
40996
- attr_accessor :routers
41129
+ #
41130
+ # Corresponds to the JSON property `etag`
41131
+ # @return [String]
41132
+ attr_accessor :etag
40997
41133
 
40998
- # Informational warning which replaces the list of routers when the list is
40999
- # empty.
41134
+ # [Output Only] The unique identifier for the resource. This identifier is
41135
+ # defined by the server.
41136
+ # Corresponds to the JSON property `id`
41137
+ # @return [String]
41138
+ attr_accessor :id
41139
+
41140
+ # [Output Only] Type of resource. Always compute#routersListBgpRoutes for lists
41141
+ # of bgp routes.
41142
+ # Corresponds to the JSON property `kind`
41143
+ # @return [String]
41144
+ attr_accessor :kind
41145
+
41146
+ # [Output Only] This token allows you to get the next page of results for list
41147
+ # requests. If the number of results is larger than maxResults, use the
41148
+ # nextPageToken as a value for the query parameter pageToken in the next list
41149
+ # request. Subsequent list requests will have their own nextPageToken to
41150
+ # continue paging through the results.
41151
+ # Corresponds to the JSON property `nextPageToken`
41152
+ # @return [String]
41153
+ attr_accessor :next_page_token
41154
+
41155
+ # [Output Only] A list of bgp routes.
41156
+ # Corresponds to the JSON property `result`
41157
+ # @return [Array<Google::Apis::ComputeAlpha::BgpRoute>]
41158
+ attr_accessor :result
41159
+
41160
+ # [Output Only] Server-defined URL for this resource.
41161
+ # Corresponds to the JSON property `selfLink`
41162
+ # @return [String]
41163
+ attr_accessor :self_link
41164
+
41165
+ # [Output Only] Unreachable resources.
41166
+ # Corresponds to the JSON property `unreachables`
41167
+ # @return [Array<String>]
41168
+ attr_accessor :unreachables
41169
+
41170
+ # [Output Only] Informational warning message.
41000
41171
  # Corresponds to the JSON property `warning`
41001
- # @return [Google::Apis::ComputeAlpha::RoutersScopedList::Warning]
41172
+ # @return [Google::Apis::ComputeAlpha::RoutersListBgpRoutes::Warning]
41002
41173
  attr_accessor :warning
41003
41174
 
41004
41175
  def initialize(**args)
@@ -41007,12 +41178,17 @@ module Google
41007
41178
 
41008
41179
  # Update properties of this object
41009
41180
  def update!(**args)
41010
- @routers = args[:routers] if args.key?(:routers)
41181
+ @etag = args[:etag] if args.key?(:etag)
41182
+ @id = args[:id] if args.key?(:id)
41183
+ @kind = args[:kind] if args.key?(:kind)
41184
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
41185
+ @result = args[:result] if args.key?(:result)
41186
+ @self_link = args[:self_link] if args.key?(:self_link)
41187
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
41011
41188
  @warning = args[:warning] if args.key?(:warning)
41012
41189
  end
41013
41190
 
41014
- # Informational warning which replaces the list of routers when the list is
41015
- # empty.
41191
+ # [Output Only] Informational warning message.
41016
41192
  class Warning
41017
41193
  include Google::Apis::Core::Hashable
41018
41194
 
@@ -41025,7 +41201,249 @@ module Google
41025
41201
  # [Output Only] Metadata about this warning in key: value format. For example: "
41026
41202
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
41027
41203
  # Corresponds to the JSON property `data`
41028
- # @return [Array<Google::Apis::ComputeAlpha::RoutersScopedList::Warning::Datum>]
41204
+ # @return [Array<Google::Apis::ComputeAlpha::RoutersListBgpRoutes::Warning::Datum>]
41205
+ attr_accessor :data
41206
+
41207
+ # [Output Only] A human-readable description of the warning code.
41208
+ # Corresponds to the JSON property `message`
41209
+ # @return [String]
41210
+ attr_accessor :message
41211
+
41212
+ def initialize(**args)
41213
+ update!(**args)
41214
+ end
41215
+
41216
+ # Update properties of this object
41217
+ def update!(**args)
41218
+ @code = args[:code] if args.key?(:code)
41219
+ @data = args[:data] if args.key?(:data)
41220
+ @message = args[:message] if args.key?(:message)
41221
+ end
41222
+
41223
+ #
41224
+ class Datum
41225
+ include Google::Apis::Core::Hashable
41226
+
41227
+ # [Output Only] A key that provides more detail on the warning being returned.
41228
+ # For example, for warnings where there are no results in a list request for a
41229
+ # particular zone, this key might be scope and the key value might be the zone
41230
+ # name. Other examples might be a key indicating a deprecated resource and a
41231
+ # suggested replacement, or a warning about invalid network settings (for
41232
+ # example, if an instance attempts to perform IP forwarding but is not enabled
41233
+ # for IP forwarding).
41234
+ # Corresponds to the JSON property `key`
41235
+ # @return [String]
41236
+ attr_accessor :key
41237
+
41238
+ # [Output Only] A warning data value corresponding to the key.
41239
+ # Corresponds to the JSON property `value`
41240
+ # @return [String]
41241
+ attr_accessor :value
41242
+
41243
+ def initialize(**args)
41244
+ update!(**args)
41245
+ end
41246
+
41247
+ # Update properties of this object
41248
+ def update!(**args)
41249
+ @key = args[:key] if args.key?(:key)
41250
+ @value = args[:value] if args.key?(:value)
41251
+ end
41252
+ end
41253
+ end
41254
+ end
41255
+
41256
+ #
41257
+ class RoutersListRoutePolicies
41258
+ include Google::Apis::Core::Hashable
41259
+
41260
+ #
41261
+ # Corresponds to the JSON property `etag`
41262
+ # @return [String]
41263
+ attr_accessor :etag
41264
+
41265
+ # [Output Only] The unique identifier for the resource. This identifier is
41266
+ # defined by the server.
41267
+ # Corresponds to the JSON property `id`
41268
+ # @return [String]
41269
+ attr_accessor :id
41270
+
41271
+ # [Output Only] Type of resource. Always compute#routersListRoutePolicies for
41272
+ # lists of route policies.
41273
+ # Corresponds to the JSON property `kind`
41274
+ # @return [String]
41275
+ attr_accessor :kind
41276
+
41277
+ # [Output Only] This token allows you to get the next page of results for list
41278
+ # requests. If the number of results is larger than maxResults, use the
41279
+ # nextPageToken as a value for the query parameter pageToken in the next list
41280
+ # request. Subsequent list requests will have their own nextPageToken to
41281
+ # continue paging through the results.
41282
+ # Corresponds to the JSON property `nextPageToken`
41283
+ # @return [String]
41284
+ attr_accessor :next_page_token
41285
+
41286
+ # [Output Only] A list of route policies.
41287
+ # Corresponds to the JSON property `result`
41288
+ # @return [Array<Google::Apis::ComputeAlpha::RoutePolicy>]
41289
+ attr_accessor :result
41290
+
41291
+ # [Output Only] Server-defined URL for this resource.
41292
+ # Corresponds to the JSON property `selfLink`
41293
+ # @return [String]
41294
+ attr_accessor :self_link
41295
+
41296
+ # [Output Only] Unreachable resources.
41297
+ # Corresponds to the JSON property `unreachables`
41298
+ # @return [Array<String>]
41299
+ attr_accessor :unreachables
41300
+
41301
+ # [Output Only] Informational warning message.
41302
+ # Corresponds to the JSON property `warning`
41303
+ # @return [Google::Apis::ComputeAlpha::RoutersListRoutePolicies::Warning]
41304
+ attr_accessor :warning
41305
+
41306
+ def initialize(**args)
41307
+ update!(**args)
41308
+ end
41309
+
41310
+ # Update properties of this object
41311
+ def update!(**args)
41312
+ @etag = args[:etag] if args.key?(:etag)
41313
+ @id = args[:id] if args.key?(:id)
41314
+ @kind = args[:kind] if args.key?(:kind)
41315
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
41316
+ @result = args[:result] if args.key?(:result)
41317
+ @self_link = args[:self_link] if args.key?(:self_link)
41318
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
41319
+ @warning = args[:warning] if args.key?(:warning)
41320
+ end
41321
+
41322
+ # [Output Only] Informational warning message.
41323
+ class Warning
41324
+ include Google::Apis::Core::Hashable
41325
+
41326
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
41327
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
41328
+ # Corresponds to the JSON property `code`
41329
+ # @return [String]
41330
+ attr_accessor :code
41331
+
41332
+ # [Output Only] Metadata about this warning in key: value format. For example: "
41333
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
41334
+ # Corresponds to the JSON property `data`
41335
+ # @return [Array<Google::Apis::ComputeAlpha::RoutersListRoutePolicies::Warning::Datum>]
41336
+ attr_accessor :data
41337
+
41338
+ # [Output Only] A human-readable description of the warning code.
41339
+ # Corresponds to the JSON property `message`
41340
+ # @return [String]
41341
+ attr_accessor :message
41342
+
41343
+ def initialize(**args)
41344
+ update!(**args)
41345
+ end
41346
+
41347
+ # Update properties of this object
41348
+ def update!(**args)
41349
+ @code = args[:code] if args.key?(:code)
41350
+ @data = args[:data] if args.key?(:data)
41351
+ @message = args[:message] if args.key?(:message)
41352
+ end
41353
+
41354
+ #
41355
+ class Datum
41356
+ include Google::Apis::Core::Hashable
41357
+
41358
+ # [Output Only] A key that provides more detail on the warning being returned.
41359
+ # For example, for warnings where there are no results in a list request for a
41360
+ # particular zone, this key might be scope and the key value might be the zone
41361
+ # name. Other examples might be a key indicating a deprecated resource and a
41362
+ # suggested replacement, or a warning about invalid network settings (for
41363
+ # example, if an instance attempts to perform IP forwarding but is not enabled
41364
+ # for IP forwarding).
41365
+ # Corresponds to the JSON property `key`
41366
+ # @return [String]
41367
+ attr_accessor :key
41368
+
41369
+ # [Output Only] A warning data value corresponding to the key.
41370
+ # Corresponds to the JSON property `value`
41371
+ # @return [String]
41372
+ attr_accessor :value
41373
+
41374
+ def initialize(**args)
41375
+ update!(**args)
41376
+ end
41377
+
41378
+ # Update properties of this object
41379
+ def update!(**args)
41380
+ @key = args[:key] if args.key?(:key)
41381
+ @value = args[:value] if args.key?(:value)
41382
+ end
41383
+ end
41384
+ end
41385
+ end
41386
+
41387
+ #
41388
+ class RoutersPreviewResponse
41389
+ include Google::Apis::Core::Hashable
41390
+
41391
+ # Represents a Cloud Router resource. For more information about Cloud Router,
41392
+ # read the Cloud Router overview.
41393
+ # Corresponds to the JSON property `resource`
41394
+ # @return [Google::Apis::ComputeAlpha::Router]
41395
+ attr_accessor :resource
41396
+
41397
+ def initialize(**args)
41398
+ update!(**args)
41399
+ end
41400
+
41401
+ # Update properties of this object
41402
+ def update!(**args)
41403
+ @resource = args[:resource] if args.key?(:resource)
41404
+ end
41405
+ end
41406
+
41407
+ #
41408
+ class RoutersScopedList
41409
+ include Google::Apis::Core::Hashable
41410
+
41411
+ # A list of routers contained in this scope.
41412
+ # Corresponds to the JSON property `routers`
41413
+ # @return [Array<Google::Apis::ComputeAlpha::Router>]
41414
+ attr_accessor :routers
41415
+
41416
+ # Informational warning which replaces the list of routers when the list is
41417
+ # empty.
41418
+ # Corresponds to the JSON property `warning`
41419
+ # @return [Google::Apis::ComputeAlpha::RoutersScopedList::Warning]
41420
+ attr_accessor :warning
41421
+
41422
+ def initialize(**args)
41423
+ update!(**args)
41424
+ end
41425
+
41426
+ # Update properties of this object
41427
+ def update!(**args)
41428
+ @routers = args[:routers] if args.key?(:routers)
41429
+ @warning = args[:warning] if args.key?(:warning)
41430
+ end
41431
+
41432
+ # Informational warning which replaces the list of routers when the list is
41433
+ # empty.
41434
+ class Warning
41435
+ include Google::Apis::Core::Hashable
41436
+
41437
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
41438
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
41439
+ # Corresponds to the JSON property `code`
41440
+ # @return [String]
41441
+ attr_accessor :code
41442
+
41443
+ # [Output Only] Metadata about this warning in key: value format. For example: "
41444
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
41445
+ # Corresponds to the JSON property `data`
41446
+ # @return [Array<Google::Apis::ComputeAlpha::RoutersScopedList::Warning::Datum>]
41029
41447
  attr_accessor :data
41030
41448
 
41031
41449
  # [Output Only] A human-readable description of the warning code.
@@ -44875,6 +45293,12 @@ module Google
44875
45293
  # @return [String]
44876
45294
  attr_accessor :name
44877
45295
 
45296
+ # [Output Only] URL of the region where the snapshot resides. Only applicable
45297
+ # for regional snapshots.
45298
+ # Corresponds to the JSON property `region`
45299
+ # @return [String]
45300
+ attr_accessor :region
45301
+
44878
45302
  # [Output Only] Reserved for future use.
44879
45303
  # Corresponds to the JSON property `satisfiesPzs`
44880
45304
  # @return [Boolean]
@@ -45023,6 +45447,7 @@ module Google
45023
45447
  @location_hint = args[:location_hint] if args.key?(:location_hint)
45024
45448
  @max_retention_days = args[:max_retention_days] if args.key?(:max_retention_days)
45025
45449
  @name = args[:name] if args.key?(:name)
45450
+ @region = args[:region] if args.key?(:region)
45026
45451
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
45027
45452
  @self_link = args[:self_link] if args.key?(:self_link)
45028
45453
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -45402,17 +45827,20 @@ module Google
45402
45827
  end
45403
45828
  end
45404
45829
 
45405
- # Represents an SSL Certificate resource. Google Compute Engine has two SSL
45406
- # Certificate resources: * [Global](/compute/docs/reference/rest/alpha/
45830
+ # Represents an SSL certificate resource. Google Compute Engine has two SSL
45831
+ # certificate resources: * [Global](/compute/docs/reference/rest/alpha/
45407
45832
  # sslCertificates) * [Regional](/compute/docs/reference/rest/alpha/
45408
- # regionSslCertificates) The sslCertificates are used by: - external HTTPS load
45409
- # balancers - SSL proxy load balancers The regionSslCertificates are used by
45410
- # internal HTTPS load balancers. Optionally, certificate file contents that you
45411
- # upload can contain a set of up to five PEM-encoded certificates. The API call
45412
- # creates an object (sslCertificate) that holds this data. You can use SSL keys
45413
- # and certificates to secure connections to a load balancer. For more
45414
- # information, read Creating and using SSL certificates, SSL certificates quotas
45415
- # and limits, and Troubleshooting SSL certificates.
45833
+ # regionSslCertificates) The global SSL certificates (sslCertificates) are used
45834
+ # by: - Global external Application Load Balancers - Classic Application Load
45835
+ # Balancers - Proxy Network Load Balancers (with target SSL proxies) The
45836
+ # regional SSL certificates (regionSslCertificates) are used by: - Regional
45837
+ # external Application Load Balancers - Regional internal Application Load
45838
+ # Balancers Optionally, certificate file contents that you upload can contain a
45839
+ # set of up to five PEM-encoded certificates. The API call creates an object (
45840
+ # sslCertificate) that holds this data. You can use SSL keys and certificates to
45841
+ # secure connections to a load balancer. For more information, read Creating and
45842
+ # using SSL certificates, SSL certificates quotas and limits, and
45843
+ # Troubleshooting SSL certificates.
45416
45844
  class SslCertificate
45417
45845
  include Google::Apis::Core::Hashable
45418
45846
 
@@ -46736,11 +47164,6 @@ module Google
46736
47164
  # @return [String]
46737
47165
  attr_accessor :storage_pool_type
46738
47166
 
46739
- # Type of the storage pool
46740
- # Corresponds to the JSON property `type`
46741
- # @return [String]
46742
- attr_accessor :type
46743
-
46744
47167
  # [Output Only] URL of the zone where the storage pool resides. You must specify
46745
47168
  # this field as part of the HTTP request URL. It is not settable as a field in
46746
47169
  # the request body.
@@ -46770,7 +47193,6 @@ module Google
46770
47193
  @state = args[:state] if args.key?(:state)
46771
47194
  @status = args[:status] if args.key?(:status)
46772
47195
  @storage_pool_type = args[:storage_pool_type] if args.key?(:storage_pool_type)
46773
- @type = args[:type] if args.key?(:type)
46774
47196
  @zone = args[:zone] if args.key?(:zone)
46775
47197
  end
46776
47198
  end
@@ -47311,6 +47733,445 @@ module Google
47311
47733
  end
47312
47734
  end
47313
47735
 
47736
+ #
47737
+ class StoragePoolType
47738
+ include Google::Apis::Core::Hashable
47739
+
47740
+ # [Output Only] Creation timestamp in RFC3339 text format.
47741
+ # Corresponds to the JSON property `creationTimestamp`
47742
+ # @return [String]
47743
+ attr_accessor :creation_timestamp
47744
+
47745
+ # Deprecation status for a public resource.
47746
+ # Corresponds to the JSON property `deprecated`
47747
+ # @return [Google::Apis::ComputeAlpha::DeprecationStatus]
47748
+ attr_accessor :deprecated
47749
+
47750
+ # [Output Only] An optional description of this resource.
47751
+ # Corresponds to the JSON property `description`
47752
+ # @return [String]
47753
+ attr_accessor :description
47754
+
47755
+ # [Output Only] The unique identifier for the resource. This identifier is
47756
+ # defined by the server.
47757
+ # Corresponds to the JSON property `id`
47758
+ # @return [Fixnum]
47759
+ attr_accessor :id
47760
+
47761
+ # [Output Only] Type of the resource. Always compute#storagePoolType for storage
47762
+ # pool types.
47763
+ # Corresponds to the JSON property `kind`
47764
+ # @return [String]
47765
+ attr_accessor :kind
47766
+
47767
+ # [Output Only] Maximum provisioned IOPS.
47768
+ # Corresponds to the JSON property `maxProvisionedIops`
47769
+ # @return [Fixnum]
47770
+ attr_accessor :max_provisioned_iops
47771
+
47772
+ # [Output Only] Maximum provisioned throughput.
47773
+ # Corresponds to the JSON property `maxProvisionedThroughput`
47774
+ # @return [Fixnum]
47775
+ attr_accessor :max_provisioned_throughput
47776
+
47777
+ # [Output Only] Maximum storage pool size in GB.
47778
+ # Corresponds to the JSON property `maxSizeGb`
47779
+ # @return [Fixnum]
47780
+ attr_accessor :max_size_gb
47781
+
47782
+ # [Output Only] Minimum provisioned IOPS.
47783
+ # Corresponds to the JSON property `minProvisionedIops`
47784
+ # @return [Fixnum]
47785
+ attr_accessor :min_provisioned_iops
47786
+
47787
+ # [Output Only] Minimum provisioned throughput.
47788
+ # Corresponds to the JSON property `minProvisionedThroughput`
47789
+ # @return [Fixnum]
47790
+ attr_accessor :min_provisioned_throughput
47791
+
47792
+ # [Output Only] Minimum storage pool size in GB.
47793
+ # Corresponds to the JSON property `minSizeGb`
47794
+ # @return [Fixnum]
47795
+ attr_accessor :min_size_gb
47796
+
47797
+ # [Output Only] Name of the resource.
47798
+ # Corresponds to the JSON property `name`
47799
+ # @return [String]
47800
+ attr_accessor :name
47801
+
47802
+ # [Output Only] Server-defined URL for the resource.
47803
+ # Corresponds to the JSON property `selfLink`
47804
+ # @return [String]
47805
+ attr_accessor :self_link
47806
+
47807
+ # [Output Only] Server-defined URL for this resource with the resource id.
47808
+ # Corresponds to the JSON property `selfLinkWithId`
47809
+ # @return [String]
47810
+ attr_accessor :self_link_with_id
47811
+
47812
+ # [Output Only] The list of disk types supported in this storage pool type.
47813
+ # Corresponds to the JSON property `supportedDiskTypes`
47814
+ # @return [Array<String>]
47815
+ attr_accessor :supported_disk_types
47816
+
47817
+ # [Output Only] URL of the zone where the storage pool type resides. You must
47818
+ # specify this field as part of the HTTP request URL. It is not settable as a
47819
+ # field in the request body.
47820
+ # Corresponds to the JSON property `zone`
47821
+ # @return [String]
47822
+ attr_accessor :zone
47823
+
47824
+ def initialize(**args)
47825
+ update!(**args)
47826
+ end
47827
+
47828
+ # Update properties of this object
47829
+ def update!(**args)
47830
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
47831
+ @deprecated = args[:deprecated] if args.key?(:deprecated)
47832
+ @description = args[:description] if args.key?(:description)
47833
+ @id = args[:id] if args.key?(:id)
47834
+ @kind = args[:kind] if args.key?(:kind)
47835
+ @max_provisioned_iops = args[:max_provisioned_iops] if args.key?(:max_provisioned_iops)
47836
+ @max_provisioned_throughput = args[:max_provisioned_throughput] if args.key?(:max_provisioned_throughput)
47837
+ @max_size_gb = args[:max_size_gb] if args.key?(:max_size_gb)
47838
+ @min_provisioned_iops = args[:min_provisioned_iops] if args.key?(:min_provisioned_iops)
47839
+ @min_provisioned_throughput = args[:min_provisioned_throughput] if args.key?(:min_provisioned_throughput)
47840
+ @min_size_gb = args[:min_size_gb] if args.key?(:min_size_gb)
47841
+ @name = args[:name] if args.key?(:name)
47842
+ @self_link = args[:self_link] if args.key?(:self_link)
47843
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
47844
+ @supported_disk_types = args[:supported_disk_types] if args.key?(:supported_disk_types)
47845
+ @zone = args[:zone] if args.key?(:zone)
47846
+ end
47847
+ end
47848
+
47849
+ #
47850
+ class StoragePoolTypeAggregatedList
47851
+ include Google::Apis::Core::Hashable
47852
+
47853
+ # [Output Only] Unique identifier for the resource; defined by the server.
47854
+ # Corresponds to the JSON property `id`
47855
+ # @return [String]
47856
+ attr_accessor :id
47857
+
47858
+ # A list of StoragePoolTypesScopedList resources.
47859
+ # Corresponds to the JSON property `items`
47860
+ # @return [Hash<String,Google::Apis::ComputeAlpha::StoragePoolTypesScopedList>]
47861
+ attr_accessor :items
47862
+
47863
+ # [Output Only] Type of resource. Always compute#storagePoolTypeAggregatedList .
47864
+ # Corresponds to the JSON property `kind`
47865
+ # @return [String]
47866
+ attr_accessor :kind
47867
+
47868
+ # [Output Only] This token allows you to get the next page of results for list
47869
+ # requests. If the number of results is larger than maxResults, use the
47870
+ # nextPageToken as a value for the query parameter pageToken in the next list
47871
+ # request. Subsequent list requests will have their own nextPageToken to
47872
+ # continue paging through the results.
47873
+ # Corresponds to the JSON property `nextPageToken`
47874
+ # @return [String]
47875
+ attr_accessor :next_page_token
47876
+
47877
+ # [Output Only] Server-defined URL for this resource.
47878
+ # Corresponds to the JSON property `selfLink`
47879
+ # @return [String]
47880
+ attr_accessor :self_link
47881
+
47882
+ # [Output Only] Informational warning message.
47883
+ # Corresponds to the JSON property `warning`
47884
+ # @return [Google::Apis::ComputeAlpha::StoragePoolTypeAggregatedList::Warning]
47885
+ attr_accessor :warning
47886
+
47887
+ def initialize(**args)
47888
+ update!(**args)
47889
+ end
47890
+
47891
+ # Update properties of this object
47892
+ def update!(**args)
47893
+ @id = args[:id] if args.key?(:id)
47894
+ @items = args[:items] if args.key?(:items)
47895
+ @kind = args[:kind] if args.key?(:kind)
47896
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
47897
+ @self_link = args[:self_link] if args.key?(:self_link)
47898
+ @warning = args[:warning] if args.key?(:warning)
47899
+ end
47900
+
47901
+ # [Output Only] Informational warning message.
47902
+ class Warning
47903
+ include Google::Apis::Core::Hashable
47904
+
47905
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
47906
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
47907
+ # Corresponds to the JSON property `code`
47908
+ # @return [String]
47909
+ attr_accessor :code
47910
+
47911
+ # [Output Only] Metadata about this warning in key: value format. For example: "
47912
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
47913
+ # Corresponds to the JSON property `data`
47914
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolTypeAggregatedList::Warning::Datum>]
47915
+ attr_accessor :data
47916
+
47917
+ # [Output Only] A human-readable description of the warning code.
47918
+ # Corresponds to the JSON property `message`
47919
+ # @return [String]
47920
+ attr_accessor :message
47921
+
47922
+ def initialize(**args)
47923
+ update!(**args)
47924
+ end
47925
+
47926
+ # Update properties of this object
47927
+ def update!(**args)
47928
+ @code = args[:code] if args.key?(:code)
47929
+ @data = args[:data] if args.key?(:data)
47930
+ @message = args[:message] if args.key?(:message)
47931
+ end
47932
+
47933
+ #
47934
+ class Datum
47935
+ include Google::Apis::Core::Hashable
47936
+
47937
+ # [Output Only] A key that provides more detail on the warning being returned.
47938
+ # For example, for warnings where there are no results in a list request for a
47939
+ # particular zone, this key might be scope and the key value might be the zone
47940
+ # name. Other examples might be a key indicating a deprecated resource and a
47941
+ # suggested replacement, or a warning about invalid network settings (for
47942
+ # example, if an instance attempts to perform IP forwarding but is not enabled
47943
+ # for IP forwarding).
47944
+ # Corresponds to the JSON property `key`
47945
+ # @return [String]
47946
+ attr_accessor :key
47947
+
47948
+ # [Output Only] A warning data value corresponding to the key.
47949
+ # Corresponds to the JSON property `value`
47950
+ # @return [String]
47951
+ attr_accessor :value
47952
+
47953
+ def initialize(**args)
47954
+ update!(**args)
47955
+ end
47956
+
47957
+ # Update properties of this object
47958
+ def update!(**args)
47959
+ @key = args[:key] if args.key?(:key)
47960
+ @value = args[:value] if args.key?(:value)
47961
+ end
47962
+ end
47963
+ end
47964
+ end
47965
+
47966
+ # Contains a list of storage pool types.
47967
+ class StoragePoolTypeList
47968
+ include Google::Apis::Core::Hashable
47969
+
47970
+ # [Output Only] Unique identifier for the resource; defined by the server.
47971
+ # Corresponds to the JSON property `id`
47972
+ # @return [String]
47973
+ attr_accessor :id
47974
+
47975
+ # A list of StoragePoolType resources.
47976
+ # Corresponds to the JSON property `items`
47977
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolType>]
47978
+ attr_accessor :items
47979
+
47980
+ # [Output Only] Type of resource. Always compute#storagePoolTypeList for storage
47981
+ # pool types.
47982
+ # Corresponds to the JSON property `kind`
47983
+ # @return [String]
47984
+ attr_accessor :kind
47985
+
47986
+ # [Output Only] This token allows you to get the next page of results for list
47987
+ # requests. If the number of results is larger than maxResults, use the
47988
+ # nextPageToken as a value for the query parameter pageToken in the next list
47989
+ # request. Subsequent list requests will have their own nextPageToken to
47990
+ # continue paging through the results.
47991
+ # Corresponds to the JSON property `nextPageToken`
47992
+ # @return [String]
47993
+ attr_accessor :next_page_token
47994
+
47995
+ # [Output Only] Server-defined URL for this resource.
47996
+ # Corresponds to the JSON property `selfLink`
47997
+ # @return [String]
47998
+ attr_accessor :self_link
47999
+
48000
+ # [Output Only] Informational warning message.
48001
+ # Corresponds to the JSON property `warning`
48002
+ # @return [Google::Apis::ComputeAlpha::StoragePoolTypeList::Warning]
48003
+ attr_accessor :warning
48004
+
48005
+ def initialize(**args)
48006
+ update!(**args)
48007
+ end
48008
+
48009
+ # Update properties of this object
48010
+ def update!(**args)
48011
+ @id = args[:id] if args.key?(:id)
48012
+ @items = args[:items] if args.key?(:items)
48013
+ @kind = args[:kind] if args.key?(:kind)
48014
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
48015
+ @self_link = args[:self_link] if args.key?(:self_link)
48016
+ @warning = args[:warning] if args.key?(:warning)
48017
+ end
48018
+
48019
+ # [Output Only] Informational warning message.
48020
+ class Warning
48021
+ include Google::Apis::Core::Hashable
48022
+
48023
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
48024
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
48025
+ # Corresponds to the JSON property `code`
48026
+ # @return [String]
48027
+ attr_accessor :code
48028
+
48029
+ # [Output Only] Metadata about this warning in key: value format. For example: "
48030
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
48031
+ # Corresponds to the JSON property `data`
48032
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolTypeList::Warning::Datum>]
48033
+ attr_accessor :data
48034
+
48035
+ # [Output Only] A human-readable description of the warning code.
48036
+ # Corresponds to the JSON property `message`
48037
+ # @return [String]
48038
+ attr_accessor :message
48039
+
48040
+ def initialize(**args)
48041
+ update!(**args)
48042
+ end
48043
+
48044
+ # Update properties of this object
48045
+ def update!(**args)
48046
+ @code = args[:code] if args.key?(:code)
48047
+ @data = args[:data] if args.key?(:data)
48048
+ @message = args[:message] if args.key?(:message)
48049
+ end
48050
+
48051
+ #
48052
+ class Datum
48053
+ include Google::Apis::Core::Hashable
48054
+
48055
+ # [Output Only] A key that provides more detail on the warning being returned.
48056
+ # For example, for warnings where there are no results in a list request for a
48057
+ # particular zone, this key might be scope and the key value might be the zone
48058
+ # name. Other examples might be a key indicating a deprecated resource and a
48059
+ # suggested replacement, or a warning about invalid network settings (for
48060
+ # example, if an instance attempts to perform IP forwarding but is not enabled
48061
+ # for IP forwarding).
48062
+ # Corresponds to the JSON property `key`
48063
+ # @return [String]
48064
+ attr_accessor :key
48065
+
48066
+ # [Output Only] A warning data value corresponding to the key.
48067
+ # Corresponds to the JSON property `value`
48068
+ # @return [String]
48069
+ attr_accessor :value
48070
+
48071
+ def initialize(**args)
48072
+ update!(**args)
48073
+ end
48074
+
48075
+ # Update properties of this object
48076
+ def update!(**args)
48077
+ @key = args[:key] if args.key?(:key)
48078
+ @value = args[:value] if args.key?(:value)
48079
+ end
48080
+ end
48081
+ end
48082
+ end
48083
+
48084
+ #
48085
+ class StoragePoolTypesScopedList
48086
+ include Google::Apis::Core::Hashable
48087
+
48088
+ # [Output Only] A list of storage pool types contained in this scope.
48089
+ # Corresponds to the JSON property `storagePoolTypes`
48090
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolType>]
48091
+ attr_accessor :storage_pool_types
48092
+
48093
+ # [Output Only] Informational warning which replaces the list of storage pool
48094
+ # types when the list is empty.
48095
+ # Corresponds to the JSON property `warning`
48096
+ # @return [Google::Apis::ComputeAlpha::StoragePoolTypesScopedList::Warning]
48097
+ attr_accessor :warning
48098
+
48099
+ def initialize(**args)
48100
+ update!(**args)
48101
+ end
48102
+
48103
+ # Update properties of this object
48104
+ def update!(**args)
48105
+ @storage_pool_types = args[:storage_pool_types] if args.key?(:storage_pool_types)
48106
+ @warning = args[:warning] if args.key?(:warning)
48107
+ end
48108
+
48109
+ # [Output Only] Informational warning which replaces the list of storage pool
48110
+ # types when the list is empty.
48111
+ class Warning
48112
+ include Google::Apis::Core::Hashable
48113
+
48114
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
48115
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
48116
+ # Corresponds to the JSON property `code`
48117
+ # @return [String]
48118
+ attr_accessor :code
48119
+
48120
+ # [Output Only] Metadata about this warning in key: value format. For example: "
48121
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
48122
+ # Corresponds to the JSON property `data`
48123
+ # @return [Array<Google::Apis::ComputeAlpha::StoragePoolTypesScopedList::Warning::Datum>]
48124
+ attr_accessor :data
48125
+
48126
+ # [Output Only] A human-readable description of the warning code.
48127
+ # Corresponds to the JSON property `message`
48128
+ # @return [String]
48129
+ attr_accessor :message
48130
+
48131
+ def initialize(**args)
48132
+ update!(**args)
48133
+ end
48134
+
48135
+ # Update properties of this object
48136
+ def update!(**args)
48137
+ @code = args[:code] if args.key?(:code)
48138
+ @data = args[:data] if args.key?(:data)
48139
+ @message = args[:message] if args.key?(:message)
48140
+ end
48141
+
48142
+ #
48143
+ class Datum
48144
+ include Google::Apis::Core::Hashable
48145
+
48146
+ # [Output Only] A key that provides more detail on the warning being returned.
48147
+ # For example, for warnings where there are no results in a list request for a
48148
+ # particular zone, this key might be scope and the key value might be the zone
48149
+ # name. Other examples might be a key indicating a deprecated resource and a
48150
+ # suggested replacement, or a warning about invalid network settings (for
48151
+ # example, if an instance attempts to perform IP forwarding but is not enabled
48152
+ # for IP forwarding).
48153
+ # Corresponds to the JSON property `key`
48154
+ # @return [String]
48155
+ attr_accessor :key
48156
+
48157
+ # [Output Only] A warning data value corresponding to the key.
48158
+ # Corresponds to the JSON property `value`
48159
+ # @return [String]
48160
+ attr_accessor :value
48161
+
48162
+ def initialize(**args)
48163
+ update!(**args)
48164
+ end
48165
+
48166
+ # Update properties of this object
48167
+ def update!(**args)
48168
+ @key = args[:key] if args.key?(:key)
48169
+ @value = args[:value] if args.key?(:value)
48170
+ end
48171
+ end
48172
+ end
48173
+ end
48174
+
47314
48175
  #
47315
48176
  class StoragePoolsScopedList
47316
48177
  include Google::Apis::Core::Hashable
@@ -48660,11 +49521,13 @@ module Google
48660
49521
  # HTTP Proxy resources: * [Global](/compute/docs/reference/rest/alpha/
48661
49522
  # targetHttpProxies) * [Regional](/compute/docs/reference/rest/alpha/
48662
49523
  # regionTargetHttpProxies) A target HTTP proxy is a component of GCP HTTP load
48663
- # balancers. * targetHttpProxies are used by external HTTP load balancers and
48664
- # Traffic Director. * regionTargetHttpProxies are used by internal HTTP load
48665
- # balancers. Forwarding rules reference a target HTTP proxy, and the target
48666
- # proxy then references a URL map. For more information, read Using Target
48667
- # Proxies and Forwarding rule concepts.
49524
+ # balancers. * targetHttpProxies are used by global external Application Load
49525
+ # Balancers, classic Application Load Balancers, cross-region internal
49526
+ # Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
49527
+ # are used by regional internal Application Load Balancers and regional external
49528
+ # Application Load Balancers. Forwarding rules reference a target HTTP proxy,
49529
+ # and the target proxy then references a URL map. For more information, read
49530
+ # Using Target Proxies and Forwarding rule concepts.
48668
49531
  class TargetHttpProxy
48669
49532
  include Google::Apis::Core::Hashable
48670
49533
 
@@ -48707,10 +49570,10 @@ module Google
48707
49570
 
48708
49571
  # Specifies how long to keep a connection open, after completing a response,
48709
49572
  # while there is no matching traffic (in seconds). If an HTTP keep-alive is not
48710
- # specified, a default value (610 seconds) will be used. For Global external
48711
- # HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum
48712
- # allowed value is 1200 seconds. For Global external HTTP(S) load balancer (
48713
- # classic), this option is not available publicly.
49573
+ # specified, a default value (610 seconds) will be used. For global external
49574
+ # Application Load Balancers, the minimum allowed value is 5 seconds and the
49575
+ # maximum allowed value is 1200 seconds. For classic Application Load Balancers,
49576
+ # this option is not supported.
48714
49577
  # Corresponds to the JSON property `httpKeepAliveTimeoutSec`
48715
49578
  # @return [Fixnum]
48716
49579
  attr_accessor :http_keep_alive_timeout_sec
@@ -49192,11 +50055,13 @@ module Google
49192
50055
  # HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/alpha/
49193
50056
  # targetHttpsProxies) * [Regional](/compute/docs/reference/rest/alpha/
49194
50057
  # regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS
49195
- # load balancers. * targetHttpsProxies are used by external HTTPS load balancers.
49196
- # * regionTargetHttpsProxies are used by internal HTTPS load balancers.
49197
- # Forwarding rules reference a target HTTPS proxy, and the target proxy then
49198
- # references a URL map. For more information, read Using Target Proxies and
49199
- # Forwarding rule concepts.
50058
+ # load balancers. * targetHttpProxies are used by global external Application
50059
+ # Load Balancers, classic Application Load Balancers, cross-region internal
50060
+ # Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
50061
+ # are used by regional internal Application Load Balancers and regional external
50062
+ # Application Load Balancers. Forwarding rules reference a target HTTPS proxy,
50063
+ # and the target proxy then references a URL map. For more information, read
50064
+ # Using Target Proxies and Forwarding rule concepts.
49200
50065
  class TargetHttpsProxy
49201
50066
  include Google::Apis::Core::Hashable
49202
50067
 
@@ -49269,10 +50134,10 @@ module Google
49269
50134
 
49270
50135
  # Specifies how long to keep a connection open, after completing a response,
49271
50136
  # while there is no matching traffic (in seconds). If an HTTP keep-alive is not
49272
- # specified, a default value (610 seconds) will be used. For Global external
49273
- # HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum
49274
- # allowed value is 1200 seconds. For Global external HTTP(S) load balancer (
49275
- # classic), this option is not available publicly.
50137
+ # specified, a default value (610 seconds) will be used. For global external
50138
+ # Application Load Balancers, the minimum allowed value is 5 seconds and the
50139
+ # maximum allowed value is 1200 seconds. For classic Application Load Balancers,
50140
+ # this option is not supported.
49276
50141
  # Corresponds to the JSON property `httpKeepAliveTimeoutSec`
49277
50142
  # @return [Fixnum]
49278
50143
  attr_accessor :http_keep_alive_timeout_sec
@@ -52301,17 +53166,19 @@ module Google
52301
53166
  # Global](/compute/docs/reference/rest/alpha/urlMaps) * [Regional](/compute/docs/
52302
53167
  # reference/rest/alpha/regionUrlMaps) A URL map resource is a component of
52303
53168
  # certain types of cloud load balancers and Traffic Director: * urlMaps are used
52304
- # by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
52305
- # used by internal HTTP(S) load balancers. For a list of supported URL map
52306
- # features by the load balancer type, see the Load balancing features: Routing
52307
- # and traffic management table. For a list of supported URL map features for
52308
- # Traffic Director, see the Traffic Director features: Routing and traffic
52309
- # management table. This resource defines mappings from hostnames and URL paths
52310
- # to either a backend service or a backend bucket. To use the global urlMaps
52311
- # resource, the backend service must have a loadBalancingScheme of either
52312
- # EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
52313
- # backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
52314
- # information, read URL Map Concepts.
53169
+ # by global external Application Load Balancers, classic Application Load
53170
+ # Balancers, and cross-region internal Application Load Balancers. *
53171
+ # regionUrlMaps are used by internal Application Load Balancers, regional
53172
+ # external Application Load Balancers and regional internal Application Load
53173
+ # Balancers. For a list of supported URL map features by the load balancer type,
53174
+ # see the Load balancing features: Routing and traffic management table. For a
53175
+ # list of supported URL map features for Traffic Director, see the Traffic
53176
+ # Director features: Routing and traffic management table. This resource defines
53177
+ # mappings from hostnames and URL paths to either a backend service or a backend
53178
+ # bucket. To use the global urlMaps resource, the backend service must have a
53179
+ # loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the
53180
+ # regionUrlMaps resource, the backend service must have a loadBalancingScheme of
53181
+ # INTERNAL_MANAGED. For more information, read URL Map Concepts.
52315
53182
  class UrlMap
52316
53183
  include Google::Apis::Core::Hashable
52317
53184
 
@@ -52332,8 +53199,8 @@ module Google
52332
53199
  # defaultRouteAction specifies any weightedBackendServices, defaultService must
52333
53200
  # not be set. Conversely if defaultService is set, defaultRouteAction cannot
52334
53201
  # contain any weightedBackendServices. Only one of defaultRouteAction or
52335
- # defaultUrlRedirect must be set. URL maps for Classic external HTTP(S) load
52336
- # balancers only support the urlRewrite action within defaultRouteAction.
53202
+ # defaultUrlRedirect must be set. URL maps for classic Application Load
53203
+ # Balancers only support the urlRewrite action within defaultRouteAction.
52337
53204
  # defaultRouteAction has no effect when the URL map is bound to a target gRPC
52338
53205
  # proxy that has the validateForProxyless field set to true.
52339
53206
  # Corresponds to the JSON property `defaultRouteAction`
@@ -52965,16 +53832,16 @@ module Google
52965
53832
  include Google::Apis::Core::Hashable
52966
53833
 
52967
53834
  # Specifies the load balancer type(s) this validation request is for. Use
52968
- # EXTERNAL_MANAGED for HTTP/HTTPS External Global Load Balancer with Advanced
52969
- # Traffic Management. Use EXTERNAL for Classic HTTP/HTTPS External Global Load
52970
- # Balancer. Other load balancer types are not supported. For more information,
52971
- # refer to Choosing a load balancer. If unspecified, the load balancing scheme
52972
- # will be inferred from the backend service resources this URL map references.
52973
- # If that can not be inferred (for example, this URL map only references backend
52974
- # buckets, or this Url map is for rewrites and redirects only and doesn't
52975
- # reference any backends), EXTERNAL will be used as the default type. If
52976
- # specified, the scheme(s) must not conflict with the load balancing scheme of
52977
- # the backend service resources this Url map references.
53835
+ # EXTERNAL_MANAGED for global external Application Load Balancers and regional
53836
+ # external Application Load Balancers. Use EXTERNAL for classic Application Load
53837
+ # Balancers. Use INTERNAL_MANAGED for internal Application Load Balancers. For
53838
+ # more information, refer to Choosing a load balancer. If unspecified, the load
53839
+ # balancing scheme will be inferred from the backend service resources this URL
53840
+ # map references. If that can not be inferred (for example, this URL map only
53841
+ # references backend buckets, or this Url map is for rewrites and redirects only
53842
+ # and doesn't reference any backends), EXTERNAL will be used as the default type.
53843
+ # If specified, the scheme(s) must not conflict with the load balancing scheme
53844
+ # of the backend service resources this Url map references.
52978
53845
  # Corresponds to the JSON property `loadBalancingSchemes`
52979
53846
  # @return [Array<String>]
52980
53847
  attr_accessor :load_balancing_schemes
@@ -52983,17 +53850,19 @@ module Google
52983
53850
  # Global](/compute/docs/reference/rest/alpha/urlMaps) * [Regional](/compute/docs/
52984
53851
  # reference/rest/alpha/regionUrlMaps) A URL map resource is a component of
52985
53852
  # certain types of cloud load balancers and Traffic Director: * urlMaps are used
52986
- # by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
52987
- # used by internal HTTP(S) load balancers. For a list of supported URL map
52988
- # features by the load balancer type, see the Load balancing features: Routing
52989
- # and traffic management table. For a list of supported URL map features for
52990
- # Traffic Director, see the Traffic Director features: Routing and traffic
52991
- # management table. This resource defines mappings from hostnames and URL paths
52992
- # to either a backend service or a backend bucket. To use the global urlMaps
52993
- # resource, the backend service must have a loadBalancingScheme of either
52994
- # EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
52995
- # backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
52996
- # information, read URL Map Concepts.
53853
+ # by global external Application Load Balancers, classic Application Load
53854
+ # Balancers, and cross-region internal Application Load Balancers. *
53855
+ # regionUrlMaps are used by internal Application Load Balancers, regional
53856
+ # external Application Load Balancers and regional internal Application Load
53857
+ # Balancers. For a list of supported URL map features by the load balancer type,
53858
+ # see the Load balancing features: Routing and traffic management table. For a
53859
+ # list of supported URL map features for Traffic Director, see the Traffic
53860
+ # Director features: Routing and traffic management table. This resource defines
53861
+ # mappings from hostnames and URL paths to either a backend service or a backend
53862
+ # bucket. To use the global urlMaps resource, the backend service must have a
53863
+ # loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the
53864
+ # regionUrlMaps resource, the backend service must have a loadBalancingScheme of
53865
+ # INTERNAL_MANAGED. For more information, read URL Map Concepts.
52997
53866
  # Corresponds to the JSON property `resource`
52998
53867
  # @return [Google::Apis::ComputeAlpha::UrlMap]
52999
53868
  attr_accessor :resource