1. Packages
  2. Google Cloud Native
  3. API Docs
  4. compute
  5. compute/v1
  6. RegionUrlMap

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.compute/v1.RegionUrlMap

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Creates a UrlMap resource in the specified project using the data included in the request.

    Create RegionUrlMap Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new RegionUrlMap(name: string, args: RegionUrlMapArgs, opts?: CustomResourceOptions);
    @overload
    def RegionUrlMap(resource_name: str,
                     args: RegionUrlMapArgs,
                     opts: Optional[ResourceOptions] = None)
    
    @overload
    def RegionUrlMap(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     region: Optional[str] = None,
                     default_route_action: Optional[HttpRouteActionArgs] = None,
                     default_service: Optional[str] = None,
                     default_url_redirect: Optional[HttpRedirectActionArgs] = None,
                     description: Optional[str] = None,
                     header_action: Optional[HttpHeaderActionArgs] = None,
                     host_rules: Optional[Sequence[HostRuleArgs]] = None,
                     name: Optional[str] = None,
                     path_matchers: Optional[Sequence[PathMatcherArgs]] = None,
                     project: Optional[str] = None,
                     request_id: Optional[str] = None,
                     tests: Optional[Sequence[UrlMapTestArgs]] = None)
    func NewRegionUrlMap(ctx *Context, name string, args RegionUrlMapArgs, opts ...ResourceOption) (*RegionUrlMap, error)
    public RegionUrlMap(string name, RegionUrlMapArgs args, CustomResourceOptions? opts = null)
    public RegionUrlMap(String name, RegionUrlMapArgs args)
    public RegionUrlMap(String name, RegionUrlMapArgs args, CustomResourceOptions options)
    
    type: google-native:compute/v1:RegionUrlMap
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RegionUrlMapArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args RegionUrlMapArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args RegionUrlMapArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RegionUrlMapArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RegionUrlMapArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var exampleregionUrlMapResourceResourceFromComputev1 = new GoogleNative.Compute.V1.RegionUrlMap("exampleregionUrlMapResourceResourceFromComputev1", new()
    {
        Region = "string",
        DefaultRouteAction = new GoogleNative.Compute.V1.Inputs.HttpRouteActionArgs
        {
            CorsPolicy = new GoogleNative.Compute.V1.Inputs.CorsPolicyArgs
            {
                AllowCredentials = false,
                AllowHeaders = new[]
                {
                    "string",
                },
                AllowMethods = new[]
                {
                    "string",
                },
                AllowOriginRegexes = new[]
                {
                    "string",
                },
                AllowOrigins = new[]
                {
                    "string",
                },
                Disabled = false,
                ExposeHeaders = new[]
                {
                    "string",
                },
                MaxAge = 0,
            },
            FaultInjectionPolicy = new GoogleNative.Compute.V1.Inputs.HttpFaultInjectionArgs
            {
                Abort = new GoogleNative.Compute.V1.Inputs.HttpFaultAbortArgs
                {
                    HttpStatus = 0,
                    Percentage = 0,
                },
                Delay = new GoogleNative.Compute.V1.Inputs.HttpFaultDelayArgs
                {
                    FixedDelay = new GoogleNative.Compute.V1.Inputs.DurationArgs
                    {
                        Nanos = 0,
                        Seconds = "string",
                    },
                    Percentage = 0,
                },
            },
            MaxStreamDuration = new GoogleNative.Compute.V1.Inputs.DurationArgs
            {
                Nanos = 0,
                Seconds = "string",
            },
            RequestMirrorPolicy = new GoogleNative.Compute.V1.Inputs.RequestMirrorPolicyArgs
            {
                BackendService = "string",
            },
            RetryPolicy = new GoogleNative.Compute.V1.Inputs.HttpRetryPolicyArgs
            {
                NumRetries = 0,
                PerTryTimeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                {
                    Nanos = 0,
                    Seconds = "string",
                },
                RetryConditions = new[]
                {
                    "string",
                },
            },
            Timeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
            {
                Nanos = 0,
                Seconds = "string",
            },
            UrlRewrite = new GoogleNative.Compute.V1.Inputs.UrlRewriteArgs
            {
                HostRewrite = "string",
                PathPrefixRewrite = "string",
                PathTemplateRewrite = "string",
            },
            WeightedBackendServices = new[]
            {
                new GoogleNative.Compute.V1.Inputs.WeightedBackendServiceArgs
                {
                    BackendService = "string",
                    HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
                    {
                        RequestHeadersToAdd = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                            {
                                HeaderName = "string",
                                HeaderValue = "string",
                                Replace = false,
                            },
                        },
                        RequestHeadersToRemove = new[]
                        {
                            "string",
                        },
                        ResponseHeadersToAdd = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                            {
                                HeaderName = "string",
                                HeaderValue = "string",
                                Replace = false,
                            },
                        },
                        ResponseHeadersToRemove = new[]
                        {
                            "string",
                        },
                    },
                    Weight = 0,
                },
            },
        },
        DefaultService = "string",
        DefaultUrlRedirect = new GoogleNative.Compute.V1.Inputs.HttpRedirectActionArgs
        {
            HostRedirect = "string",
            HttpsRedirect = false,
            PathRedirect = "string",
            PrefixRedirect = "string",
            RedirectResponseCode = GoogleNative.Compute.V1.HttpRedirectActionRedirectResponseCode.Found,
            StripQuery = false,
        },
        Description = "string",
        HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
        {
            RequestHeadersToAdd = new[]
            {
                new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                {
                    HeaderName = "string",
                    HeaderValue = "string",
                    Replace = false,
                },
            },
            RequestHeadersToRemove = new[]
            {
                "string",
            },
            ResponseHeadersToAdd = new[]
            {
                new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                {
                    HeaderName = "string",
                    HeaderValue = "string",
                    Replace = false,
                },
            },
            ResponseHeadersToRemove = new[]
            {
                "string",
            },
        },
        HostRules = new[]
        {
            new GoogleNative.Compute.V1.Inputs.HostRuleArgs
            {
                Description = "string",
                Hosts = new[]
                {
                    "string",
                },
                PathMatcher = "string",
            },
        },
        Name = "string",
        PathMatchers = new[]
        {
            new GoogleNative.Compute.V1.Inputs.PathMatcherArgs
            {
                DefaultRouteAction = new GoogleNative.Compute.V1.Inputs.HttpRouteActionArgs
                {
                    CorsPolicy = new GoogleNative.Compute.V1.Inputs.CorsPolicyArgs
                    {
                        AllowCredentials = false,
                        AllowHeaders = new[]
                        {
                            "string",
                        },
                        AllowMethods = new[]
                        {
                            "string",
                        },
                        AllowOriginRegexes = new[]
                        {
                            "string",
                        },
                        AllowOrigins = new[]
                        {
                            "string",
                        },
                        Disabled = false,
                        ExposeHeaders = new[]
                        {
                            "string",
                        },
                        MaxAge = 0,
                    },
                    FaultInjectionPolicy = new GoogleNative.Compute.V1.Inputs.HttpFaultInjectionArgs
                    {
                        Abort = new GoogleNative.Compute.V1.Inputs.HttpFaultAbortArgs
                        {
                            HttpStatus = 0,
                            Percentage = 0,
                        },
                        Delay = new GoogleNative.Compute.V1.Inputs.HttpFaultDelayArgs
                        {
                            FixedDelay = new GoogleNative.Compute.V1.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            Percentage = 0,
                        },
                    },
                    MaxStreamDuration = new GoogleNative.Compute.V1.Inputs.DurationArgs
                    {
                        Nanos = 0,
                        Seconds = "string",
                    },
                    RequestMirrorPolicy = new GoogleNative.Compute.V1.Inputs.RequestMirrorPolicyArgs
                    {
                        BackendService = "string",
                    },
                    RetryPolicy = new GoogleNative.Compute.V1.Inputs.HttpRetryPolicyArgs
                    {
                        NumRetries = 0,
                        PerTryTimeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                        {
                            Nanos = 0,
                            Seconds = "string",
                        },
                        RetryConditions = new[]
                        {
                            "string",
                        },
                    },
                    Timeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                    {
                        Nanos = 0,
                        Seconds = "string",
                    },
                    UrlRewrite = new GoogleNative.Compute.V1.Inputs.UrlRewriteArgs
                    {
                        HostRewrite = "string",
                        PathPrefixRewrite = "string",
                        PathTemplateRewrite = "string",
                    },
                    WeightedBackendServices = new[]
                    {
                        new GoogleNative.Compute.V1.Inputs.WeightedBackendServiceArgs
                        {
                            BackendService = "string",
                            HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
                            {
                                RequestHeadersToAdd = new[]
                                {
                                    new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                    {
                                        HeaderName = "string",
                                        HeaderValue = "string",
                                        Replace = false,
                                    },
                                },
                                RequestHeadersToRemove = new[]
                                {
                                    "string",
                                },
                                ResponseHeadersToAdd = new[]
                                {
                                    new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                    {
                                        HeaderName = "string",
                                        HeaderValue = "string",
                                        Replace = false,
                                    },
                                },
                                ResponseHeadersToRemove = new[]
                                {
                                    "string",
                                },
                            },
                            Weight = 0,
                        },
                    },
                },
                DefaultService = "string",
                DefaultUrlRedirect = new GoogleNative.Compute.V1.Inputs.HttpRedirectActionArgs
                {
                    HostRedirect = "string",
                    HttpsRedirect = false,
                    PathRedirect = "string",
                    PrefixRedirect = "string",
                    RedirectResponseCode = GoogleNative.Compute.V1.HttpRedirectActionRedirectResponseCode.Found,
                    StripQuery = false,
                },
                Description = "string",
                HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
                {
                    RequestHeadersToAdd = new[]
                    {
                        new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                        {
                            HeaderName = "string",
                            HeaderValue = "string",
                            Replace = false,
                        },
                    },
                    RequestHeadersToRemove = new[]
                    {
                        "string",
                    },
                    ResponseHeadersToAdd = new[]
                    {
                        new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                        {
                            HeaderName = "string",
                            HeaderValue = "string",
                            Replace = false,
                        },
                    },
                    ResponseHeadersToRemove = new[]
                    {
                        "string",
                    },
                },
                Name = "string",
                PathRules = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.PathRuleArgs
                    {
                        Paths = new[]
                        {
                            "string",
                        },
                        RouteAction = new GoogleNative.Compute.V1.Inputs.HttpRouteActionArgs
                        {
                            CorsPolicy = new GoogleNative.Compute.V1.Inputs.CorsPolicyArgs
                            {
                                AllowCredentials = false,
                                AllowHeaders = new[]
                                {
                                    "string",
                                },
                                AllowMethods = new[]
                                {
                                    "string",
                                },
                                AllowOriginRegexes = new[]
                                {
                                    "string",
                                },
                                AllowOrigins = new[]
                                {
                                    "string",
                                },
                                Disabled = false,
                                ExposeHeaders = new[]
                                {
                                    "string",
                                },
                                MaxAge = 0,
                            },
                            FaultInjectionPolicy = new GoogleNative.Compute.V1.Inputs.HttpFaultInjectionArgs
                            {
                                Abort = new GoogleNative.Compute.V1.Inputs.HttpFaultAbortArgs
                                {
                                    HttpStatus = 0,
                                    Percentage = 0,
                                },
                                Delay = new GoogleNative.Compute.V1.Inputs.HttpFaultDelayArgs
                                {
                                    FixedDelay = new GoogleNative.Compute.V1.Inputs.DurationArgs
                                    {
                                        Nanos = 0,
                                        Seconds = "string",
                                    },
                                    Percentage = 0,
                                },
                            },
                            MaxStreamDuration = new GoogleNative.Compute.V1.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            RequestMirrorPolicy = new GoogleNative.Compute.V1.Inputs.RequestMirrorPolicyArgs
                            {
                                BackendService = "string",
                            },
                            RetryPolicy = new GoogleNative.Compute.V1.Inputs.HttpRetryPolicyArgs
                            {
                                NumRetries = 0,
                                PerTryTimeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                                {
                                    Nanos = 0,
                                    Seconds = "string",
                                },
                                RetryConditions = new[]
                                {
                                    "string",
                                },
                            },
                            Timeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            UrlRewrite = new GoogleNative.Compute.V1.Inputs.UrlRewriteArgs
                            {
                                HostRewrite = "string",
                                PathPrefixRewrite = "string",
                                PathTemplateRewrite = "string",
                            },
                            WeightedBackendServices = new[]
                            {
                                new GoogleNative.Compute.V1.Inputs.WeightedBackendServiceArgs
                                {
                                    BackendService = "string",
                                    HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
                                    {
                                        RequestHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        RequestHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                        ResponseHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        ResponseHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                    },
                                    Weight = 0,
                                },
                            },
                        },
                        Service = "string",
                        UrlRedirect = new GoogleNative.Compute.V1.Inputs.HttpRedirectActionArgs
                        {
                            HostRedirect = "string",
                            HttpsRedirect = false,
                            PathRedirect = "string",
                            PrefixRedirect = "string",
                            RedirectResponseCode = GoogleNative.Compute.V1.HttpRedirectActionRedirectResponseCode.Found,
                            StripQuery = false,
                        },
                    },
                },
                RouteRules = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.HttpRouteRuleArgs
                    {
                        Description = "string",
                        HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
                        {
                            RequestHeadersToAdd = new[]
                            {
                                new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                {
                                    HeaderName = "string",
                                    HeaderValue = "string",
                                    Replace = false,
                                },
                            },
                            RequestHeadersToRemove = new[]
                            {
                                "string",
                            },
                            ResponseHeadersToAdd = new[]
                            {
                                new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                {
                                    HeaderName = "string",
                                    HeaderValue = "string",
                                    Replace = false,
                                },
                            },
                            ResponseHeadersToRemove = new[]
                            {
                                "string",
                            },
                        },
                        MatchRules = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.HttpRouteRuleMatchArgs
                            {
                                FullPathMatch = "string",
                                HeaderMatches = new[]
                                {
                                    new GoogleNative.Compute.V1.Inputs.HttpHeaderMatchArgs
                                    {
                                        ExactMatch = "string",
                                        HeaderName = "string",
                                        InvertMatch = false,
                                        PrefixMatch = "string",
                                        PresentMatch = false,
                                        RangeMatch = new GoogleNative.Compute.V1.Inputs.Int64RangeMatchArgs
                                        {
                                            RangeEnd = "string",
                                            RangeStart = "string",
                                        },
                                        RegexMatch = "string",
                                        SuffixMatch = "string",
                                    },
                                },
                                IgnoreCase = false,
                                MetadataFilters = new[]
                                {
                                    new GoogleNative.Compute.V1.Inputs.MetadataFilterArgs
                                    {
                                        FilterLabels = new[]
                                        {
                                            new GoogleNative.Compute.V1.Inputs.MetadataFilterLabelMatchArgs
                                            {
                                                Name = "string",
                                                Value = "string",
                                            },
                                        },
                                        FilterMatchCriteria = GoogleNative.Compute.V1.MetadataFilterFilterMatchCriteria.MatchAll,
                                    },
                                },
                                PathTemplateMatch = "string",
                                PrefixMatch = "string",
                                QueryParameterMatches = new[]
                                {
                                    new GoogleNative.Compute.V1.Inputs.HttpQueryParameterMatchArgs
                                    {
                                        ExactMatch = "string",
                                        Name = "string",
                                        PresentMatch = false,
                                        RegexMatch = "string",
                                    },
                                },
                                RegexMatch = "string",
                            },
                        },
                        Priority = 0,
                        RouteAction = new GoogleNative.Compute.V1.Inputs.HttpRouteActionArgs
                        {
                            CorsPolicy = new GoogleNative.Compute.V1.Inputs.CorsPolicyArgs
                            {
                                AllowCredentials = false,
                                AllowHeaders = new[]
                                {
                                    "string",
                                },
                                AllowMethods = new[]
                                {
                                    "string",
                                },
                                AllowOriginRegexes = new[]
                                {
                                    "string",
                                },
                                AllowOrigins = new[]
                                {
                                    "string",
                                },
                                Disabled = false,
                                ExposeHeaders = new[]
                                {
                                    "string",
                                },
                                MaxAge = 0,
                            },
                            FaultInjectionPolicy = new GoogleNative.Compute.V1.Inputs.HttpFaultInjectionArgs
                            {
                                Abort = new GoogleNative.Compute.V1.Inputs.HttpFaultAbortArgs
                                {
                                    HttpStatus = 0,
                                    Percentage = 0,
                                },
                                Delay = new GoogleNative.Compute.V1.Inputs.HttpFaultDelayArgs
                                {
                                    FixedDelay = new GoogleNative.Compute.V1.Inputs.DurationArgs
                                    {
                                        Nanos = 0,
                                        Seconds = "string",
                                    },
                                    Percentage = 0,
                                },
                            },
                            MaxStreamDuration = new GoogleNative.Compute.V1.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            RequestMirrorPolicy = new GoogleNative.Compute.V1.Inputs.RequestMirrorPolicyArgs
                            {
                                BackendService = "string",
                            },
                            RetryPolicy = new GoogleNative.Compute.V1.Inputs.HttpRetryPolicyArgs
                            {
                                NumRetries = 0,
                                PerTryTimeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                                {
                                    Nanos = 0,
                                    Seconds = "string",
                                },
                                RetryConditions = new[]
                                {
                                    "string",
                                },
                            },
                            Timeout = new GoogleNative.Compute.V1.Inputs.DurationArgs
                            {
                                Nanos = 0,
                                Seconds = "string",
                            },
                            UrlRewrite = new GoogleNative.Compute.V1.Inputs.UrlRewriteArgs
                            {
                                HostRewrite = "string",
                                PathPrefixRewrite = "string",
                                PathTemplateRewrite = "string",
                            },
                            WeightedBackendServices = new[]
                            {
                                new GoogleNative.Compute.V1.Inputs.WeightedBackendServiceArgs
                                {
                                    BackendService = "string",
                                    HeaderAction = new GoogleNative.Compute.V1.Inputs.HttpHeaderActionArgs
                                    {
                                        RequestHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        RequestHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                        ResponseHeadersToAdd = new[]
                                        {
                                            new GoogleNative.Compute.V1.Inputs.HttpHeaderOptionArgs
                                            {
                                                HeaderName = "string",
                                                HeaderValue = "string",
                                                Replace = false,
                                            },
                                        },
                                        ResponseHeadersToRemove = new[]
                                        {
                                            "string",
                                        },
                                    },
                                    Weight = 0,
                                },
                            },
                        },
                        Service = "string",
                        UrlRedirect = new GoogleNative.Compute.V1.Inputs.HttpRedirectActionArgs
                        {
                            HostRedirect = "string",
                            HttpsRedirect = false,
                            PathRedirect = "string",
                            PrefixRedirect = "string",
                            RedirectResponseCode = GoogleNative.Compute.V1.HttpRedirectActionRedirectResponseCode.Found,
                            StripQuery = false,
                        },
                    },
                },
            },
        },
        Project = "string",
        RequestId = "string",
        Tests = new[]
        {
            new GoogleNative.Compute.V1.Inputs.UrlMapTestArgs
            {
                Description = "string",
                ExpectedOutputUrl = "string",
                ExpectedRedirectResponseCode = 0,
                Headers = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.UrlMapTestHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Host = "string",
                Path = "string",
                Service = "string",
            },
        },
    });
    
    example, err := computev1.NewRegionUrlMap(ctx, "exampleregionUrlMapResourceResourceFromComputev1", &computev1.RegionUrlMapArgs{
    	Region: pulumi.String("string"),
    	DefaultRouteAction: &compute.HttpRouteActionArgs{
    		CorsPolicy: &compute.CorsPolicyArgs{
    			AllowCredentials: pulumi.Bool(false),
    			AllowHeaders: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			AllowMethods: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			AllowOriginRegexes: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			AllowOrigins: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Disabled: pulumi.Bool(false),
    			ExposeHeaders: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			MaxAge: pulumi.Int(0),
    		},
    		FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    			Abort: &compute.HttpFaultAbortArgs{
    				HttpStatus: pulumi.Int(0),
    				Percentage: pulumi.Float64(0),
    			},
    			Delay: &compute.HttpFaultDelayArgs{
    				FixedDelay: &compute.DurationArgs{
    					Nanos:   pulumi.Int(0),
    					Seconds: pulumi.String("string"),
    				},
    				Percentage: pulumi.Float64(0),
    			},
    		},
    		MaxStreamDuration: &compute.DurationArgs{
    			Nanos:   pulumi.Int(0),
    			Seconds: pulumi.String("string"),
    		},
    		RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    			BackendService: pulumi.String("string"),
    		},
    		RetryPolicy: &compute.HttpRetryPolicyArgs{
    			NumRetries: pulumi.Int(0),
    			PerTryTimeout: &compute.DurationArgs{
    				Nanos:   pulumi.Int(0),
    				Seconds: pulumi.String("string"),
    			},
    			RetryConditions: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		Timeout: &compute.DurationArgs{
    			Nanos:   pulumi.Int(0),
    			Seconds: pulumi.String("string"),
    		},
    		UrlRewrite: &compute.UrlRewriteArgs{
    			HostRewrite:         pulumi.String("string"),
    			PathPrefixRewrite:   pulumi.String("string"),
    			PathTemplateRewrite: pulumi.String("string"),
    		},
    		WeightedBackendServices: compute.WeightedBackendServiceArray{
    			&compute.WeightedBackendServiceArgs{
    				BackendService: pulumi.String("string"),
    				HeaderAction: &compute.HttpHeaderActionArgs{
    					RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    						&compute.HttpHeaderOptionArgs{
    							HeaderName:  pulumi.String("string"),
    							HeaderValue: pulumi.String("string"),
    							Replace:     pulumi.Bool(false),
    						},
    					},
    					RequestHeadersToRemove: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    						&compute.HttpHeaderOptionArgs{
    							HeaderName:  pulumi.String("string"),
    							HeaderValue: pulumi.String("string"),
    							Replace:     pulumi.Bool(false),
    						},
    					},
    					ResponseHeadersToRemove: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    				Weight: pulumi.Int(0),
    			},
    		},
    	},
    	DefaultService: pulumi.String("string"),
    	DefaultUrlRedirect: &compute.HttpRedirectActionArgs{
    		HostRedirect:         pulumi.String("string"),
    		HttpsRedirect:        pulumi.Bool(false),
    		PathRedirect:         pulumi.String("string"),
    		PrefixRedirect:       pulumi.String("string"),
    		RedirectResponseCode: computev1.HttpRedirectActionRedirectResponseCodeFound,
    		StripQuery:           pulumi.Bool(false),
    	},
    	Description: pulumi.String("string"),
    	HeaderAction: &compute.HttpHeaderActionArgs{
    		RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    			&compute.HttpHeaderOptionArgs{
    				HeaderName:  pulumi.String("string"),
    				HeaderValue: pulumi.String("string"),
    				Replace:     pulumi.Bool(false),
    			},
    		},
    		RequestHeadersToRemove: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    			&compute.HttpHeaderOptionArgs{
    				HeaderName:  pulumi.String("string"),
    				HeaderValue: pulumi.String("string"),
    				Replace:     pulumi.Bool(false),
    			},
    		},
    		ResponseHeadersToRemove: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	HostRules: compute.HostRuleArray{
    		&compute.HostRuleArgs{
    			Description: pulumi.String("string"),
    			Hosts: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			PathMatcher: pulumi.String("string"),
    		},
    	},
    	Name: pulumi.String("string"),
    	PathMatchers: compute.PathMatcherArray{
    		&compute.PathMatcherArgs{
    			DefaultRouteAction: &compute.HttpRouteActionArgs{
    				CorsPolicy: &compute.CorsPolicyArgs{
    					AllowCredentials: pulumi.Bool(false),
    					AllowHeaders: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					AllowMethods: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					AllowOriginRegexes: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					AllowOrigins: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Disabled: pulumi.Bool(false),
    					ExposeHeaders: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					MaxAge: pulumi.Int(0),
    				},
    				FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    					Abort: &compute.HttpFaultAbortArgs{
    						HttpStatus: pulumi.Int(0),
    						Percentage: pulumi.Float64(0),
    					},
    					Delay: &compute.HttpFaultDelayArgs{
    						FixedDelay: &compute.DurationArgs{
    							Nanos:   pulumi.Int(0),
    							Seconds: pulumi.String("string"),
    						},
    						Percentage: pulumi.Float64(0),
    					},
    				},
    				MaxStreamDuration: &compute.DurationArgs{
    					Nanos:   pulumi.Int(0),
    					Seconds: pulumi.String("string"),
    				},
    				RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    					BackendService: pulumi.String("string"),
    				},
    				RetryPolicy: &compute.HttpRetryPolicyArgs{
    					NumRetries: pulumi.Int(0),
    					PerTryTimeout: &compute.DurationArgs{
    						Nanos:   pulumi.Int(0),
    						Seconds: pulumi.String("string"),
    					},
    					RetryConditions: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    				Timeout: &compute.DurationArgs{
    					Nanos:   pulumi.Int(0),
    					Seconds: pulumi.String("string"),
    				},
    				UrlRewrite: &compute.UrlRewriteArgs{
    					HostRewrite:         pulumi.String("string"),
    					PathPrefixRewrite:   pulumi.String("string"),
    					PathTemplateRewrite: pulumi.String("string"),
    				},
    				WeightedBackendServices: compute.WeightedBackendServiceArray{
    					&compute.WeightedBackendServiceArgs{
    						BackendService: pulumi.String("string"),
    						HeaderAction: &compute.HttpHeaderActionArgs{
    							RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    								&compute.HttpHeaderOptionArgs{
    									HeaderName:  pulumi.String("string"),
    									HeaderValue: pulumi.String("string"),
    									Replace:     pulumi.Bool(false),
    								},
    							},
    							RequestHeadersToRemove: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    								&compute.HttpHeaderOptionArgs{
    									HeaderName:  pulumi.String("string"),
    									HeaderValue: pulumi.String("string"),
    									Replace:     pulumi.Bool(false),
    								},
    							},
    							ResponseHeadersToRemove: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    						},
    						Weight: pulumi.Int(0),
    					},
    				},
    			},
    			DefaultService: pulumi.String("string"),
    			DefaultUrlRedirect: &compute.HttpRedirectActionArgs{
    				HostRedirect:         pulumi.String("string"),
    				HttpsRedirect:        pulumi.Bool(false),
    				PathRedirect:         pulumi.String("string"),
    				PrefixRedirect:       pulumi.String("string"),
    				RedirectResponseCode: computev1.HttpRedirectActionRedirectResponseCodeFound,
    				StripQuery:           pulumi.Bool(false),
    			},
    			Description: pulumi.String("string"),
    			HeaderAction: &compute.HttpHeaderActionArgs{
    				RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    					&compute.HttpHeaderOptionArgs{
    						HeaderName:  pulumi.String("string"),
    						HeaderValue: pulumi.String("string"),
    						Replace:     pulumi.Bool(false),
    					},
    				},
    				RequestHeadersToRemove: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    					&compute.HttpHeaderOptionArgs{
    						HeaderName:  pulumi.String("string"),
    						HeaderValue: pulumi.String("string"),
    						Replace:     pulumi.Bool(false),
    					},
    				},
    				ResponseHeadersToRemove: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			Name: pulumi.String("string"),
    			PathRules: compute.PathRuleArray{
    				&compute.PathRuleArgs{
    					Paths: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					RouteAction: &compute.HttpRouteActionArgs{
    						CorsPolicy: &compute.CorsPolicyArgs{
    							AllowCredentials: pulumi.Bool(false),
    							AllowHeaders: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							AllowMethods: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							AllowOriginRegexes: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							AllowOrigins: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							Disabled: pulumi.Bool(false),
    							ExposeHeaders: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							MaxAge: pulumi.Int(0),
    						},
    						FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    							Abort: &compute.HttpFaultAbortArgs{
    								HttpStatus: pulumi.Int(0),
    								Percentage: pulumi.Float64(0),
    							},
    							Delay: &compute.HttpFaultDelayArgs{
    								FixedDelay: &compute.DurationArgs{
    									Nanos:   pulumi.Int(0),
    									Seconds: pulumi.String("string"),
    								},
    								Percentage: pulumi.Float64(0),
    							},
    						},
    						MaxStreamDuration: &compute.DurationArgs{
    							Nanos:   pulumi.Int(0),
    							Seconds: pulumi.String("string"),
    						},
    						RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    							BackendService: pulumi.String("string"),
    						},
    						RetryPolicy: &compute.HttpRetryPolicyArgs{
    							NumRetries: pulumi.Int(0),
    							PerTryTimeout: &compute.DurationArgs{
    								Nanos:   pulumi.Int(0),
    								Seconds: pulumi.String("string"),
    							},
    							RetryConditions: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    						},
    						Timeout: &compute.DurationArgs{
    							Nanos:   pulumi.Int(0),
    							Seconds: pulumi.String("string"),
    						},
    						UrlRewrite: &compute.UrlRewriteArgs{
    							HostRewrite:         pulumi.String("string"),
    							PathPrefixRewrite:   pulumi.String("string"),
    							PathTemplateRewrite: pulumi.String("string"),
    						},
    						WeightedBackendServices: compute.WeightedBackendServiceArray{
    							&compute.WeightedBackendServiceArgs{
    								BackendService: pulumi.String("string"),
    								HeaderAction: &compute.HttpHeaderActionArgs{
    									RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    										&compute.HttpHeaderOptionArgs{
    											HeaderName:  pulumi.String("string"),
    											HeaderValue: pulumi.String("string"),
    											Replace:     pulumi.Bool(false),
    										},
    									},
    									RequestHeadersToRemove: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    										&compute.HttpHeaderOptionArgs{
    											HeaderName:  pulumi.String("string"),
    											HeaderValue: pulumi.String("string"),
    											Replace:     pulumi.Bool(false),
    										},
    									},
    									ResponseHeadersToRemove: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    								Weight: pulumi.Int(0),
    							},
    						},
    					},
    					Service: pulumi.String("string"),
    					UrlRedirect: &compute.HttpRedirectActionArgs{
    						HostRedirect:         pulumi.String("string"),
    						HttpsRedirect:        pulumi.Bool(false),
    						PathRedirect:         pulumi.String("string"),
    						PrefixRedirect:       pulumi.String("string"),
    						RedirectResponseCode: computev1.HttpRedirectActionRedirectResponseCodeFound,
    						StripQuery:           pulumi.Bool(false),
    					},
    				},
    			},
    			RouteRules: compute.HttpRouteRuleArray{
    				&compute.HttpRouteRuleArgs{
    					Description: pulumi.String("string"),
    					HeaderAction: &compute.HttpHeaderActionArgs{
    						RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    							&compute.HttpHeaderOptionArgs{
    								HeaderName:  pulumi.String("string"),
    								HeaderValue: pulumi.String("string"),
    								Replace:     pulumi.Bool(false),
    							},
    						},
    						RequestHeadersToRemove: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    							&compute.HttpHeaderOptionArgs{
    								HeaderName:  pulumi.String("string"),
    								HeaderValue: pulumi.String("string"),
    								Replace:     pulumi.Bool(false),
    							},
    						},
    						ResponseHeadersToRemove: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					MatchRules: compute.HttpRouteRuleMatchArray{
    						&compute.HttpRouteRuleMatchArgs{
    							FullPathMatch: pulumi.String("string"),
    							HeaderMatches: compute.HttpHeaderMatchArray{
    								&compute.HttpHeaderMatchArgs{
    									ExactMatch:   pulumi.String("string"),
    									HeaderName:   pulumi.String("string"),
    									InvertMatch:  pulumi.Bool(false),
    									PrefixMatch:  pulumi.String("string"),
    									PresentMatch: pulumi.Bool(false),
    									RangeMatch: &compute.Int64RangeMatchArgs{
    										RangeEnd:   pulumi.String("string"),
    										RangeStart: pulumi.String("string"),
    									},
    									RegexMatch:  pulumi.String("string"),
    									SuffixMatch: pulumi.String("string"),
    								},
    							},
    							IgnoreCase: pulumi.Bool(false),
    							MetadataFilters: compute.MetadataFilterArray{
    								&compute.MetadataFilterArgs{
    									FilterLabels: compute.MetadataFilterLabelMatchArray{
    										&compute.MetadataFilterLabelMatchArgs{
    											Name:  pulumi.String("string"),
    											Value: pulumi.String("string"),
    										},
    									},
    									FilterMatchCriteria: computev1.MetadataFilterFilterMatchCriteriaMatchAll,
    								},
    							},
    							PathTemplateMatch: pulumi.String("string"),
    							PrefixMatch:       pulumi.String("string"),
    							QueryParameterMatches: compute.HttpQueryParameterMatchArray{
    								&compute.HttpQueryParameterMatchArgs{
    									ExactMatch:   pulumi.String("string"),
    									Name:         pulumi.String("string"),
    									PresentMatch: pulumi.Bool(false),
    									RegexMatch:   pulumi.String("string"),
    								},
    							},
    							RegexMatch: pulumi.String("string"),
    						},
    					},
    					Priority: pulumi.Int(0),
    					RouteAction: &compute.HttpRouteActionArgs{
    						CorsPolicy: &compute.CorsPolicyArgs{
    							AllowCredentials: pulumi.Bool(false),
    							AllowHeaders: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							AllowMethods: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							AllowOriginRegexes: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							AllowOrigins: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							Disabled: pulumi.Bool(false),
    							ExposeHeaders: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							MaxAge: pulumi.Int(0),
    						},
    						FaultInjectionPolicy: &compute.HttpFaultInjectionArgs{
    							Abort: &compute.HttpFaultAbortArgs{
    								HttpStatus: pulumi.Int(0),
    								Percentage: pulumi.Float64(0),
    							},
    							Delay: &compute.HttpFaultDelayArgs{
    								FixedDelay: &compute.DurationArgs{
    									Nanos:   pulumi.Int(0),
    									Seconds: pulumi.String("string"),
    								},
    								Percentage: pulumi.Float64(0),
    							},
    						},
    						MaxStreamDuration: &compute.DurationArgs{
    							Nanos:   pulumi.Int(0),
    							Seconds: pulumi.String("string"),
    						},
    						RequestMirrorPolicy: &compute.RequestMirrorPolicyArgs{
    							BackendService: pulumi.String("string"),
    						},
    						RetryPolicy: &compute.HttpRetryPolicyArgs{
    							NumRetries: pulumi.Int(0),
    							PerTryTimeout: &compute.DurationArgs{
    								Nanos:   pulumi.Int(0),
    								Seconds: pulumi.String("string"),
    							},
    							RetryConditions: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    						},
    						Timeout: &compute.DurationArgs{
    							Nanos:   pulumi.Int(0),
    							Seconds: pulumi.String("string"),
    						},
    						UrlRewrite: &compute.UrlRewriteArgs{
    							HostRewrite:         pulumi.String("string"),
    							PathPrefixRewrite:   pulumi.String("string"),
    							PathTemplateRewrite: pulumi.String("string"),
    						},
    						WeightedBackendServices: compute.WeightedBackendServiceArray{
    							&compute.WeightedBackendServiceArgs{
    								BackendService: pulumi.String("string"),
    								HeaderAction: &compute.HttpHeaderActionArgs{
    									RequestHeadersToAdd: compute.HttpHeaderOptionArray{
    										&compute.HttpHeaderOptionArgs{
    											HeaderName:  pulumi.String("string"),
    											HeaderValue: pulumi.String("string"),
    											Replace:     pulumi.Bool(false),
    										},
    									},
    									RequestHeadersToRemove: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									ResponseHeadersToAdd: compute.HttpHeaderOptionArray{
    										&compute.HttpHeaderOptionArgs{
    											HeaderName:  pulumi.String("string"),
    											HeaderValue: pulumi.String("string"),
    											Replace:     pulumi.Bool(false),
    										},
    									},
    									ResponseHeadersToRemove: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    								Weight: pulumi.Int(0),
    							},
    						},
    					},
    					Service: pulumi.String("string"),
    					UrlRedirect: &compute.HttpRedirectActionArgs{
    						HostRedirect:         pulumi.String("string"),
    						HttpsRedirect:        pulumi.Bool(false),
    						PathRedirect:         pulumi.String("string"),
    						PrefixRedirect:       pulumi.String("string"),
    						RedirectResponseCode: computev1.HttpRedirectActionRedirectResponseCodeFound,
    						StripQuery:           pulumi.Bool(false),
    					},
    				},
    			},
    		},
    	},
    	Project:   pulumi.String("string"),
    	RequestId: pulumi.String("string"),
    	Tests: compute.UrlMapTestArray{
    		&compute.UrlMapTestArgs{
    			Description:                  pulumi.String("string"),
    			ExpectedOutputUrl:            pulumi.String("string"),
    			ExpectedRedirectResponseCode: pulumi.Int(0),
    			Headers: compute.UrlMapTestHeaderArray{
    				&compute.UrlMapTestHeaderArgs{
    					Name:  pulumi.String("string"),
    					Value: pulumi.String("string"),
    				},
    			},
    			Host:    pulumi.String("string"),
    			Path:    pulumi.String("string"),
    			Service: pulumi.String("string"),
    		},
    	},
    })
    
    var exampleregionUrlMapResourceResourceFromComputev1 = new RegionUrlMap("exampleregionUrlMapResourceResourceFromComputev1", RegionUrlMapArgs.builder()
        .region("string")
        .defaultRouteAction(HttpRouteActionArgs.builder()
            .corsPolicy(CorsPolicyArgs.builder()
                .allowCredentials(false)
                .allowHeaders("string")
                .allowMethods("string")
                .allowOriginRegexes("string")
                .allowOrigins("string")
                .disabled(false)
                .exposeHeaders("string")
                .maxAge(0)
                .build())
            .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                .abort(HttpFaultAbortArgs.builder()
                    .httpStatus(0)
                    .percentage(0)
                    .build())
                .delay(HttpFaultDelayArgs.builder()
                    .fixedDelay(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .percentage(0)
                    .build())
                .build())
            .maxStreamDuration(DurationArgs.builder()
                .nanos(0)
                .seconds("string")
                .build())
            .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                .backendService("string")
                .build())
            .retryPolicy(HttpRetryPolicyArgs.builder()
                .numRetries(0)
                .perTryTimeout(DurationArgs.builder()
                    .nanos(0)
                    .seconds("string")
                    .build())
                .retryConditions("string")
                .build())
            .timeout(DurationArgs.builder()
                .nanos(0)
                .seconds("string")
                .build())
            .urlRewrite(UrlRewriteArgs.builder()
                .hostRewrite("string")
                .pathPrefixRewrite("string")
                .pathTemplateRewrite("string")
                .build())
            .weightedBackendServices(WeightedBackendServiceArgs.builder()
                .backendService("string")
                .headerAction(HttpHeaderActionArgs.builder()
                    .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .requestHeadersToRemove("string")
                    .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .responseHeadersToRemove("string")
                    .build())
                .weight(0)
                .build())
            .build())
        .defaultService("string")
        .defaultUrlRedirect(HttpRedirectActionArgs.builder()
            .hostRedirect("string")
            .httpsRedirect(false)
            .pathRedirect("string")
            .prefixRedirect("string")
            .redirectResponseCode("FOUND")
            .stripQuery(false)
            .build())
        .description("string")
        .headerAction(HttpHeaderActionArgs.builder()
            .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                .headerName("string")
                .headerValue("string")
                .replace(false)
                .build())
            .requestHeadersToRemove("string")
            .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                .headerName("string")
                .headerValue("string")
                .replace(false)
                .build())
            .responseHeadersToRemove("string")
            .build())
        .hostRules(HostRuleArgs.builder()
            .description("string")
            .hosts("string")
            .pathMatcher("string")
            .build())
        .name("string")
        .pathMatchers(PathMatcherArgs.builder()
            .defaultRouteAction(HttpRouteActionArgs.builder()
                .corsPolicy(CorsPolicyArgs.builder()
                    .allowCredentials(false)
                    .allowHeaders("string")
                    .allowMethods("string")
                    .allowOriginRegexes("string")
                    .allowOrigins("string")
                    .disabled(false)
                    .exposeHeaders("string")
                    .maxAge(0)
                    .build())
                .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                    .abort(HttpFaultAbortArgs.builder()
                        .httpStatus(0)
                        .percentage(0)
                        .build())
                    .delay(HttpFaultDelayArgs.builder()
                        .fixedDelay(DurationArgs.builder()
                            .nanos(0)
                            .seconds("string")
                            .build())
                        .percentage(0)
                        .build())
                    .build())
                .maxStreamDuration(DurationArgs.builder()
                    .nanos(0)
                    .seconds("string")
                    .build())
                .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                    .backendService("string")
                    .build())
                .retryPolicy(HttpRetryPolicyArgs.builder()
                    .numRetries(0)
                    .perTryTimeout(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .retryConditions("string")
                    .build())
                .timeout(DurationArgs.builder()
                    .nanos(0)
                    .seconds("string")
                    .build())
                .urlRewrite(UrlRewriteArgs.builder()
                    .hostRewrite("string")
                    .pathPrefixRewrite("string")
                    .pathTemplateRewrite("string")
                    .build())
                .weightedBackendServices(WeightedBackendServiceArgs.builder()
                    .backendService("string")
                    .headerAction(HttpHeaderActionArgs.builder()
                        .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                            .headerName("string")
                            .headerValue("string")
                            .replace(false)
                            .build())
                        .requestHeadersToRemove("string")
                        .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                            .headerName("string")
                            .headerValue("string")
                            .replace(false)
                            .build())
                        .responseHeadersToRemove("string")
                        .build())
                    .weight(0)
                    .build())
                .build())
            .defaultService("string")
            .defaultUrlRedirect(HttpRedirectActionArgs.builder()
                .hostRedirect("string")
                .httpsRedirect(false)
                .pathRedirect("string")
                .prefixRedirect("string")
                .redirectResponseCode("FOUND")
                .stripQuery(false)
                .build())
            .description("string")
            .headerAction(HttpHeaderActionArgs.builder()
                .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                    .headerName("string")
                    .headerValue("string")
                    .replace(false)
                    .build())
                .requestHeadersToRemove("string")
                .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                    .headerName("string")
                    .headerValue("string")
                    .replace(false)
                    .build())
                .responseHeadersToRemove("string")
                .build())
            .name("string")
            .pathRules(PathRuleArgs.builder()
                .paths("string")
                .routeAction(HttpRouteActionArgs.builder()
                    .corsPolicy(CorsPolicyArgs.builder()
                        .allowCredentials(false)
                        .allowHeaders("string")
                        .allowMethods("string")
                        .allowOriginRegexes("string")
                        .allowOrigins("string")
                        .disabled(false)
                        .exposeHeaders("string")
                        .maxAge(0)
                        .build())
                    .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                        .abort(HttpFaultAbortArgs.builder()
                            .httpStatus(0)
                            .percentage(0)
                            .build())
                        .delay(HttpFaultDelayArgs.builder()
                            .fixedDelay(DurationArgs.builder()
                                .nanos(0)
                                .seconds("string")
                                .build())
                            .percentage(0)
                            .build())
                        .build())
                    .maxStreamDuration(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                        .backendService("string")
                        .build())
                    .retryPolicy(HttpRetryPolicyArgs.builder()
                        .numRetries(0)
                        .perTryTimeout(DurationArgs.builder()
                            .nanos(0)
                            .seconds("string")
                            .build())
                        .retryConditions("string")
                        .build())
                    .timeout(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .urlRewrite(UrlRewriteArgs.builder()
                        .hostRewrite("string")
                        .pathPrefixRewrite("string")
                        .pathTemplateRewrite("string")
                        .build())
                    .weightedBackendServices(WeightedBackendServiceArgs.builder()
                        .backendService("string")
                        .headerAction(HttpHeaderActionArgs.builder()
                            .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .requestHeadersToRemove("string")
                            .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .responseHeadersToRemove("string")
                            .build())
                        .weight(0)
                        .build())
                    .build())
                .service("string")
                .urlRedirect(HttpRedirectActionArgs.builder()
                    .hostRedirect("string")
                    .httpsRedirect(false)
                    .pathRedirect("string")
                    .prefixRedirect("string")
                    .redirectResponseCode("FOUND")
                    .stripQuery(false)
                    .build())
                .build())
            .routeRules(HttpRouteRuleArgs.builder()
                .description("string")
                .headerAction(HttpHeaderActionArgs.builder()
                    .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .requestHeadersToRemove("string")
                    .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                        .headerName("string")
                        .headerValue("string")
                        .replace(false)
                        .build())
                    .responseHeadersToRemove("string")
                    .build())
                .matchRules(HttpRouteRuleMatchArgs.builder()
                    .fullPathMatch("string")
                    .headerMatches(HttpHeaderMatchArgs.builder()
                        .exactMatch("string")
                        .headerName("string")
                        .invertMatch(false)
                        .prefixMatch("string")
                        .presentMatch(false)
                        .rangeMatch(Int64RangeMatchArgs.builder()
                            .rangeEnd("string")
                            .rangeStart("string")
                            .build())
                        .regexMatch("string")
                        .suffixMatch("string")
                        .build())
                    .ignoreCase(false)
                    .metadataFilters(MetadataFilterArgs.builder()
                        .filterLabels(MetadataFilterLabelMatchArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .filterMatchCriteria("MATCH_ALL")
                        .build())
                    .pathTemplateMatch("string")
                    .prefixMatch("string")
                    .queryParameterMatches(HttpQueryParameterMatchArgs.builder()
                        .exactMatch("string")
                        .name("string")
                        .presentMatch(false)
                        .regexMatch("string")
                        .build())
                    .regexMatch("string")
                    .build())
                .priority(0)
                .routeAction(HttpRouteActionArgs.builder()
                    .corsPolicy(CorsPolicyArgs.builder()
                        .allowCredentials(false)
                        .allowHeaders("string")
                        .allowMethods("string")
                        .allowOriginRegexes("string")
                        .allowOrigins("string")
                        .disabled(false)
                        .exposeHeaders("string")
                        .maxAge(0)
                        .build())
                    .faultInjectionPolicy(HttpFaultInjectionArgs.builder()
                        .abort(HttpFaultAbortArgs.builder()
                            .httpStatus(0)
                            .percentage(0)
                            .build())
                        .delay(HttpFaultDelayArgs.builder()
                            .fixedDelay(DurationArgs.builder()
                                .nanos(0)
                                .seconds("string")
                                .build())
                            .percentage(0)
                            .build())
                        .build())
                    .maxStreamDuration(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .requestMirrorPolicy(RequestMirrorPolicyArgs.builder()
                        .backendService("string")
                        .build())
                    .retryPolicy(HttpRetryPolicyArgs.builder()
                        .numRetries(0)
                        .perTryTimeout(DurationArgs.builder()
                            .nanos(0)
                            .seconds("string")
                            .build())
                        .retryConditions("string")
                        .build())
                    .timeout(DurationArgs.builder()
                        .nanos(0)
                        .seconds("string")
                        .build())
                    .urlRewrite(UrlRewriteArgs.builder()
                        .hostRewrite("string")
                        .pathPrefixRewrite("string")
                        .pathTemplateRewrite("string")
                        .build())
                    .weightedBackendServices(WeightedBackendServiceArgs.builder()
                        .backendService("string")
                        .headerAction(HttpHeaderActionArgs.builder()
                            .requestHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .requestHeadersToRemove("string")
                            .responseHeadersToAdd(HttpHeaderOptionArgs.builder()
                                .headerName("string")
                                .headerValue("string")
                                .replace(false)
                                .build())
                            .responseHeadersToRemove("string")
                            .build())
                        .weight(0)
                        .build())
                    .build())
                .service("string")
                .urlRedirect(HttpRedirectActionArgs.builder()
                    .hostRedirect("string")
                    .httpsRedirect(false)
                    .pathRedirect("string")
                    .prefixRedirect("string")
                    .redirectResponseCode("FOUND")
                    .stripQuery(false)
                    .build())
                .build())
            .build())
        .project("string")
        .requestId("string")
        .tests(UrlMapTestArgs.builder()
            .description("string")
            .expectedOutputUrl("string")
            .expectedRedirectResponseCode(0)
            .headers(UrlMapTestHeaderArgs.builder()
                .name("string")
                .value("string")
                .build())
            .host("string")
            .path("string")
            .service("string")
            .build())
        .build());
    
    exampleregion_url_map_resource_resource_from_computev1 = google_native.compute.v1.RegionUrlMap("exampleregionUrlMapResourceResourceFromComputev1",
        region="string",
        default_route_action=google_native.compute.v1.HttpRouteActionArgs(
            cors_policy=google_native.compute.v1.CorsPolicyArgs(
                allow_credentials=False,
                allow_headers=["string"],
                allow_methods=["string"],
                allow_origin_regexes=["string"],
                allow_origins=["string"],
                disabled=False,
                expose_headers=["string"],
                max_age=0,
            ),
            fault_injection_policy=google_native.compute.v1.HttpFaultInjectionArgs(
                abort=google_native.compute.v1.HttpFaultAbortArgs(
                    http_status=0,
                    percentage=0,
                ),
                delay=google_native.compute.v1.HttpFaultDelayArgs(
                    fixed_delay=google_native.compute.v1.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    percentage=0,
                ),
            ),
            max_stream_duration=google_native.compute.v1.DurationArgs(
                nanos=0,
                seconds="string",
            ),
            request_mirror_policy=google_native.compute.v1.RequestMirrorPolicyArgs(
                backend_service="string",
            ),
            retry_policy=google_native.compute.v1.HttpRetryPolicyArgs(
                num_retries=0,
                per_try_timeout=google_native.compute.v1.DurationArgs(
                    nanos=0,
                    seconds="string",
                ),
                retry_conditions=["string"],
            ),
            timeout=google_native.compute.v1.DurationArgs(
                nanos=0,
                seconds="string",
            ),
            url_rewrite=google_native.compute.v1.UrlRewriteArgs(
                host_rewrite="string",
                path_prefix_rewrite="string",
                path_template_rewrite="string",
            ),
            weighted_backend_services=[google_native.compute.v1.WeightedBackendServiceArgs(
                backend_service="string",
                header_action=google_native.compute.v1.HttpHeaderActionArgs(
                    request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    request_headers_to_remove=["string"],
                    response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    response_headers_to_remove=["string"],
                ),
                weight=0,
            )],
        ),
        default_service="string",
        default_url_redirect=google_native.compute.v1.HttpRedirectActionArgs(
            host_redirect="string",
            https_redirect=False,
            path_redirect="string",
            prefix_redirect="string",
            redirect_response_code=google_native.compute.v1.HttpRedirectActionRedirectResponseCode.FOUND,
            strip_query=False,
        ),
        description="string",
        header_action=google_native.compute.v1.HttpHeaderActionArgs(
            request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                header_name="string",
                header_value="string",
                replace=False,
            )],
            request_headers_to_remove=["string"],
            response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                header_name="string",
                header_value="string",
                replace=False,
            )],
            response_headers_to_remove=["string"],
        ),
        host_rules=[google_native.compute.v1.HostRuleArgs(
            description="string",
            hosts=["string"],
            path_matcher="string",
        )],
        name="string",
        path_matchers=[google_native.compute.v1.PathMatcherArgs(
            default_route_action=google_native.compute.v1.HttpRouteActionArgs(
                cors_policy=google_native.compute.v1.CorsPolicyArgs(
                    allow_credentials=False,
                    allow_headers=["string"],
                    allow_methods=["string"],
                    allow_origin_regexes=["string"],
                    allow_origins=["string"],
                    disabled=False,
                    expose_headers=["string"],
                    max_age=0,
                ),
                fault_injection_policy=google_native.compute.v1.HttpFaultInjectionArgs(
                    abort=google_native.compute.v1.HttpFaultAbortArgs(
                        http_status=0,
                        percentage=0,
                    ),
                    delay=google_native.compute.v1.HttpFaultDelayArgs(
                        fixed_delay=google_native.compute.v1.DurationArgs(
                            nanos=0,
                            seconds="string",
                        ),
                        percentage=0,
                    ),
                ),
                max_stream_duration=google_native.compute.v1.DurationArgs(
                    nanos=0,
                    seconds="string",
                ),
                request_mirror_policy=google_native.compute.v1.RequestMirrorPolicyArgs(
                    backend_service="string",
                ),
                retry_policy=google_native.compute.v1.HttpRetryPolicyArgs(
                    num_retries=0,
                    per_try_timeout=google_native.compute.v1.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    retry_conditions=["string"],
                ),
                timeout=google_native.compute.v1.DurationArgs(
                    nanos=0,
                    seconds="string",
                ),
                url_rewrite=google_native.compute.v1.UrlRewriteArgs(
                    host_rewrite="string",
                    path_prefix_rewrite="string",
                    path_template_rewrite="string",
                ),
                weighted_backend_services=[google_native.compute.v1.WeightedBackendServiceArgs(
                    backend_service="string",
                    header_action=google_native.compute.v1.HttpHeaderActionArgs(
                        request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                            header_name="string",
                            header_value="string",
                            replace=False,
                        )],
                        request_headers_to_remove=["string"],
                        response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                            header_name="string",
                            header_value="string",
                            replace=False,
                        )],
                        response_headers_to_remove=["string"],
                    ),
                    weight=0,
                )],
            ),
            default_service="string",
            default_url_redirect=google_native.compute.v1.HttpRedirectActionArgs(
                host_redirect="string",
                https_redirect=False,
                path_redirect="string",
                prefix_redirect="string",
                redirect_response_code=google_native.compute.v1.HttpRedirectActionRedirectResponseCode.FOUND,
                strip_query=False,
            ),
            description="string",
            header_action=google_native.compute.v1.HttpHeaderActionArgs(
                request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                    header_name="string",
                    header_value="string",
                    replace=False,
                )],
                request_headers_to_remove=["string"],
                response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                    header_name="string",
                    header_value="string",
                    replace=False,
                )],
                response_headers_to_remove=["string"],
            ),
            name="string",
            path_rules=[google_native.compute.v1.PathRuleArgs(
                paths=["string"],
                route_action=google_native.compute.v1.HttpRouteActionArgs(
                    cors_policy=google_native.compute.v1.CorsPolicyArgs(
                        allow_credentials=False,
                        allow_headers=["string"],
                        allow_methods=["string"],
                        allow_origin_regexes=["string"],
                        allow_origins=["string"],
                        disabled=False,
                        expose_headers=["string"],
                        max_age=0,
                    ),
                    fault_injection_policy=google_native.compute.v1.HttpFaultInjectionArgs(
                        abort=google_native.compute.v1.HttpFaultAbortArgs(
                            http_status=0,
                            percentage=0,
                        ),
                        delay=google_native.compute.v1.HttpFaultDelayArgs(
                            fixed_delay=google_native.compute.v1.DurationArgs(
                                nanos=0,
                                seconds="string",
                            ),
                            percentage=0,
                        ),
                    ),
                    max_stream_duration=google_native.compute.v1.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    request_mirror_policy=google_native.compute.v1.RequestMirrorPolicyArgs(
                        backend_service="string",
                    ),
                    retry_policy=google_native.compute.v1.HttpRetryPolicyArgs(
                        num_retries=0,
                        per_try_timeout=google_native.compute.v1.DurationArgs(
                            nanos=0,
                            seconds="string",
                        ),
                        retry_conditions=["string"],
                    ),
                    timeout=google_native.compute.v1.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    url_rewrite=google_native.compute.v1.UrlRewriteArgs(
                        host_rewrite="string",
                        path_prefix_rewrite="string",
                        path_template_rewrite="string",
                    ),
                    weighted_backend_services=[google_native.compute.v1.WeightedBackendServiceArgs(
                        backend_service="string",
                        header_action=google_native.compute.v1.HttpHeaderActionArgs(
                            request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            request_headers_to_remove=["string"],
                            response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            response_headers_to_remove=["string"],
                        ),
                        weight=0,
                    )],
                ),
                service="string",
                url_redirect=google_native.compute.v1.HttpRedirectActionArgs(
                    host_redirect="string",
                    https_redirect=False,
                    path_redirect="string",
                    prefix_redirect="string",
                    redirect_response_code=google_native.compute.v1.HttpRedirectActionRedirectResponseCode.FOUND,
                    strip_query=False,
                ),
            )],
            route_rules=[google_native.compute.v1.HttpRouteRuleArgs(
                description="string",
                header_action=google_native.compute.v1.HttpHeaderActionArgs(
                    request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    request_headers_to_remove=["string"],
                    response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                        header_name="string",
                        header_value="string",
                        replace=False,
                    )],
                    response_headers_to_remove=["string"],
                ),
                match_rules=[google_native.compute.v1.HttpRouteRuleMatchArgs(
                    full_path_match="string",
                    header_matches=[google_native.compute.v1.HttpHeaderMatchArgs(
                        exact_match="string",
                        header_name="string",
                        invert_match=False,
                        prefix_match="string",
                        present_match=False,
                        range_match=google_native.compute.v1.Int64RangeMatchArgs(
                            range_end="string",
                            range_start="string",
                        ),
                        regex_match="string",
                        suffix_match="string",
                    )],
                    ignore_case=False,
                    metadata_filters=[google_native.compute.v1.MetadataFilterArgs(
                        filter_labels=[google_native.compute.v1.MetadataFilterLabelMatchArgs(
                            name="string",
                            value="string",
                        )],
                        filter_match_criteria=google_native.compute.v1.MetadataFilterFilterMatchCriteria.MATCH_ALL,
                    )],
                    path_template_match="string",
                    prefix_match="string",
                    query_parameter_matches=[google_native.compute.v1.HttpQueryParameterMatchArgs(
                        exact_match="string",
                        name="string",
                        present_match=False,
                        regex_match="string",
                    )],
                    regex_match="string",
                )],
                priority=0,
                route_action=google_native.compute.v1.HttpRouteActionArgs(
                    cors_policy=google_native.compute.v1.CorsPolicyArgs(
                        allow_credentials=False,
                        allow_headers=["string"],
                        allow_methods=["string"],
                        allow_origin_regexes=["string"],
                        allow_origins=["string"],
                        disabled=False,
                        expose_headers=["string"],
                        max_age=0,
                    ),
                    fault_injection_policy=google_native.compute.v1.HttpFaultInjectionArgs(
                        abort=google_native.compute.v1.HttpFaultAbortArgs(
                            http_status=0,
                            percentage=0,
                        ),
                        delay=google_native.compute.v1.HttpFaultDelayArgs(
                            fixed_delay=google_native.compute.v1.DurationArgs(
                                nanos=0,
                                seconds="string",
                            ),
                            percentage=0,
                        ),
                    ),
                    max_stream_duration=google_native.compute.v1.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    request_mirror_policy=google_native.compute.v1.RequestMirrorPolicyArgs(
                        backend_service="string",
                    ),
                    retry_policy=google_native.compute.v1.HttpRetryPolicyArgs(
                        num_retries=0,
                        per_try_timeout=google_native.compute.v1.DurationArgs(
                            nanos=0,
                            seconds="string",
                        ),
                        retry_conditions=["string"],
                    ),
                    timeout=google_native.compute.v1.DurationArgs(
                        nanos=0,
                        seconds="string",
                    ),
                    url_rewrite=google_native.compute.v1.UrlRewriteArgs(
                        host_rewrite="string",
                        path_prefix_rewrite="string",
                        path_template_rewrite="string",
                    ),
                    weighted_backend_services=[google_native.compute.v1.WeightedBackendServiceArgs(
                        backend_service="string",
                        header_action=google_native.compute.v1.HttpHeaderActionArgs(
                            request_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            request_headers_to_remove=["string"],
                            response_headers_to_add=[google_native.compute.v1.HttpHeaderOptionArgs(
                                header_name="string",
                                header_value="string",
                                replace=False,
                            )],
                            response_headers_to_remove=["string"],
                        ),
                        weight=0,
                    )],
                ),
                service="string",
                url_redirect=google_native.compute.v1.HttpRedirectActionArgs(
                    host_redirect="string",
                    https_redirect=False,
                    path_redirect="string",
                    prefix_redirect="string",
                    redirect_response_code=google_native.compute.v1.HttpRedirectActionRedirectResponseCode.FOUND,
                    strip_query=False,
                ),
            )],
        )],
        project="string",
        request_id="string",
        tests=[google_native.compute.v1.UrlMapTestArgs(
            description="string",
            expected_output_url="string",
            expected_redirect_response_code=0,
            headers=[google_native.compute.v1.UrlMapTestHeaderArgs(
                name="string",
                value="string",
            )],
            host="string",
            path="string",
            service="string",
        )])
    
    const exampleregionUrlMapResourceResourceFromComputev1 = new google_native.compute.v1.RegionUrlMap("exampleregionUrlMapResourceResourceFromComputev1", {
        region: "string",
        defaultRouteAction: {
            corsPolicy: {
                allowCredentials: false,
                allowHeaders: ["string"],
                allowMethods: ["string"],
                allowOriginRegexes: ["string"],
                allowOrigins: ["string"],
                disabled: false,
                exposeHeaders: ["string"],
                maxAge: 0,
            },
            faultInjectionPolicy: {
                abort: {
                    httpStatus: 0,
                    percentage: 0,
                },
                delay: {
                    fixedDelay: {
                        nanos: 0,
                        seconds: "string",
                    },
                    percentage: 0,
                },
            },
            maxStreamDuration: {
                nanos: 0,
                seconds: "string",
            },
            requestMirrorPolicy: {
                backendService: "string",
            },
            retryPolicy: {
                numRetries: 0,
                perTryTimeout: {
                    nanos: 0,
                    seconds: "string",
                },
                retryConditions: ["string"],
            },
            timeout: {
                nanos: 0,
                seconds: "string",
            },
            urlRewrite: {
                hostRewrite: "string",
                pathPrefixRewrite: "string",
                pathTemplateRewrite: "string",
            },
            weightedBackendServices: [{
                backendService: "string",
                headerAction: {
                    requestHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    requestHeadersToRemove: ["string"],
                    responseHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    responseHeadersToRemove: ["string"],
                },
                weight: 0,
            }],
        },
        defaultService: "string",
        defaultUrlRedirect: {
            hostRedirect: "string",
            httpsRedirect: false,
            pathRedirect: "string",
            prefixRedirect: "string",
            redirectResponseCode: google_native.compute.v1.HttpRedirectActionRedirectResponseCode.Found,
            stripQuery: false,
        },
        description: "string",
        headerAction: {
            requestHeadersToAdd: [{
                headerName: "string",
                headerValue: "string",
                replace: false,
            }],
            requestHeadersToRemove: ["string"],
            responseHeadersToAdd: [{
                headerName: "string",
                headerValue: "string",
                replace: false,
            }],
            responseHeadersToRemove: ["string"],
        },
        hostRules: [{
            description: "string",
            hosts: ["string"],
            pathMatcher: "string",
        }],
        name: "string",
        pathMatchers: [{
            defaultRouteAction: {
                corsPolicy: {
                    allowCredentials: false,
                    allowHeaders: ["string"],
                    allowMethods: ["string"],
                    allowOriginRegexes: ["string"],
                    allowOrigins: ["string"],
                    disabled: false,
                    exposeHeaders: ["string"],
                    maxAge: 0,
                },
                faultInjectionPolicy: {
                    abort: {
                        httpStatus: 0,
                        percentage: 0,
                    },
                    delay: {
                        fixedDelay: {
                            nanos: 0,
                            seconds: "string",
                        },
                        percentage: 0,
                    },
                },
                maxStreamDuration: {
                    nanos: 0,
                    seconds: "string",
                },
                requestMirrorPolicy: {
                    backendService: "string",
                },
                retryPolicy: {
                    numRetries: 0,
                    perTryTimeout: {
                        nanos: 0,
                        seconds: "string",
                    },
                    retryConditions: ["string"],
                },
                timeout: {
                    nanos: 0,
                    seconds: "string",
                },
                urlRewrite: {
                    hostRewrite: "string",
                    pathPrefixRewrite: "string",
                    pathTemplateRewrite: "string",
                },
                weightedBackendServices: [{
                    backendService: "string",
                    headerAction: {
                        requestHeadersToAdd: [{
                            headerName: "string",
                            headerValue: "string",
                            replace: false,
                        }],
                        requestHeadersToRemove: ["string"],
                        responseHeadersToAdd: [{
                            headerName: "string",
                            headerValue: "string",
                            replace: false,
                        }],
                        responseHeadersToRemove: ["string"],
                    },
                    weight: 0,
                }],
            },
            defaultService: "string",
            defaultUrlRedirect: {
                hostRedirect: "string",
                httpsRedirect: false,
                pathRedirect: "string",
                prefixRedirect: "string",
                redirectResponseCode: google_native.compute.v1.HttpRedirectActionRedirectResponseCode.Found,
                stripQuery: false,
            },
            description: "string",
            headerAction: {
                requestHeadersToAdd: [{
                    headerName: "string",
                    headerValue: "string",
                    replace: false,
                }],
                requestHeadersToRemove: ["string"],
                responseHeadersToAdd: [{
                    headerName: "string",
                    headerValue: "string",
                    replace: false,
                }],
                responseHeadersToRemove: ["string"],
            },
            name: "string",
            pathRules: [{
                paths: ["string"],
                routeAction: {
                    corsPolicy: {
                        allowCredentials: false,
                        allowHeaders: ["string"],
                        allowMethods: ["string"],
                        allowOriginRegexes: ["string"],
                        allowOrigins: ["string"],
                        disabled: false,
                        exposeHeaders: ["string"],
                        maxAge: 0,
                    },
                    faultInjectionPolicy: {
                        abort: {
                            httpStatus: 0,
                            percentage: 0,
                        },
                        delay: {
                            fixedDelay: {
                                nanos: 0,
                                seconds: "string",
                            },
                            percentage: 0,
                        },
                    },
                    maxStreamDuration: {
                        nanos: 0,
                        seconds: "string",
                    },
                    requestMirrorPolicy: {
                        backendService: "string",
                    },
                    retryPolicy: {
                        numRetries: 0,
                        perTryTimeout: {
                            nanos: 0,
                            seconds: "string",
                        },
                        retryConditions: ["string"],
                    },
                    timeout: {
                        nanos: 0,
                        seconds: "string",
                    },
                    urlRewrite: {
                        hostRewrite: "string",
                        pathPrefixRewrite: "string",
                        pathTemplateRewrite: "string",
                    },
                    weightedBackendServices: [{
                        backendService: "string",
                        headerAction: {
                            requestHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            requestHeadersToRemove: ["string"],
                            responseHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            responseHeadersToRemove: ["string"],
                        },
                        weight: 0,
                    }],
                },
                service: "string",
                urlRedirect: {
                    hostRedirect: "string",
                    httpsRedirect: false,
                    pathRedirect: "string",
                    prefixRedirect: "string",
                    redirectResponseCode: google_native.compute.v1.HttpRedirectActionRedirectResponseCode.Found,
                    stripQuery: false,
                },
            }],
            routeRules: [{
                description: "string",
                headerAction: {
                    requestHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    requestHeadersToRemove: ["string"],
                    responseHeadersToAdd: [{
                        headerName: "string",
                        headerValue: "string",
                        replace: false,
                    }],
                    responseHeadersToRemove: ["string"],
                },
                matchRules: [{
                    fullPathMatch: "string",
                    headerMatches: [{
                        exactMatch: "string",
                        headerName: "string",
                        invertMatch: false,
                        prefixMatch: "string",
                        presentMatch: false,
                        rangeMatch: {
                            rangeEnd: "string",
                            rangeStart: "string",
                        },
                        regexMatch: "string",
                        suffixMatch: "string",
                    }],
                    ignoreCase: false,
                    metadataFilters: [{
                        filterLabels: [{
                            name: "string",
                            value: "string",
                        }],
                        filterMatchCriteria: google_native.compute.v1.MetadataFilterFilterMatchCriteria.MatchAll,
                    }],
                    pathTemplateMatch: "string",
                    prefixMatch: "string",
                    queryParameterMatches: [{
                        exactMatch: "string",
                        name: "string",
                        presentMatch: false,
                        regexMatch: "string",
                    }],
                    regexMatch: "string",
                }],
                priority: 0,
                routeAction: {
                    corsPolicy: {
                        allowCredentials: false,
                        allowHeaders: ["string"],
                        allowMethods: ["string"],
                        allowOriginRegexes: ["string"],
                        allowOrigins: ["string"],
                        disabled: false,
                        exposeHeaders: ["string"],
                        maxAge: 0,
                    },
                    faultInjectionPolicy: {
                        abort: {
                            httpStatus: 0,
                            percentage: 0,
                        },
                        delay: {
                            fixedDelay: {
                                nanos: 0,
                                seconds: "string",
                            },
                            percentage: 0,
                        },
                    },
                    maxStreamDuration: {
                        nanos: 0,
                        seconds: "string",
                    },
                    requestMirrorPolicy: {
                        backendService: "string",
                    },
                    retryPolicy: {
                        numRetries: 0,
                        perTryTimeout: {
                            nanos: 0,
                            seconds: "string",
                        },
                        retryConditions: ["string"],
                    },
                    timeout: {
                        nanos: 0,
                        seconds: "string",
                    },
                    urlRewrite: {
                        hostRewrite: "string",
                        pathPrefixRewrite: "string",
                        pathTemplateRewrite: "string",
                    },
                    weightedBackendServices: [{
                        backendService: "string",
                        headerAction: {
                            requestHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            requestHeadersToRemove: ["string"],
                            responseHeadersToAdd: [{
                                headerName: "string",
                                headerValue: "string",
                                replace: false,
                            }],
                            responseHeadersToRemove: ["string"],
                        },
                        weight: 0,
                    }],
                },
                service: "string",
                urlRedirect: {
                    hostRedirect: "string",
                    httpsRedirect: false,
                    pathRedirect: "string",
                    prefixRedirect: "string",
                    redirectResponseCode: google_native.compute.v1.HttpRedirectActionRedirectResponseCode.Found,
                    stripQuery: false,
                },
            }],
        }],
        project: "string",
        requestId: "string",
        tests: [{
            description: "string",
            expectedOutputUrl: "string",
            expectedRedirectResponseCode: 0,
            headers: [{
                name: "string",
                value: "string",
            }],
            host: "string",
            path: "string",
            service: "string",
        }],
    });
    
    type: google-native:compute/v1:RegionUrlMap
    properties:
        defaultRouteAction:
            corsPolicy:
                allowCredentials: false
                allowHeaders:
                    - string
                allowMethods:
                    - string
                allowOriginRegexes:
                    - string
                allowOrigins:
                    - string
                disabled: false
                exposeHeaders:
                    - string
                maxAge: 0
            faultInjectionPolicy:
                abort:
                    httpStatus: 0
                    percentage: 0
                delay:
                    fixedDelay:
                        nanos: 0
                        seconds: string
                    percentage: 0
            maxStreamDuration:
                nanos: 0
                seconds: string
            requestMirrorPolicy:
                backendService: string
            retryPolicy:
                numRetries: 0
                perTryTimeout:
                    nanos: 0
                    seconds: string
                retryConditions:
                    - string
            timeout:
                nanos: 0
                seconds: string
            urlRewrite:
                hostRewrite: string
                pathPrefixRewrite: string
                pathTemplateRewrite: string
            weightedBackendServices:
                - backendService: string
                  headerAction:
                    requestHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    requestHeadersToRemove:
                        - string
                    responseHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    responseHeadersToRemove:
                        - string
                  weight: 0
        defaultService: string
        defaultUrlRedirect:
            hostRedirect: string
            httpsRedirect: false
            pathRedirect: string
            prefixRedirect: string
            redirectResponseCode: FOUND
            stripQuery: false
        description: string
        headerAction:
            requestHeadersToAdd:
                - headerName: string
                  headerValue: string
                  replace: false
            requestHeadersToRemove:
                - string
            responseHeadersToAdd:
                - headerName: string
                  headerValue: string
                  replace: false
            responseHeadersToRemove:
                - string
        hostRules:
            - description: string
              hosts:
                - string
              pathMatcher: string
        name: string
        pathMatchers:
            - defaultRouteAction:
                corsPolicy:
                    allowCredentials: false
                    allowHeaders:
                        - string
                    allowMethods:
                        - string
                    allowOriginRegexes:
                        - string
                    allowOrigins:
                        - string
                    disabled: false
                    exposeHeaders:
                        - string
                    maxAge: 0
                faultInjectionPolicy:
                    abort:
                        httpStatus: 0
                        percentage: 0
                    delay:
                        fixedDelay:
                            nanos: 0
                            seconds: string
                        percentage: 0
                maxStreamDuration:
                    nanos: 0
                    seconds: string
                requestMirrorPolicy:
                    backendService: string
                retryPolicy:
                    numRetries: 0
                    perTryTimeout:
                        nanos: 0
                        seconds: string
                    retryConditions:
                        - string
                timeout:
                    nanos: 0
                    seconds: string
                urlRewrite:
                    hostRewrite: string
                    pathPrefixRewrite: string
                    pathTemplateRewrite: string
                weightedBackendServices:
                    - backendService: string
                      headerAction:
                        requestHeadersToAdd:
                            - headerName: string
                              headerValue: string
                              replace: false
                        requestHeadersToRemove:
                            - string
                        responseHeadersToAdd:
                            - headerName: string
                              headerValue: string
                              replace: false
                        responseHeadersToRemove:
                            - string
                      weight: 0
              defaultService: string
              defaultUrlRedirect:
                hostRedirect: string
                httpsRedirect: false
                pathRedirect: string
                prefixRedirect: string
                redirectResponseCode: FOUND
                stripQuery: false
              description: string
              headerAction:
                requestHeadersToAdd:
                    - headerName: string
                      headerValue: string
                      replace: false
                requestHeadersToRemove:
                    - string
                responseHeadersToAdd:
                    - headerName: string
                      headerValue: string
                      replace: false
                responseHeadersToRemove:
                    - string
              name: string
              pathRules:
                - paths:
                    - string
                  routeAction:
                    corsPolicy:
                        allowCredentials: false
                        allowHeaders:
                            - string
                        allowMethods:
                            - string
                        allowOriginRegexes:
                            - string
                        allowOrigins:
                            - string
                        disabled: false
                        exposeHeaders:
                            - string
                        maxAge: 0
                    faultInjectionPolicy:
                        abort:
                            httpStatus: 0
                            percentage: 0
                        delay:
                            fixedDelay:
                                nanos: 0
                                seconds: string
                            percentage: 0
                    maxStreamDuration:
                        nanos: 0
                        seconds: string
                    requestMirrorPolicy:
                        backendService: string
                    retryPolicy:
                        numRetries: 0
                        perTryTimeout:
                            nanos: 0
                            seconds: string
                        retryConditions:
                            - string
                    timeout:
                        nanos: 0
                        seconds: string
                    urlRewrite:
                        hostRewrite: string
                        pathPrefixRewrite: string
                        pathTemplateRewrite: string
                    weightedBackendServices:
                        - backendService: string
                          headerAction:
                            requestHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            requestHeadersToRemove:
                                - string
                            responseHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            responseHeadersToRemove:
                                - string
                          weight: 0
                  service: string
                  urlRedirect:
                    hostRedirect: string
                    httpsRedirect: false
                    pathRedirect: string
                    prefixRedirect: string
                    redirectResponseCode: FOUND
                    stripQuery: false
              routeRules:
                - description: string
                  headerAction:
                    requestHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    requestHeadersToRemove:
                        - string
                    responseHeadersToAdd:
                        - headerName: string
                          headerValue: string
                          replace: false
                    responseHeadersToRemove:
                        - string
                  matchRules:
                    - fullPathMatch: string
                      headerMatches:
                        - exactMatch: string
                          headerName: string
                          invertMatch: false
                          prefixMatch: string
                          presentMatch: false
                          rangeMatch:
                            rangeEnd: string
                            rangeStart: string
                          regexMatch: string
                          suffixMatch: string
                      ignoreCase: false
                      metadataFilters:
                        - filterLabels:
                            - name: string
                              value: string
                          filterMatchCriteria: MATCH_ALL
                      pathTemplateMatch: string
                      prefixMatch: string
                      queryParameterMatches:
                        - exactMatch: string
                          name: string
                          presentMatch: false
                          regexMatch: string
                      regexMatch: string
                  priority: 0
                  routeAction:
                    corsPolicy:
                        allowCredentials: false
                        allowHeaders:
                            - string
                        allowMethods:
                            - string
                        allowOriginRegexes:
                            - string
                        allowOrigins:
                            - string
                        disabled: false
                        exposeHeaders:
                            - string
                        maxAge: 0
                    faultInjectionPolicy:
                        abort:
                            httpStatus: 0
                            percentage: 0
                        delay:
                            fixedDelay:
                                nanos: 0
                                seconds: string
                            percentage: 0
                    maxStreamDuration:
                        nanos: 0
                        seconds: string
                    requestMirrorPolicy:
                        backendService: string
                    retryPolicy:
                        numRetries: 0
                        perTryTimeout:
                            nanos: 0
                            seconds: string
                        retryConditions:
                            - string
                    timeout:
                        nanos: 0
                        seconds: string
                    urlRewrite:
                        hostRewrite: string
                        pathPrefixRewrite: string
                        pathTemplateRewrite: string
                    weightedBackendServices:
                        - backendService: string
                          headerAction:
                            requestHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            requestHeadersToRemove:
                                - string
                            responseHeadersToAdd:
                                - headerName: string
                                  headerValue: string
                                  replace: false
                            responseHeadersToRemove:
                                - string
                          weight: 0
                  service: string
                  urlRedirect:
                    hostRedirect: string
                    httpsRedirect: false
                    pathRedirect: string
                    prefixRedirect: string
                    redirectResponseCode: FOUND
                    stripQuery: false
        project: string
        region: string
        requestId: string
        tests:
            - description: string
              expectedOutputUrl: string
              expectedRedirectResponseCode: 0
              headers:
                - name: string
                  value: string
              host: string
              path: string
              service: string
    

    RegionUrlMap Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The RegionUrlMap resource accepts the following input properties:

    Region string
    DefaultRouteAction Pulumi.GoogleNative.Compute.V1.Inputs.HttpRouteAction
    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.
    DefaultService string
    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. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    DefaultUrlRedirect Pulumi.GoogleNative.Compute.V1.Inputs.HttpRedirectAction
    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.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    HeaderAction Pulumi.GoogleNative.Compute.V1.Inputs.HttpHeaderAction
    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.
    HostRules List<Pulumi.GoogleNative.Compute.V1.Inputs.HostRule>
    The list of host rules to use against the URL.
    Name string
    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.
    PathMatchers List<Pulumi.GoogleNative.Compute.V1.Inputs.PathMatcher>
    The list of named PathMatchers to use against the URL.
    Project string
    RequestId string
    begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.
    Tests List<Pulumi.GoogleNative.Compute.V1.Inputs.UrlMapTest>
    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.
    Region string
    DefaultRouteAction HttpRouteActionArgs
    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.
    DefaultService string
    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. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    DefaultUrlRedirect HttpRedirectActionArgs
    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.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    HeaderAction HttpHeaderActionArgs
    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.
    HostRules []HostRuleArgs
    The list of host rules to use against the URL.
    Name string
    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.
    PathMatchers []PathMatcherArgs
    The list of named PathMatchers to use against the URL.
    Project string
    RequestId string
    begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.
    Tests []UrlMapTestArgs
    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.
    region String
    defaultRouteAction HttpRouteAction
    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.
    defaultService String
    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. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultUrlRedirect HttpRedirectAction
    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.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    headerAction HttpHeaderAction
    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.
    hostRules List<HostRule>
    The list of host rules to use against the URL.
    name String
    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.
    pathMatchers List<PathMatcher>
    The list of named PathMatchers to use against the URL.
    project String
    requestId String
    begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.
    tests List<UrlMapTest>
    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.
    region string
    defaultRouteAction HttpRouteAction
    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.
    defaultService string
    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. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultUrlRedirect HttpRedirectAction
    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.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    headerAction HttpHeaderAction
    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.
    hostRules HostRule[]
    The list of host rules to use against the URL.
    name string
    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.
    pathMatchers PathMatcher[]
    The list of named PathMatchers to use against the URL.
    project string
    requestId string
    begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.
    tests UrlMapTest[]
    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.
    region str
    default_route_action HttpRouteActionArgs
    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.
    default_service str
    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. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    default_url_redirect HttpRedirectActionArgs
    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.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    header_action HttpHeaderActionArgs
    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.
    host_rules Sequence[HostRuleArgs]
    The list of host rules to use against the URL.
    name str
    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.
    path_matchers Sequence[PathMatcherArgs]
    The list of named PathMatchers to use against the URL.
    project str
    request_id str
    begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.
    tests Sequence[UrlMapTestArgs]
    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.
    region String
    defaultRouteAction Property Map
    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.
    defaultService String
    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. Only one of defaultService, defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    defaultUrlRedirect Property Map
    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.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    headerAction Property Map
    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.
    hostRules List<Property Map>
    The list of host rules to use against the URL.
    name String
    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.
    pathMatchers List<Property Map>
    The list of named PathMatchers to use against the URL.
    project String
    requestId String
    begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.
    tests List<Property Map>
    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.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the RegionUrlMap resource produces the following output properties:

    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    Fingerprint string
    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.
    Id string
    The provider-assigned unique ID for this managed resource.
    Kind string
    Type of the resource. Always compute#urlMaps for url maps.
    SelfLink string
    Server-defined URL for the resource.
    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    Fingerprint string
    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.
    Id string
    The provider-assigned unique ID for this managed resource.
    Kind string
    Type of the resource. Always compute#urlMaps for url maps.
    SelfLink string
    Server-defined URL for the resource.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    fingerprint String
    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.
    id String
    The provider-assigned unique ID for this managed resource.
    kind String
    Type of the resource. Always compute#urlMaps for url maps.
    selfLink String
    Server-defined URL for the resource.
    creationTimestamp string
    Creation timestamp in RFC3339 text format.
    fingerprint string
    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.
    id string
    The provider-assigned unique ID for this managed resource.
    kind string
    Type of the resource. Always compute#urlMaps for url maps.
    selfLink string
    Server-defined URL for the resource.
    creation_timestamp str
    Creation timestamp in RFC3339 text format.
    fingerprint str
    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.
    id str
    The provider-assigned unique ID for this managed resource.
    kind str
    Type of the resource. Always compute#urlMaps for url maps.
    self_link str
    Server-defined URL for the resource.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    fingerprint String
    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.
    id String
    The provider-assigned unique ID for this managed resource.
    kind String
    Type of the resource. Always compute#urlMaps for url maps.
    selfLink String
    Server-defined URL for the resource.

    Supporting Types

    CorsPolicy, CorsPolicyArgs

    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders List<string>
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods List<string>
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes List<string>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins List<string>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders List<string>
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders []string
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods []string
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes []string
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins []string
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders []string
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Integer
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders string[]
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods string[]
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes string[]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins string[]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders string[]
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allow_credentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allow_headers Sequence[str]
    Specifies the content for the Access-Control-Allow-Headers header.
    allow_methods Sequence[str]
    Specifies the content for the Access-Control-Allow-Methods header.
    allow_origin_regexes Sequence[str]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allow_origins Sequence[str]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    expose_headers Sequence[str]
    Specifies the content for the Access-Control-Expose-Headers header.
    max_age int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.

    CorsPolicyResponse, CorsPolicyResponseArgs

    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders List<string>
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods List<string>
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes List<string>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins List<string>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders List<string>
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    AllowCredentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    AllowHeaders []string
    Specifies the content for the Access-Control-Allow-Headers header.
    AllowMethods []string
    Specifies the content for the Access-Control-Allow-Methods header.
    AllowOriginRegexes []string
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    AllowOrigins []string
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    Disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    ExposeHeaders []string
    Specifies the content for the Access-Control-Expose-Headers header.
    MaxAge int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Integer
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders string[]
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods string[]
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes string[]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins string[]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders string[]
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allow_credentials bool
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allow_headers Sequence[str]
    Specifies the content for the Access-Control-Allow-Headers header.
    allow_methods Sequence[str]
    Specifies the content for the Access-Control-Allow-Methods header.
    allow_origin_regexes Sequence[str]
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allow_origins Sequence[str]
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled bool
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    expose_headers Sequence[str]
    Specifies the content for the Access-Control-Expose-Headers header.
    max_age int
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.
    allowCredentials Boolean
    In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header. Default is false.
    allowHeaders List<String>
    Specifies the content for the Access-Control-Allow-Headers header.
    allowMethods List<String>
    Specifies the content for the Access-Control-Allow-Methods header.
    allowOriginRegexes List<String>
    Specifies a regular expression that matches allowed origins. For more information about the regular expression syntax, see Syntax. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    allowOrigins List<String>
    Specifies the list of origins that is allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
    disabled Boolean
    If true, the setting specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.
    exposeHeaders List<String>
    Specifies the content for the Access-Control-Expose-Headers header.
    maxAge Number
    Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.

    Duration, DurationArgs

    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Integer
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds str
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

    DurationResponse, DurationResponseArgs

    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Integer
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds str
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

    HostRule, HostRuleArgs

    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts List<string>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts []string
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    hosts string[]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    hosts Sequence[str]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    path_matcher str
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.

    HostRuleResponse, HostRuleResponseArgs

    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts List<string>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Hosts []string
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    PathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    hosts string[]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher string
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    hosts Sequence[str]
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    path_matcher str
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    hosts List<String>
    The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character, and if followed by anything, the immediate following character must be either - or .. * based matching is not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    pathMatcher String
    The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.

    HttpFaultAbort, HttpFaultAbortArgs

    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage float64
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Integer
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    http_status int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage float
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultAbortResponse, HttpFaultAbortResponseArgs

    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    HttpStatus int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    Percentage float64
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Integer
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Double
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    http_status int
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage float
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    httpStatus Number
    The HTTP status code used to abort the request. The value must be from 200 to 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
    percentage Number
    The percentage of traffic for connections, operations, or requests that is aborted as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultDelay, HttpFaultDelayArgs

    FixedDelay Pulumi.GoogleNative.Compute.V1.Inputs.Duration
    Specifies the value of the fixed delay interval.
    Percentage double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    FixedDelay Duration
    Specifies the value of the fixed delay interval.
    Percentage float64
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Duration
    Specifies the value of the fixed delay interval.
    percentage Double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Duration
    Specifies the value of the fixed delay interval.
    percentage number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixed_delay Duration
    Specifies the value of the fixed delay interval.
    percentage float
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Property Map
    Specifies the value of the fixed delay interval.
    percentage Number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultDelayResponse, HttpFaultDelayResponseArgs

    FixedDelay Pulumi.GoogleNative.Compute.V1.Inputs.DurationResponse
    Specifies the value of the fixed delay interval.
    Percentage double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    FixedDelay DurationResponse
    Specifies the value of the fixed delay interval.
    Percentage float64
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay DurationResponse
    Specifies the value of the fixed delay interval.
    percentage Double
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay DurationResponse
    Specifies the value of the fixed delay interval.
    percentage number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixed_delay DurationResponse
    Specifies the value of the fixed delay interval.
    percentage float
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.
    fixedDelay Property Map
    Specifies the value of the fixed delay interval.
    percentage Number
    The percentage of traffic for connections, operations, or requests for which a delay is introduced as part of fault injection. The value must be from 0.0 to 100.0 inclusive.

    HttpFaultInjection, HttpFaultInjectionArgs

    Abort Pulumi.GoogleNative.Compute.V1.Inputs.HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    Delay Pulumi.GoogleNative.Compute.V1.Inputs.HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    Abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    Delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbort
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelay
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort Property Map
    The specification for how client requests are aborted as part of fault injection.
    delay Property Map
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.

    HttpFaultInjectionResponse, HttpFaultInjectionResponseArgs

    Abort Pulumi.GoogleNative.Compute.V1.Inputs.HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    Delay Pulumi.GoogleNative.Compute.V1.Inputs.HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    Abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    Delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort HttpFaultAbortResponse
    The specification for how client requests are aborted as part of fault injection.
    delay HttpFaultDelayResponse
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
    abort Property Map
    The specification for how client requests are aborted as part of fault injection.
    delay Property Map
    The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.

    HttpHeaderAction, HttpHeaderActionArgs

    RequestHeadersToAdd List<Pulumi.GoogleNative.Compute.V1.Inputs.HttpHeaderOption>
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd List<Pulumi.GoogleNative.Compute.V1.Inputs.HttpHeaderOption>
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    RequestHeadersToAdd []HttpHeaderOption
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove []string
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd []HttpHeaderOption
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove []string
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<HttpHeaderOption>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<HttpHeaderOption>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd HttpHeaderOption[]
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove string[]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd HttpHeaderOption[]
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove string[]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    request_headers_to_add Sequence[HttpHeaderOption]
    Headers to add to a matching request before forwarding the request to the backendService.
    request_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    response_headers_to_add Sequence[HttpHeaderOption]
    Headers to add the response before sending the response back to the client.
    response_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<Property Map>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<Property Map>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.

    HttpHeaderActionResponse, HttpHeaderActionResponseArgs

    RequestHeadersToAdd List<Pulumi.GoogleNative.Compute.V1.Inputs.HttpHeaderOptionResponse>
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd List<Pulumi.GoogleNative.Compute.V1.Inputs.HttpHeaderOptionResponse>
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove List<string>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    RequestHeadersToAdd []HttpHeaderOptionResponse
    Headers to add to a matching request before forwarding the request to the backendService.
    RequestHeadersToRemove []string
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    ResponseHeadersToAdd []HttpHeaderOptionResponse
    Headers to add the response before sending the response back to the client.
    ResponseHeadersToRemove []string
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<HttpHeaderOptionResponse>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<HttpHeaderOptionResponse>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd HttpHeaderOptionResponse[]
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove string[]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd HttpHeaderOptionResponse[]
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove string[]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    request_headers_to_add Sequence[HttpHeaderOptionResponse]
    Headers to add to a matching request before forwarding the request to the backendService.
    request_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    response_headers_to_add Sequence[HttpHeaderOptionResponse]
    Headers to add the response before sending the response back to the client.
    response_headers_to_remove Sequence[str]
    A list of header names for headers that need to be removed from the response before sending the response back to the client.
    requestHeadersToAdd List<Property Map>
    Headers to add to a matching request before forwarding the request to the backendService.
    requestHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the request before forwarding the request to the backendService.
    responseHeadersToAdd List<Property Map>
    Headers to add the response before sending the response back to the client.
    responseHeadersToRemove List<String>
    A list of header names for headers that need to be removed from the response before sending the response back to the client.

    HttpHeaderMatch, HttpHeaderMatchArgs

    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Pulumi.GoogleNative.Compute.V1.Inputs.Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exact_match str
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    header_name str
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invert_match bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefix_match str
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    present_match bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    range_match Int64RangeMatch
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regex_match str
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffix_match str
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Property Map
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

    HttpHeaderMatchResponse, HttpHeaderMatchResponseArgs

    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Pulumi.GoogleNative.Compute.V1.Inputs.Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    ExactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    HeaderName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    InvertMatch bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    PrefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    PresentMatch bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    RangeMatch Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    RegexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    SuffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch string
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName string
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch string
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch string
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch string
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exact_match str
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    header_name str
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invert_match bool
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefix_match str
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    present_match bool
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    range_match Int64RangeMatchResponse
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regex_match str
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffix_match str
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    exactMatch String
    The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    headerName String
    The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true, only non-binary user-specified custom metadata and the content-type header are supported. The following transport-level headers cannot be used in header matching rules: :authority, :method, :path, :scheme, user-agent, accept-encoding, content-encoding, grpc-accept-encoding, grpc-encoding, grpc-previous-rpc-attempts, grpc-tags-bin, grpc-timeout and grpc-trace-bin.
    invertMatch Boolean
    If set to false, the headerMatch is considered a match if the preceding match criteria are met. If set to true, the headerMatch is considered a match if the preceding match criteria are NOT met. The default setting is false.
    prefixMatch String
    The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    presentMatch Boolean
    A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
    rangeMatch Property Map
    The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. rangeMatch is not supported for load balancers that have loadBalancingScheme set to EXTERNAL.
    regexMatch String
    The value of the header must match the regular expression specified in regexMatch. For more information about regular expression syntax, see Syntax. For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    suffixMatch String
    The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

    HttpHeaderOption, HttpHeaderOptionArgs

    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName string
    The name of the header.
    headerValue string
    The value of the header to add.
    replace boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    header_name str
    The name of the header.
    header_value str
    The value of the header to add.
    replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.

    HttpHeaderOptionResponse, HttpHeaderOptionResponseArgs

    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    HeaderName string
    The name of the header.
    HeaderValue string
    The value of the header to add.
    Replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName string
    The name of the header.
    headerValue string
    The value of the header to add.
    replace boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    header_name str
    The name of the header.
    header_value str
    The value of the header to add.
    replace bool
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.
    headerName String
    The name of the header.
    headerValue String
    The value of the header to add.
    replace Boolean
    If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false.

    HttpQueryParameterMatch, HttpQueryParameterMatchArgs

    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exact_match str
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name str
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    present_match bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regex_match str
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

    HttpQueryParameterMatchResponse, HttpQueryParameterMatchResponseArgs

    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    ExactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    Name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    PresentMatch bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    RegexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch string
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name string
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch string
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exact_match str
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name str
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    present_match bool
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regex_match str
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
    exactMatch String
    The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch, or regexMatch must be set.
    name String
    The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.
    presentMatch Boolean
    Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch, or regexMatch must be set.
    regexMatch String
    The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For more information about regular expression syntax, see Syntax. Only one of presentMatch, exactMatch, or regexMatch must be set. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

    HttpRedirectAction, HttpRedirectActionArgs

    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode Pulumi.GoogleNative.Compute.V1.HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    host_redirect str
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    https_redirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    path_redirect str
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefix_redirect str
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirect_response_code HttpRedirectActionRedirectResponseCode
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    strip_query bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode "FOUND" | "MOVED_PERMANENTLY_DEFAULT" | "PERMANENT_REDIRECT" | "SEE_OTHER" | "TEMPORARY_REDIRECT"
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.

    HttpRedirectActionRedirectResponseCode, HttpRedirectActionRedirectResponseCodeArgs

    Found
    FOUNDHttp Status Code 302 - Found.
    MovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    TemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    HttpRedirectActionRedirectResponseCodeFound
    FOUNDHttp Status Code 302 - Found.
    HttpRedirectActionRedirectResponseCodeMovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    HttpRedirectActionRedirectResponseCodePermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    HttpRedirectActionRedirectResponseCodeSeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    HttpRedirectActionRedirectResponseCodeTemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    Found
    FOUNDHttp Status Code 302 - Found.
    MovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    TemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    Found
    FOUNDHttp Status Code 302 - Found.
    MovedPermanentlyDefault
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PermanentRedirect
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SeeOther
    SEE_OTHERHttp Status Code 303 - See Other.
    TemporaryRedirect
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    FOUND
    FOUNDHttp Status Code 302 - Found.
    MOVED_PERMANENTLY_DEFAULT
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    PERMANENT_REDIRECT
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    SEE_OTHER
    SEE_OTHERHttp Status Code 303 - See Other.
    TEMPORARY_REDIRECT
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.
    "FOUND"
    FOUNDHttp Status Code 302 - Found.
    "MOVED_PERMANENTLY_DEFAULT"
    MOVED_PERMANENTLY_DEFAULTHttp Status Code 301 - Moved Permanently.
    "PERMANENT_REDIRECT"
    PERMANENT_REDIRECTHttp Status Code 308 - Permanent Redirect maintaining HTTP method.
    "SEE_OTHER"
    SEE_OTHERHttp Status Code 303 - See Other.
    "TEMPORARY_REDIRECT"
    TEMPORARY_REDIRECTHttp Status Code 307 - Temporary Redirect maintaining HTTP method.

    HttpRedirectActionResponse, HttpRedirectActionResponseArgs

    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode string
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    HostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    HttpsRedirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    PathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    PrefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    RedirectResponseCode string
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    StripQuery bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode String
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect string
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect string
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect string
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode string
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    host_redirect str
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    https_redirect bool
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    path_redirect str
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefix_redirect str
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirect_response_code str
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    strip_query bool
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.
    hostRedirect String
    The host that is used in the redirect response instead of the one that was supplied in the request. The value must be from 1 to 255 characters.
    httpsRedirect Boolean
    If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request. This must only be set for URL maps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
    pathRedirect String
    The path that is used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    prefixRedirect String
    The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect. The value must be from 1 to 1024 characters.
    redirectResponseCode String
    The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
    stripQuery Boolean
    If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false.

    HttpRetryPolicy, HttpRetryPolicyArgs

    NumRetries int
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    PerTryTimeout Pulumi.GoogleNative.Compute.V1.Inputs.Duration
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryConditions List<string>
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    NumRetries int
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    PerTryTimeout Duration
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryConditions []string
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    numRetries Integer
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    perTryTimeout Duration
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryConditions List<String>
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    numRetries number
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    perTryTimeout Duration
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryConditions string[]
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    num_retries int
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    per_try_timeout Duration
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retry_conditions Sequence[str]
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    numRetries Number
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    perTryTimeout Property Map
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryConditions List<String>
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable

    HttpRetryPolicyResponse, HttpRetryPolicyResponseArgs

    NumRetries int
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    PerTryTimeout Pulumi.GoogleNative.Compute.V1.Inputs.DurationResponse
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryConditions List<string>
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    NumRetries int
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    PerTryTimeout DurationResponse
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryConditions []string
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    numRetries Integer
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    perTryTimeout DurationResponse
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryConditions List<String>
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    numRetries number
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    perTryTimeout DurationResponse
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryConditions string[]
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    num_retries int
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    per_try_timeout DurationResponse
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retry_conditions Sequence[str]
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable
    numRetries Number
    Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
    perTryTimeout Property Map
    Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in the HttpRouteAction field. If timeout in the HttpRouteAction field is not set, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryConditions List<String>
    Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: retry is attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all. For example, disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: a retry is attempted on failures connecting to the instance or endpoint. For example, connection timeouts. - retriable-4xx: a retry is attempted if the instance or endpoint responds with a 4xx response code. The only error that you can retry is error code 409. - refused-stream: a retry is attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: a retry is attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: a retry is attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: a retry is attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: a retry is attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: a retry is attempted if the gRPC status code in the response header is set to unavailable. Only the following codes are supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. - cancelled - deadline-exceeded - internal - resource-exhausted - unavailable

    HttpRouteAction, HttpRouteActionArgs

    CorsPolicy Pulumi.GoogleNative.Compute.V1.Inputs.CorsPolicy
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    FaultInjectionPolicy Pulumi.GoogleNative.Compute.V1.Inputs.HttpFaultInjection
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    MaxStreamDuration Pulumi.GoogleNative.Compute.V1.Inputs.Duration
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    RequestMirrorPolicy Pulumi.GoogleNative.Compute.V1.Inputs.RequestMirrorPolicy
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryPolicy Pulumi.GoogleNative.Compute.V1.Inputs.HttpRetryPolicy
    Specifies the retry policy associated with this route.
    Timeout Pulumi.GoogleNative.Compute.V1.Inputs.Duration
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    UrlRewrite Pulumi.GoogleNative.Compute.V1.Inputs.UrlRewrite
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    WeightedBackendServices List<Pulumi.GoogleNative.Compute.V1.Inputs.WeightedBackendService>
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    CorsPolicy CorsPolicy
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    FaultInjectionPolicy HttpFaultInjection
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    MaxStreamDuration Duration
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    RequestMirrorPolicy RequestMirrorPolicy
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryPolicy HttpRetryPolicy
    Specifies the retry policy associated with this route.
    Timeout Duration
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    UrlRewrite UrlRewrite
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    WeightedBackendServices []WeightedBackendService
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    corsPolicy CorsPolicy
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    faultInjectionPolicy HttpFaultInjection
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    maxStreamDuration Duration
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    requestMirrorPolicy RequestMirrorPolicy
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryPolicy HttpRetryPolicy
    Specifies the retry policy associated with this route.
    timeout Duration
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    urlRewrite UrlRewrite
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weightedBackendServices List<WeightedBackendService>
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    corsPolicy CorsPolicy
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    faultInjectionPolicy HttpFaultInjection
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    maxStreamDuration Duration
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    requestMirrorPolicy RequestMirrorPolicy
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryPolicy HttpRetryPolicy
    Specifies the retry policy associated with this route.
    timeout Duration
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    urlRewrite UrlRewrite
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weightedBackendServices WeightedBackendService[]
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    cors_policy CorsPolicy
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    fault_injection_policy HttpFaultInjection
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    max_stream_duration Duration
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    request_mirror_policy RequestMirrorPolicy
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retry_policy HttpRetryPolicy
    Specifies the retry policy associated with this route.
    timeout Duration
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    url_rewrite UrlRewrite
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weighted_backend_services Sequence[WeightedBackendService]
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    corsPolicy Property Map
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    faultInjectionPolicy Property Map
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    maxStreamDuration Property Map
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    requestMirrorPolicy Property Map
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryPolicy Property Map
    Specifies the retry policy associated with this route.
    timeout Property Map
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    urlRewrite Property Map
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weightedBackendServices List<Property Map>
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.

    HttpRouteActionResponse, HttpRouteActionResponseArgs

    CorsPolicy Pulumi.GoogleNative.Compute.V1.Inputs.CorsPolicyResponse
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    FaultInjectionPolicy Pulumi.GoogleNative.Compute.V1.Inputs.HttpFaultInjectionResponse
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    MaxStreamDuration Pulumi.GoogleNative.Compute.V1.Inputs.DurationResponse
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    RequestMirrorPolicy Pulumi.GoogleNative.Compute.V1.Inputs.RequestMirrorPolicyResponse
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryPolicy Pulumi.GoogleNative.Compute.V1.Inputs.HttpRetryPolicyResponse
    Specifies the retry policy associated with this route.
    Timeout Pulumi.GoogleNative.Compute.V1.Inputs.DurationResponse
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    UrlRewrite Pulumi.GoogleNative.Compute.V1.Inputs.UrlRewriteResponse
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    WeightedBackendServices List<Pulumi.GoogleNative.Compute.V1.Inputs.WeightedBackendServiceResponse>
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    CorsPolicy CorsPolicyResponse
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    FaultInjectionPolicy HttpFaultInjectionResponse
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    MaxStreamDuration DurationResponse
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    RequestMirrorPolicy RequestMirrorPolicyResponse
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    RetryPolicy HttpRetryPolicyResponse
    Specifies the retry policy associated with this route.
    Timeout DurationResponse
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    UrlRewrite UrlRewriteResponse
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    WeightedBackendServices []WeightedBackendServiceResponse
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    corsPolicy CorsPolicyResponse
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    faultInjectionPolicy HttpFaultInjectionResponse
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    maxStreamDuration DurationResponse
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    requestMirrorPolicy RequestMirrorPolicyResponse
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryPolicy HttpRetryPolicyResponse
    Specifies the retry policy associated with this route.
    timeout DurationResponse
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    urlRewrite UrlRewriteResponse
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weightedBackendServices List<WeightedBackendServiceResponse>
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    corsPolicy CorsPolicyResponse
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    faultInjectionPolicy HttpFaultInjectionResponse
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    maxStreamDuration DurationResponse
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    requestMirrorPolicy RequestMirrorPolicyResponse
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryPolicy HttpRetryPolicyResponse
    Specifies the retry policy associated with this route.
    timeout DurationResponse
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    urlRewrite UrlRewriteResponse
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weightedBackendServices WeightedBackendServiceResponse[]
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    cors_policy CorsPolicyResponse
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    fault_injection_policy HttpFaultInjectionResponse
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    max_stream_duration DurationResponse
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    request_mirror_policy RequestMirrorPolicyResponse
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retry_policy HttpRetryPolicyResponse
    Specifies the retry policy associated with this route.
    timeout DurationResponse
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    url_rewrite UrlRewriteResponse
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weighted_backend_services Sequence[WeightedBackendServiceResponse]
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.
    corsPolicy Property Map
    The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard. Not supported when the URL map is bound to a target gRPC proxy.
    faultInjectionPolicy Property Map
    The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by a load balancer on a percentage of requests before sending those requests to the backend service. Similarly requests from clients can be aborted by the load balancer for a percentage of requests. timeout and retry_policy is ignored by clients that are configured with a fault_injection_policy if: 1. The traffic is generated by fault injection AND 2. The fault injection is not a delay fault injection. Fault injection is not supported with the classic Application Load Balancer . To see which load balancers support fault injection, see Load balancing: Routing and traffic management features.
    maxStreamDuration Property Map
    Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (known as end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been processed, including all retries. A stream that does not complete in this duration is closed. If not specified, this field uses the maximum maxStreamDuration value among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.
    requestMirrorPolicy Property Map
    Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer does not wait for responses from the shadow service. Before sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    retryPolicy Property Map
    Specifies the retry policy associated with this route.
    timeout Property Map
    Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (known as end-of-stream) up until the response has been processed. Timeout includes all retries. If not specified, this field uses the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true.
    urlRewrite Property Map
    The spec to modify the URL of the request, before forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for classic Application Load Balancers. Not supported when the URL map is bound to a target gRPC proxy that has the validateForProxyless field set to true.
    weightedBackendServices List<Property Map>
    A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. After a backend service is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.

    HttpRouteRule, HttpRouteRuleArgs

    Description string
    The short description conveying the intent of this routeRule. The description can have a maximum length of 1024 characters.
    HeaderAction Pulumi.GoogleNative.Compute.V1.Inputs.HttpHeaderAction
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction value specified here is applied before the matching pathMatchers[].headerAction and after pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction 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.
    MatchRules List<Pulumi.GoogleNative.Compute.V1.Inputs.HttpRouteRuleMatch>
    The list of criteria for matching attributes of a request to this routeRule. This list has OR semantics: the request matches this routeRule when any of the matchRules are satisfied. However predicates within a given matchRule have AND semantics. All predicates within a matchRule must match for the request to match the rule.
    Priority int
    For routeRules within a given pathMatcher, priority determines the order in which a load balancer interprets routeRules. RouteRules are evaluated in order of priority, from the lowest to highest number. The priority of a rule decreases as its number increases (1, 2, 3, N+1). The first rule that matches the request is applied. You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number from 0 to 2147483647 inclusive. Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules.
    RouteAction Pulumi.GoogleNative.Compute.V1.Inputs.HttpRouteAction
    In response to a matching matchRule, the load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of urlRedirect, service or routeAction.weightedBackendService must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within a route rule's routeAction.
    Service string
    The full or partial URL of the backend service resource to which traffic is directed if this rule is matched. If routeAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if service is specified, routeAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of urlRedirect, service or routeAction.weightedBackendService must be set.
    UrlRedirect Pulumi.GoogleNative.Compute.V1.Inputs.HttpRedirectAction
    When this rule is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    Description string
    The short description conveying the intent of this routeRule. The description can have a maximum length of 1024 characters.
    HeaderAction HttpHeaderAction
    Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction value specified here is applied before the matching pathMatchers[].headerAction and after pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction 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.
    MatchRules []HttpRouteRuleMatch
    The list of criteria for matching attributes of a request to this routeRule. This list has OR semantics: the request matches this routeRule when any of the matchRules are satisfied. However predicates within a given matchRule have AND semantics. All predicates within a matchRule must match for the request to match the rule.
    Priority int
    For routeRules within a given pathMatcher, priority determines the order in which a load balancer interprets routeRules. RouteRules are evaluated in order of priority, from the lowest to highest number. The priority of a rule decreases as its number increases (1, 2, 3, N+1). The first rule that matches the request is applied. You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number from 0 to 2147483647 inclusive. Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules.
    RouteAction HttpRouteAction
    In response to a matching matchRule, the load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of urlRedirect, service or routeAction.weightedBackendService must be set. URL maps for classic Application Load Balancers only support the urlRewrite action within a route rule's routeAction.
    Service string
    The full or partial URL of the backend service resource to which traffic is directed if this rule is matched. If routeAction is also specified, advanced routing actions, such as URL rewrites, take effect before sending the request to the backend. However, if service is specified, routeAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of urlRedirect, service or routeAction.weightedBackendService must be set.
    UrlRedirect HttpRedirectAction
    When this rule is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Not supported when the URL map is bound to a target gRPC proxy.
    description String
    The short description conveying the intent of this routeRule. The description can have a maximum length of 1024 characters.