google-apis-compute_alpha 0.76.0 → 0.78.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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