File: //snap/google-cloud-cli/396/lib/googlecloudsdk/schemas/compute/v1/UrlMap.yaml
$schema: "http://json-schema.org/draft-06/schema#"
title: compute v1 UrlMap export schema
description: A gcloud export/import command YAML validation schema.
type: object
additionalProperties: false
properties:
COMMENT:
type: object
description: User specified info ignored by gcloud import.
additionalProperties: false
properties:
template-id:
type: string
region:
type: string
description:
type: string
date:
type: string
version:
type: string
UNKNOWN:
type: array
description: Unknown API fields that cannot be imported.
items:
type: string
creationTimestamp:
description: '[Output Only] Creation timestamp in RFC3339 text format.'
type: string
defaultCustomErrorResponsePolicy:
description: |-
defaultCustomErrorResponsePolicy specifies how the Load Balancer returns
error responses when BackendServiceor BackendBucket responds with an
error. This policy takes effect at the load balancer level and applies
only when no policy has been defined for the error code at lower levels
like PathMatcher, RouteRule and PathRule within this UrlMap. For example,
consider a UrlMap with the following configuration: -
defaultCustomErrorResponsePolicy containing policies for responding to 5xx
and 4xx errors - A PathMatcher configured for *.example.com has
defaultCustomErrorResponsePolicy for 4xx. If a request for
http://www.example.com/ encounters a 404, the policy in
pathMatcher.defaultCustomErrorResponsePolicy will be enforced. When the
request for http://www.example.com/ encounters a 502, the policy in
UrlMap.defaultCustomErrorResponsePolicy will be enforced. When a request
that does not match any host in *.example.com such as
http://www.myotherexample.com/, encounters a 404,
UrlMap.defaultCustomErrorResponsePolicy takes effect. When used in
conjunction with defaultRouteAction.retryPolicy, retries take precedence.
Only once all retries are exhausted, the defaultCustomErrorResponsePolicy
is applied. While attempting a retry, if load balancer is successful in
reaching the service, the defaultCustomErrorResponsePolicy is ignored and
the response from the service is returned to the client.
defaultCustomErrorResponsePolicy is supported only for global external
Application Load Balancers.
$ref: CustomErrorResponsePolicy.yaml
defaultRouteAction:
description: |-
defaultRouteAction takes effect when none of the hostRules match. The load
balancer performs advanced routing actions, such as URL rewrites and
header transformations, before forwarding the request to the selected
backend. If defaultRouteAction specifies any weightedBackendServices,
defaultService must not be set. Conversely if defaultService is set,
defaultRouteAction cannot contain any weightedBackendServices. Only one of
defaultRouteAction or defaultUrlRedirect must be set. URL maps for classic
Application Load Balancers only support the urlRewrite action within
defaultRouteAction. defaultRouteAction has no effect when the URL map is
bound to a target gRPC proxy that has the validateForProxyless field set
to true.
$ref: HttpRouteAction.yaml
defaultService:
description: |-
The full or partial URL of the defaultService resource to which traffic is
directed if none of the hostRules match. If defaultRouteAction is also
specified, advanced routing actions, such as URL rewrites, take effect
before sending the request to the backend. However, if defaultService is
specified, defaultRouteAction cannot contain any weightedBackendServices.
Conversely, if routeAction specifies any weightedBackendServices, service
must not be specified. If defaultService is specified, then set either
defaultUrlRedirect , or defaultRouteAction.weightedBackendService Don't
set both. defaultService has no effect when the URL map is bound to a
target gRPC proxy that has the validateForProxyless field set to true.
type: string
defaultUrlRedirect:
description: |-
When none of the specified hostRules match, the request is redirected to a
URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified,
defaultService or defaultRouteAction must not be set. Not supported when
the URL map is bound to a target gRPC proxy.
$ref: HttpRedirectAction.yaml
description:
description: |-
An optional description of this resource. Provide this property when you
create the resource.
type: string
fingerprint:
description: |-
Fingerprint of this resource. A hash of the contents stored in this
object. This field is used in optimistic locking. This field is ignored
when inserting a UrlMap. An up-to-date fingerprint must be provided in
order to update the UrlMap, otherwise the request will fail with error 412
conditionNotMet. To see the latest fingerprint, make a get() request to
retrieve a UrlMap.
type: string
headerAction:
description: |-
Specifies changes to request and response headers that need to take effect
for the selected backendService. The headerAction specified here take
effect after headerAction specified under pathMatcher. headerAction is not
supported for load balancers that have their loadBalancingScheme set to
EXTERNAL. Not supported when the URL map is bound to a target gRPC proxy
that has validateForProxyless field set to true.
$ref: HttpHeaderAction.yaml
hostRules:
description: The list of host rules to use against the URL.
type: array
items:
$ref: HostRule.yaml
id:
description: |-
[Output Only] The unique identifier for the resource. This identifier
is defined by the server.
type: integer
kind:
description: |-
[Output Only] Type of the resource. Always compute#urlMaps for url
maps.
type: string
name:
description: |-
Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the
first character must be a lowercase letter, and all following
characters must be a dash, lowercase letter, or digit, except the last
character, which cannot be a dash.
type: string
pathMatchers:
description: The list of named PathMatchers to use against the URL.
type: array
items:
$ref: PathMatcher.yaml
region:
description: |-
[Output Only] URL of the region where the regional URL map
resides. This field is not applicable to global URL maps. You must
specify this field as part of the HTTP request URL. It is not
settable as a field in the request body.
type: string
selfLink:
description: '[Output Only] Server-defined URL for the resource.'
type: string
tests:
description: |-
The list of expected URL mapping tests. Request to update the
UrlMap succeeds only if all test cases pass. You can specify a
maximum of 100 tests per UrlMap. Not supported when the URL map is
bound to a target gRPC proxy that has validateForProxyless field
set to true.
type: array
items:
$ref: UrlMapTest.yaml