1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. networkservices
  5. EdgeCacheOrigin
Google Cloud Classic v7.20.0 published on Wednesday, Apr 24, 2024 by Pulumi

gcp.networkservices.EdgeCacheOrigin

Explore with Pulumi AI

gcp logo
Google Cloud Classic v7.20.0 published on Wednesday, Apr 24, 2024 by Pulumi

    EdgeCacheOrigin represents a HTTP-reachable backend for an EdgeCacheService.

    To get more information about EdgeCacheOrigin, see:

    Example Usage

    Network Services Edge Cache Origin Basic

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const _default = new gcp.networkservices.EdgeCacheOrigin("default", {
        name: "my-origin",
        originAddress: "gs://media-edge-default",
        description: "The default bucket for media edge test",
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    default = gcp.networkservices.EdgeCacheOrigin("default",
        name="my-origin",
        origin_address="gs://media-edge-default",
        description="The default bucket for media edge test")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/networkservices"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := networkservices.NewEdgeCacheOrigin(ctx, "default", &networkservices.EdgeCacheOriginArgs{
    			Name:          pulumi.String("my-origin"),
    			OriginAddress: pulumi.String("gs://media-edge-default"),
    			Description:   pulumi.String("The default bucket for media edge test"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var @default = new Gcp.NetworkServices.EdgeCacheOrigin("default", new()
        {
            Name = "my-origin",
            OriginAddress = "gs://media-edge-default",
            Description = "The default bucket for media edge test",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.networkservices.EdgeCacheOrigin;
    import com.pulumi.gcp.networkservices.EdgeCacheOriginArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var default_ = new EdgeCacheOrigin("default", EdgeCacheOriginArgs.builder()        
                .name("my-origin")
                .originAddress("gs://media-edge-default")
                .description("The default bucket for media edge test")
                .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:networkservices:EdgeCacheOrigin
        properties:
          name: my-origin
          originAddress: gs://media-edge-default
          description: The default bucket for media edge test
    

    Network Services Edge Cache Origin Advanced

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const fallback = new gcp.networkservices.EdgeCacheOrigin("fallback", {
        name: "my-fallback",
        originAddress: "fallback.example.com",
        description: "The default bucket for media edge test",
        maxAttempts: 3,
        protocol: "HTTP",
        port: 80,
        retryConditions: [
            "CONNECT_FAILURE",
            "NOT_FOUND",
            "HTTP_5XX",
            "FORBIDDEN",
        ],
        timeout: {
            connectTimeout: "10s",
            maxAttemptsTimeout: "20s",
            responseTimeout: "60s",
            readTimeout: "5s",
        },
        originOverrideAction: {
            urlRewrite: {
                hostRewrite: "example.com",
            },
            headerAction: {
                requestHeadersToAdds: [{
                    headerName: "x-header",
                    headerValue: "value",
                    replace: true,
                }],
            },
        },
        originRedirect: {
            redirectConditions: [
                "MOVED_PERMANENTLY",
                "FOUND",
                "SEE_OTHER",
                "TEMPORARY_REDIRECT",
                "PERMANENT_REDIRECT",
            ],
        },
    });
    const _default = new gcp.networkservices.EdgeCacheOrigin("default", {
        name: "my-origin",
        originAddress: "gs://media-edge-default",
        failoverOrigin: fallback.id,
        description: "The default bucket for media edge test",
        maxAttempts: 2,
        labels: {
            a: "b",
        },
        timeout: {
            connectTimeout: "10s",
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    fallback = gcp.networkservices.EdgeCacheOrigin("fallback",
        name="my-fallback",
        origin_address="fallback.example.com",
        description="The default bucket for media edge test",
        max_attempts=3,
        protocol="HTTP",
        port=80,
        retry_conditions=[
            "CONNECT_FAILURE",
            "NOT_FOUND",
            "HTTP_5XX",
            "FORBIDDEN",
        ],
        timeout=gcp.networkservices.EdgeCacheOriginTimeoutArgs(
            connect_timeout="10s",
            max_attempts_timeout="20s",
            response_timeout="60s",
            read_timeout="5s",
        ),
        origin_override_action=gcp.networkservices.EdgeCacheOriginOriginOverrideActionArgs(
            url_rewrite=gcp.networkservices.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs(
                host_rewrite="example.com",
            ),
            header_action=gcp.networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionArgs(
                request_headers_to_adds=[gcp.networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs(
                    header_name="x-header",
                    header_value="value",
                    replace=True,
                )],
            ),
        ),
        origin_redirect=gcp.networkservices.EdgeCacheOriginOriginRedirectArgs(
            redirect_conditions=[
                "MOVED_PERMANENTLY",
                "FOUND",
                "SEE_OTHER",
                "TEMPORARY_REDIRECT",
                "PERMANENT_REDIRECT",
            ],
        ))
    default = gcp.networkservices.EdgeCacheOrigin("default",
        name="my-origin",
        origin_address="gs://media-edge-default",
        failover_origin=fallback.id,
        description="The default bucket for media edge test",
        max_attempts=2,
        labels={
            "a": "b",
        },
        timeout=gcp.networkservices.EdgeCacheOriginTimeoutArgs(
            connect_timeout="10s",
        ))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/networkservices"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		fallback, err := networkservices.NewEdgeCacheOrigin(ctx, "fallback", &networkservices.EdgeCacheOriginArgs{
    			Name:          pulumi.String("my-fallback"),
    			OriginAddress: pulumi.String("fallback.example.com"),
    			Description:   pulumi.String("The default bucket for media edge test"),
    			MaxAttempts:   pulumi.Int(3),
    			Protocol:      pulumi.String("HTTP"),
    			Port:          pulumi.Int(80),
    			RetryConditions: pulumi.StringArray{
    				pulumi.String("CONNECT_FAILURE"),
    				pulumi.String("NOT_FOUND"),
    				pulumi.String("HTTP_5XX"),
    				pulumi.String("FORBIDDEN"),
    			},
    			Timeout: &networkservices.EdgeCacheOriginTimeoutArgs{
    				ConnectTimeout:     pulumi.String("10s"),
    				MaxAttemptsTimeout: pulumi.String("20s"),
    				ResponseTimeout:    pulumi.String("60s"),
    				ReadTimeout:        pulumi.String("5s"),
    			},
    			OriginOverrideAction: &networkservices.EdgeCacheOriginOriginOverrideActionArgs{
    				UrlRewrite: &networkservices.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs{
    					HostRewrite: pulumi.String("example.com"),
    				},
    				HeaderAction: &networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionArgs{
    					RequestHeadersToAdds: networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArray{
    						&networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs{
    							HeaderName:  pulumi.String("x-header"),
    							HeaderValue: pulumi.String("value"),
    							Replace:     pulumi.Bool(true),
    						},
    					},
    				},
    			},
    			OriginRedirect: &networkservices.EdgeCacheOriginOriginRedirectArgs{
    				RedirectConditions: pulumi.StringArray{
    					pulumi.String("MOVED_PERMANENTLY"),
    					pulumi.String("FOUND"),
    					pulumi.String("SEE_OTHER"),
    					pulumi.String("TEMPORARY_REDIRECT"),
    					pulumi.String("PERMANENT_REDIRECT"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = networkservices.NewEdgeCacheOrigin(ctx, "default", &networkservices.EdgeCacheOriginArgs{
    			Name:           pulumi.String("my-origin"),
    			OriginAddress:  pulumi.String("gs://media-edge-default"),
    			FailoverOrigin: fallback.ID(),
    			Description:    pulumi.String("The default bucket for media edge test"),
    			MaxAttempts:    pulumi.Int(2),
    			Labels: pulumi.StringMap{
    				"a": pulumi.String("b"),
    			},
    			Timeout: &networkservices.EdgeCacheOriginTimeoutArgs{
    				ConnectTimeout: pulumi.String("10s"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var fallback = new Gcp.NetworkServices.EdgeCacheOrigin("fallback", new()
        {
            Name = "my-fallback",
            OriginAddress = "fallback.example.com",
            Description = "The default bucket for media edge test",
            MaxAttempts = 3,
            Protocol = "HTTP",
            Port = 80,
            RetryConditions = new[]
            {
                "CONNECT_FAILURE",
                "NOT_FOUND",
                "HTTP_5XX",
                "FORBIDDEN",
            },
            Timeout = new Gcp.NetworkServices.Inputs.EdgeCacheOriginTimeoutArgs
            {
                ConnectTimeout = "10s",
                MaxAttemptsTimeout = "20s",
                ResponseTimeout = "60s",
                ReadTimeout = "5s",
            },
            OriginOverrideAction = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionArgs
            {
                UrlRewrite = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs
                {
                    HostRewrite = "example.com",
                },
                HeaderAction = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionHeaderActionArgs
                {
                    RequestHeadersToAdds = new[]
                    {
                        new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs
                        {
                            HeaderName = "x-header",
                            HeaderValue = "value",
                            Replace = true,
                        },
                    },
                },
            },
            OriginRedirect = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginRedirectArgs
            {
                RedirectConditions = new[]
                {
                    "MOVED_PERMANENTLY",
                    "FOUND",
                    "SEE_OTHER",
                    "TEMPORARY_REDIRECT",
                    "PERMANENT_REDIRECT",
                },
            },
        });
    
        var @default = new Gcp.NetworkServices.EdgeCacheOrigin("default", new()
        {
            Name = "my-origin",
            OriginAddress = "gs://media-edge-default",
            FailoverOrigin = fallback.Id,
            Description = "The default bucket for media edge test",
            MaxAttempts = 2,
            Labels = 
            {
                { "a", "b" },
            },
            Timeout = new Gcp.NetworkServices.Inputs.EdgeCacheOriginTimeoutArgs
            {
                ConnectTimeout = "10s",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.networkservices.EdgeCacheOrigin;
    import com.pulumi.gcp.networkservices.EdgeCacheOriginArgs;
    import com.pulumi.gcp.networkservices.inputs.EdgeCacheOriginTimeoutArgs;
    import com.pulumi.gcp.networkservices.inputs.EdgeCacheOriginOriginOverrideActionArgs;
    import com.pulumi.gcp.networkservices.inputs.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs;
    import com.pulumi.gcp.networkservices.inputs.EdgeCacheOriginOriginOverrideActionHeaderActionArgs;
    import com.pulumi.gcp.networkservices.inputs.EdgeCacheOriginOriginRedirectArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var fallback = new EdgeCacheOrigin("fallback", EdgeCacheOriginArgs.builder()        
                .name("my-fallback")
                .originAddress("fallback.example.com")
                .description("The default bucket for media edge test")
                .maxAttempts(3)
                .protocol("HTTP")
                .port(80)
                .retryConditions(            
                    "CONNECT_FAILURE",
                    "NOT_FOUND",
                    "HTTP_5XX",
                    "FORBIDDEN")
                .timeout(EdgeCacheOriginTimeoutArgs.builder()
                    .connectTimeout("10s")
                    .maxAttemptsTimeout("20s")
                    .responseTimeout("60s")
                    .readTimeout("5s")
                    .build())
                .originOverrideAction(EdgeCacheOriginOriginOverrideActionArgs.builder()
                    .urlRewrite(EdgeCacheOriginOriginOverrideActionUrlRewriteArgs.builder()
                        .hostRewrite("example.com")
                        .build())
                    .headerAction(EdgeCacheOriginOriginOverrideActionHeaderActionArgs.builder()
                        .requestHeadersToAdds(EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs.builder()
                            .headerName("x-header")
                            .headerValue("value")
                            .replace(true)
                            .build())
                        .build())
                    .build())
                .originRedirect(EdgeCacheOriginOriginRedirectArgs.builder()
                    .redirectConditions(                
                        "MOVED_PERMANENTLY",
                        "FOUND",
                        "SEE_OTHER",
                        "TEMPORARY_REDIRECT",
                        "PERMANENT_REDIRECT")
                    .build())
                .build());
    
            var default_ = new EdgeCacheOrigin("default", EdgeCacheOriginArgs.builder()        
                .name("my-origin")
                .originAddress("gs://media-edge-default")
                .failoverOrigin(fallback.id())
                .description("The default bucket for media edge test")
                .maxAttempts(2)
                .labels(Map.of("a", "b"))
                .timeout(EdgeCacheOriginTimeoutArgs.builder()
                    .connectTimeout("10s")
                    .build())
                .build());
    
        }
    }
    
    resources:
      fallback:
        type: gcp:networkservices:EdgeCacheOrigin
        properties:
          name: my-fallback
          originAddress: fallback.example.com
          description: The default bucket for media edge test
          maxAttempts: 3
          protocol: HTTP
          port: 80
          retryConditions:
            - CONNECT_FAILURE
            - NOT_FOUND
            - HTTP_5XX
            - FORBIDDEN
          timeout:
            connectTimeout: 10s
            maxAttemptsTimeout: 20s
            responseTimeout: 60s
            readTimeout: 5s
          originOverrideAction:
            urlRewrite:
              hostRewrite: example.com
            headerAction:
              requestHeadersToAdds:
                - headerName: x-header
                  headerValue: value
                  replace: true
          originRedirect:
            redirectConditions:
              - MOVED_PERMANENTLY
              - FOUND
              - SEE_OTHER
              - TEMPORARY_REDIRECT
              - PERMANENT_REDIRECT
      default:
        type: gcp:networkservices:EdgeCacheOrigin
        properties:
          name: my-origin
          originAddress: gs://media-edge-default
          failoverOrigin: ${fallback.id}
          description: The default bucket for media edge test
          maxAttempts: 2
          labels:
            a: b
          timeout:
            connectTimeout: 10s
    

    Network Services Edge Cache Origin V4auth

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const secret_basic = new gcp.secretmanager.Secret("secret-basic", {
        secretId: "secret-name",
        replication: {
            auto: {},
        },
    });
    const secret_version_basic = new gcp.secretmanager.SecretVersion("secret-version-basic", {
        secret: secret_basic.id,
        secretData: "secret-data",
    });
    const _default = new gcp.networkservices.EdgeCacheOrigin("default", {
        name: "my-origin",
        originAddress: "gs://media-edge-default",
        description: "The default bucket for V4 authentication",
        awsV4Authentication: {
            accessKeyId: "ACCESSKEYID",
            secretAccessKeyVersion: secret_version_basic.id,
            originRegion: "auto",
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    secret_basic = gcp.secretmanager.Secret("secret-basic",
        secret_id="secret-name",
        replication=gcp.secretmanager.SecretReplicationArgs(
            auto=gcp.secretmanager.SecretReplicationAutoArgs(),
        ))
    secret_version_basic = gcp.secretmanager.SecretVersion("secret-version-basic",
        secret=secret_basic.id,
        secret_data="secret-data")
    default = gcp.networkservices.EdgeCacheOrigin("default",
        name="my-origin",
        origin_address="gs://media-edge-default",
        description="The default bucket for V4 authentication",
        aws_v4_authentication=gcp.networkservices.EdgeCacheOriginAwsV4AuthenticationArgs(
            access_key_id="ACCESSKEYID",
            secret_access_key_version=secret_version_basic.id,
            origin_region="auto",
        ))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/networkservices"
    	"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/secretmanager"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := secretmanager.NewSecret(ctx, "secret-basic", &secretmanager.SecretArgs{
    			SecretId: pulumi.String("secret-name"),
    			Replication: &secretmanager.SecretReplicationArgs{
    				Auto: nil,
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = secretmanager.NewSecretVersion(ctx, "secret-version-basic", &secretmanager.SecretVersionArgs{
    			Secret:     secret_basic.ID(),
    			SecretData: pulumi.String("secret-data"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = networkservices.NewEdgeCacheOrigin(ctx, "default", &networkservices.EdgeCacheOriginArgs{
    			Name:          pulumi.String("my-origin"),
    			OriginAddress: pulumi.String("gs://media-edge-default"),
    			Description:   pulumi.String("The default bucket for V4 authentication"),
    			AwsV4Authentication: &networkservices.EdgeCacheOriginAwsV4AuthenticationArgs{
    				AccessKeyId:            pulumi.String("ACCESSKEYID"),
    				SecretAccessKeyVersion: secret_version_basic.ID(),
    				OriginRegion:           pulumi.String("auto"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var secret_basic = new Gcp.SecretManager.Secret("secret-basic", new()
        {
            SecretId = "secret-name",
            Replication = new Gcp.SecretManager.Inputs.SecretReplicationArgs
            {
                Auto = null,
            },
        });
    
        var secret_version_basic = new Gcp.SecretManager.SecretVersion("secret-version-basic", new()
        {
            Secret = secret_basic.Id,
            SecretData = "secret-data",
        });
    
        var @default = new Gcp.NetworkServices.EdgeCacheOrigin("default", new()
        {
            Name = "my-origin",
            OriginAddress = "gs://media-edge-default",
            Description = "The default bucket for V4 authentication",
            AwsV4Authentication = new Gcp.NetworkServices.Inputs.EdgeCacheOriginAwsV4AuthenticationArgs
            {
                AccessKeyId = "ACCESSKEYID",
                SecretAccessKeyVersion = secret_version_basic.Id,
                OriginRegion = "auto",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.secretmanager.Secret;
    import com.pulumi.gcp.secretmanager.SecretArgs;
    import com.pulumi.gcp.secretmanager.inputs.SecretReplicationArgs;
    import com.pulumi.gcp.secretmanager.inputs.SecretReplicationAutoArgs;
    import com.pulumi.gcp.secretmanager.SecretVersion;
    import com.pulumi.gcp.secretmanager.SecretVersionArgs;
    import com.pulumi.gcp.networkservices.EdgeCacheOrigin;
    import com.pulumi.gcp.networkservices.EdgeCacheOriginArgs;
    import com.pulumi.gcp.networkservices.inputs.EdgeCacheOriginAwsV4AuthenticationArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var secret_basic = new Secret("secret-basic", SecretArgs.builder()        
                .secretId("secret-name")
                .replication(SecretReplicationArgs.builder()
                    .auto()
                    .build())
                .build());
    
            var secret_version_basic = new SecretVersion("secret-version-basic", SecretVersionArgs.builder()        
                .secret(secret_basic.id())
                .secretData("secret-data")
                .build());
    
            var default_ = new EdgeCacheOrigin("default", EdgeCacheOriginArgs.builder()        
                .name("my-origin")
                .originAddress("gs://media-edge-default")
                .description("The default bucket for V4 authentication")
                .awsV4Authentication(EdgeCacheOriginAwsV4AuthenticationArgs.builder()
                    .accessKeyId("ACCESSKEYID")
                    .secretAccessKeyVersion(secret_version_basic.id())
                    .originRegion("auto")
                    .build())
                .build());
    
        }
    }
    
    resources:
      secret-basic:
        type: gcp:secretmanager:Secret
        properties:
          secretId: secret-name
          replication:
            auto: {}
      secret-version-basic:
        type: gcp:secretmanager:SecretVersion
        properties:
          secret: ${["secret-basic"].id}
          secretData: secret-data
      default:
        type: gcp:networkservices:EdgeCacheOrigin
        properties:
          name: my-origin
          originAddress: gs://media-edge-default
          description: The default bucket for V4 authentication
          awsV4Authentication:
            accessKeyId: ACCESSKEYID
            secretAccessKeyVersion: ${["secret-version-basic"].id}
            originRegion: auto
    

    Create EdgeCacheOrigin Resource

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

    Constructor syntax

    new EdgeCacheOrigin(name: string, args: EdgeCacheOriginArgs, opts?: CustomResourceOptions);
    @overload
    def EdgeCacheOrigin(resource_name: str,
                        args: EdgeCacheOriginArgs,
                        opts: Optional[ResourceOptions] = None)
    
    @overload
    def EdgeCacheOrigin(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        origin_address: Optional[str] = None,
                        labels: Optional[Mapping[str, str]] = None,
                        failover_origin: Optional[str] = None,
                        aws_v4_authentication: Optional[EdgeCacheOriginAwsV4AuthenticationArgs] = None,
                        max_attempts: Optional[int] = None,
                        name: Optional[str] = None,
                        description: Optional[str] = None,
                        origin_override_action: Optional[EdgeCacheOriginOriginOverrideActionArgs] = None,
                        origin_redirect: Optional[EdgeCacheOriginOriginRedirectArgs] = None,
                        port: Optional[int] = None,
                        project: Optional[str] = None,
                        protocol: Optional[str] = None,
                        retry_conditions: Optional[Sequence[str]] = None,
                        timeout: Optional[EdgeCacheOriginTimeoutArgs] = None)
    func NewEdgeCacheOrigin(ctx *Context, name string, args EdgeCacheOriginArgs, opts ...ResourceOption) (*EdgeCacheOrigin, error)
    public EdgeCacheOrigin(string name, EdgeCacheOriginArgs args, CustomResourceOptions? opts = null)
    public EdgeCacheOrigin(String name, EdgeCacheOriginArgs args)
    public EdgeCacheOrigin(String name, EdgeCacheOriginArgs args, CustomResourceOptions options)
    
    type: gcp:networkservices:EdgeCacheOrigin
    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 EdgeCacheOriginArgs
    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 EdgeCacheOriginArgs
    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 EdgeCacheOriginArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args EdgeCacheOriginArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args EdgeCacheOriginArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

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

    var edgeCacheOriginResource = new Gcp.NetworkServices.EdgeCacheOrigin("edgeCacheOriginResource", new()
    {
        OriginAddress = "string",
        Labels = 
        {
            { "string", "string" },
        },
        FailoverOrigin = "string",
        AwsV4Authentication = new Gcp.NetworkServices.Inputs.EdgeCacheOriginAwsV4AuthenticationArgs
        {
            AccessKeyId = "string",
            OriginRegion = "string",
            SecretAccessKeyVersion = "string",
        },
        MaxAttempts = 0,
        Name = "string",
        Description = "string",
        OriginOverrideAction = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionArgs
        {
            HeaderAction = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionHeaderActionArgs
            {
                RequestHeadersToAdds = new[]
                {
                    new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs
                    {
                        HeaderName = "string",
                        HeaderValue = "string",
                        Replace = false,
                    },
                },
            },
            UrlRewrite = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs
            {
                HostRewrite = "string",
            },
        },
        OriginRedirect = new Gcp.NetworkServices.Inputs.EdgeCacheOriginOriginRedirectArgs
        {
            RedirectConditions = new[]
            {
                "string",
            },
        },
        Port = 0,
        Project = "string",
        Protocol = "string",
        RetryConditions = new[]
        {
            "string",
        },
        Timeout = new Gcp.NetworkServices.Inputs.EdgeCacheOriginTimeoutArgs
        {
            ConnectTimeout = "string",
            MaxAttemptsTimeout = "string",
            ReadTimeout = "string",
            ResponseTimeout = "string",
        },
    });
    
    example, err := networkservices.NewEdgeCacheOrigin(ctx, "edgeCacheOriginResource", &networkservices.EdgeCacheOriginArgs{
    	OriginAddress: pulumi.String("string"),
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	FailoverOrigin: pulumi.String("string"),
    	AwsV4Authentication: &networkservices.EdgeCacheOriginAwsV4AuthenticationArgs{
    		AccessKeyId:            pulumi.String("string"),
    		OriginRegion:           pulumi.String("string"),
    		SecretAccessKeyVersion: pulumi.String("string"),
    	},
    	MaxAttempts: pulumi.Int(0),
    	Name:        pulumi.String("string"),
    	Description: pulumi.String("string"),
    	OriginOverrideAction: &networkservices.EdgeCacheOriginOriginOverrideActionArgs{
    		HeaderAction: &networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionArgs{
    			RequestHeadersToAdds: networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArray{
    				&networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs{
    					HeaderName:  pulumi.String("string"),
    					HeaderValue: pulumi.String("string"),
    					Replace:     pulumi.Bool(false),
    				},
    			},
    		},
    		UrlRewrite: &networkservices.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs{
    			HostRewrite: pulumi.String("string"),
    		},
    	},
    	OriginRedirect: &networkservices.EdgeCacheOriginOriginRedirectArgs{
    		RedirectConditions: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	Port:     pulumi.Int(0),
    	Project:  pulumi.String("string"),
    	Protocol: pulumi.String("string"),
    	RetryConditions: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Timeout: &networkservices.EdgeCacheOriginTimeoutArgs{
    		ConnectTimeout:     pulumi.String("string"),
    		MaxAttemptsTimeout: pulumi.String("string"),
    		ReadTimeout:        pulumi.String("string"),
    		ResponseTimeout:    pulumi.String("string"),
    	},
    })
    
    var edgeCacheOriginResource = new EdgeCacheOrigin("edgeCacheOriginResource", EdgeCacheOriginArgs.builder()        
        .originAddress("string")
        .labels(Map.of("string", "string"))
        .failoverOrigin("string")
        .awsV4Authentication(EdgeCacheOriginAwsV4AuthenticationArgs.builder()
            .accessKeyId("string")
            .originRegion("string")
            .secretAccessKeyVersion("string")
            .build())
        .maxAttempts(0)
        .name("string")
        .description("string")
        .originOverrideAction(EdgeCacheOriginOriginOverrideActionArgs.builder()
            .headerAction(EdgeCacheOriginOriginOverrideActionHeaderActionArgs.builder()
                .requestHeadersToAdds(EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs.builder()
                    .headerName("string")
                    .headerValue("string")
                    .replace(false)
                    .build())
                .build())
            .urlRewrite(EdgeCacheOriginOriginOverrideActionUrlRewriteArgs.builder()
                .hostRewrite("string")
                .build())
            .build())
        .originRedirect(EdgeCacheOriginOriginRedirectArgs.builder()
            .redirectConditions("string")
            .build())
        .port(0)
        .project("string")
        .protocol("string")
        .retryConditions("string")
        .timeout(EdgeCacheOriginTimeoutArgs.builder()
            .connectTimeout("string")
            .maxAttemptsTimeout("string")
            .readTimeout("string")
            .responseTimeout("string")
            .build())
        .build());
    
    edge_cache_origin_resource = gcp.networkservices.EdgeCacheOrigin("edgeCacheOriginResource",
        origin_address="string",
        labels={
            "string": "string",
        },
        failover_origin="string",
        aws_v4_authentication=gcp.networkservices.EdgeCacheOriginAwsV4AuthenticationArgs(
            access_key_id="string",
            origin_region="string",
            secret_access_key_version="string",
        ),
        max_attempts=0,
        name="string",
        description="string",
        origin_override_action=gcp.networkservices.EdgeCacheOriginOriginOverrideActionArgs(
            header_action=gcp.networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionArgs(
                request_headers_to_adds=[gcp.networkservices.EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs(
                    header_name="string",
                    header_value="string",
                    replace=False,
                )],
            ),
            url_rewrite=gcp.networkservices.EdgeCacheOriginOriginOverrideActionUrlRewriteArgs(
                host_rewrite="string",
            ),
        ),
        origin_redirect=gcp.networkservices.EdgeCacheOriginOriginRedirectArgs(
            redirect_conditions=["string"],
        ),
        port=0,
        project="string",
        protocol="string",
        retry_conditions=["string"],
        timeout=gcp.networkservices.EdgeCacheOriginTimeoutArgs(
            connect_timeout="string",
            max_attempts_timeout="string",
            read_timeout="string",
            response_timeout="string",
        ))
    
    const edgeCacheOriginResource = new gcp.networkservices.EdgeCacheOrigin("edgeCacheOriginResource", {
        originAddress: "string",
        labels: {
            string: "string",
        },
        failoverOrigin: "string",
        awsV4Authentication: {
            accessKeyId: "string",
            originRegion: "string",
            secretAccessKeyVersion: "string",
        },
        maxAttempts: 0,
        name: "string",
        description: "string",
        originOverrideAction: {
            headerAction: {
                requestHeadersToAdds: [{
                    headerName: "string",
                    headerValue: "string",
                    replace: false,
                }],
            },
            urlRewrite: {
                hostRewrite: "string",
            },
        },
        originRedirect: {
            redirectConditions: ["string"],
        },
        port: 0,
        project: "string",
        protocol: "string",
        retryConditions: ["string"],
        timeout: {
            connectTimeout: "string",
            maxAttemptsTimeout: "string",
            readTimeout: "string",
            responseTimeout: "string",
        },
    });
    
    type: gcp:networkservices:EdgeCacheOrigin
    properties:
        awsV4Authentication:
            accessKeyId: string
            originRegion: string
            secretAccessKeyVersion: string
        description: string
        failoverOrigin: string
        labels:
            string: string
        maxAttempts: 0
        name: string
        originAddress: string
        originOverrideAction:
            headerAction:
                requestHeadersToAdds:
                    - headerName: string
                      headerValue: string
                      replace: false
            urlRewrite:
                hostRewrite: string
        originRedirect:
            redirectConditions:
                - string
        port: 0
        project: string
        protocol: string
        retryConditions:
            - string
        timeout:
            connectTimeout: string
            maxAttemptsTimeout: string
            readTimeout: string
            responseTimeout: string
    

    EdgeCacheOrigin 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 EdgeCacheOrigin resource accepts the following input properties:

    OriginAddress string
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    AwsV4Authentication EdgeCacheOriginAwsV4Authentication
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    Description string
    A human-readable description of the resource.
    FailoverOrigin string
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    Labels Dictionary<string, string>
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    MaxAttempts int
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    Name string
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    OriginOverrideAction EdgeCacheOriginOriginOverrideAction
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    OriginRedirect EdgeCacheOriginOriginRedirect
    Follow redirects from this origin. Structure is documented below.
    Port int
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    Protocol string
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    RetryConditions List<string>
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    Timeout EdgeCacheOriginTimeout
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    OriginAddress string
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    AwsV4Authentication EdgeCacheOriginAwsV4AuthenticationArgs
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    Description string
    A human-readable description of the resource.
    FailoverOrigin string
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    Labels map[string]string
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    MaxAttempts int
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    Name string
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    OriginOverrideAction EdgeCacheOriginOriginOverrideActionArgs
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    OriginRedirect EdgeCacheOriginOriginRedirectArgs
    Follow redirects from this origin. Structure is documented below.
    Port int
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    Protocol string
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    RetryConditions []string
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    Timeout EdgeCacheOriginTimeoutArgs
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    originAddress String
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    awsV4Authentication EdgeCacheOriginAwsV4Authentication
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description String
    A human-readable description of the resource.
    failoverOrigin String
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels Map<String,String>
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    maxAttempts Integer
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name String
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    originOverrideAction EdgeCacheOriginOriginOverrideAction
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    originRedirect EdgeCacheOriginOriginRedirect
    Follow redirects from this origin. Structure is documented below.
    port Integer
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol String
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    retryConditions List<String>
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout EdgeCacheOriginTimeout
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    originAddress string
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    awsV4Authentication EdgeCacheOriginAwsV4Authentication
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description string
    A human-readable description of the resource.
    failoverOrigin string
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels {[key: string]: string}
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    maxAttempts number
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name string
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    originOverrideAction EdgeCacheOriginOriginOverrideAction
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    originRedirect EdgeCacheOriginOriginRedirect
    Follow redirects from this origin. Structure is documented below.
    port number
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol string
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    retryConditions string[]
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout EdgeCacheOriginTimeout
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    origin_address str
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    aws_v4_authentication EdgeCacheOriginAwsV4AuthenticationArgs
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description str
    A human-readable description of the resource.
    failover_origin str
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels Mapping[str, str]
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    max_attempts int
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name str
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    origin_override_action EdgeCacheOriginOriginOverrideActionArgs
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    origin_redirect EdgeCacheOriginOriginRedirectArgs
    Follow redirects from this origin. Structure is documented below.
    port int
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol str
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    retry_conditions Sequence[str]
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout EdgeCacheOriginTimeoutArgs
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    originAddress String
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    awsV4Authentication Property Map
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description String
    A human-readable description of the resource.
    failoverOrigin String
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels Map<String>
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    maxAttempts Number
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name String
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    originOverrideAction Property Map
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    originRedirect Property Map
    Follow redirects from this origin. Structure is documented below.
    port Number
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol String
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    retryConditions List<String>
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout Property Map
    The connection and HTTP timeout configuration for this origin. Structure is documented below.

    Outputs

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

    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Id string
    The provider-assigned unique ID for this managed resource.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Id string
    The provider-assigned unique ID for this managed resource.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id String
    The provider-assigned unique ID for this managed resource.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id string
    The provider-assigned unique ID for this managed resource.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id str
    The provider-assigned unique ID for this managed resource.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    id String
    The provider-assigned unique ID for this managed resource.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.

    Look up Existing EdgeCacheOrigin Resource

    Get an existing EdgeCacheOrigin resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: EdgeCacheOriginState, opts?: CustomResourceOptions): EdgeCacheOrigin
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            aws_v4_authentication: Optional[EdgeCacheOriginAwsV4AuthenticationArgs] = None,
            description: Optional[str] = None,
            effective_labels: Optional[Mapping[str, str]] = None,
            failover_origin: Optional[str] = None,
            labels: Optional[Mapping[str, str]] = None,
            max_attempts: Optional[int] = None,
            name: Optional[str] = None,
            origin_address: Optional[str] = None,
            origin_override_action: Optional[EdgeCacheOriginOriginOverrideActionArgs] = None,
            origin_redirect: Optional[EdgeCacheOriginOriginRedirectArgs] = None,
            port: Optional[int] = None,
            project: Optional[str] = None,
            protocol: Optional[str] = None,
            pulumi_labels: Optional[Mapping[str, str]] = None,
            retry_conditions: Optional[Sequence[str]] = None,
            timeout: Optional[EdgeCacheOriginTimeoutArgs] = None) -> EdgeCacheOrigin
    func GetEdgeCacheOrigin(ctx *Context, name string, id IDInput, state *EdgeCacheOriginState, opts ...ResourceOption) (*EdgeCacheOrigin, error)
    public static EdgeCacheOrigin Get(string name, Input<string> id, EdgeCacheOriginState? state, CustomResourceOptions? opts = null)
    public static EdgeCacheOrigin get(String name, Output<String> id, EdgeCacheOriginState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AwsV4Authentication EdgeCacheOriginAwsV4Authentication
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    Description string
    A human-readable description of the resource.
    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    FailoverOrigin string
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    Labels Dictionary<string, string>
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    MaxAttempts int
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    Name string
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    OriginAddress string
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    OriginOverrideAction EdgeCacheOriginOriginOverrideAction
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    OriginRedirect EdgeCacheOriginOriginRedirect
    Follow redirects from this origin. Structure is documented below.
    Port int
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    Protocol string
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    RetryConditions List<string>
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    Timeout EdgeCacheOriginTimeout
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    AwsV4Authentication EdgeCacheOriginAwsV4AuthenticationArgs
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    Description string
    A human-readable description of the resource.
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    FailoverOrigin string
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    Labels map[string]string
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    MaxAttempts int
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    Name string
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    OriginAddress string
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    OriginOverrideAction EdgeCacheOriginOriginOverrideActionArgs
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    OriginRedirect EdgeCacheOriginOriginRedirectArgs
    Follow redirects from this origin. Structure is documented below.
    Port int
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    Protocol string
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    RetryConditions []string
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    Timeout EdgeCacheOriginTimeoutArgs
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    awsV4Authentication EdgeCacheOriginAwsV4Authentication
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description String
    A human-readable description of the resource.
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    failoverOrigin String
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels Map<String,String>
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    maxAttempts Integer
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name String
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    originAddress String
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    originOverrideAction EdgeCacheOriginOriginOverrideAction
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    originRedirect EdgeCacheOriginOriginRedirect
    Follow redirects from this origin. Structure is documented below.
    port Integer
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol String
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    retryConditions List<String>
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout EdgeCacheOriginTimeout
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    awsV4Authentication EdgeCacheOriginAwsV4Authentication
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description string
    A human-readable description of the resource.
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    failoverOrigin string
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels {[key: string]: string}
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    maxAttempts number
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name string
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    originAddress string
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    originOverrideAction EdgeCacheOriginOriginOverrideAction
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    originRedirect EdgeCacheOriginOriginRedirect
    Follow redirects from this origin. Structure is documented below.
    port number
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol string
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    retryConditions string[]
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout EdgeCacheOriginTimeout
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    aws_v4_authentication EdgeCacheOriginAwsV4AuthenticationArgs
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description str
    A human-readable description of the resource.
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    failover_origin str
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels Mapping[str, str]
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    max_attempts int
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name str
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    origin_address str
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    origin_override_action EdgeCacheOriginOriginOverrideActionArgs
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    origin_redirect EdgeCacheOriginOriginRedirectArgs
    Follow redirects from this origin. Structure is documented below.
    port int
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol str
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    retry_conditions Sequence[str]
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout EdgeCacheOriginTimeoutArgs
    The connection and HTTP timeout configuration for this origin. Structure is documented below.
    awsV4Authentication Property Map
    Enable AWS Signature Version 4 origin authentication. Structure is documented below.
    description String
    A human-readable description of the resource.
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    failoverOrigin String
    The Origin resource to try when the current origin cannot be reached. After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource.
    labels Map<String>
    Set of label tags associated with the EdgeCache resource. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.
    maxAttempts Number
    The maximum number of attempts to cache fill from this origin. Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4.
    name String
    Name of the resource; provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit.


    originAddress String
    A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected.
    originOverrideAction Property Map
    The override actions, including url rewrites and header additions, for requests that use this origin. Structure is documented below.
    originRedirect Property Map
    Follow redirects from this origin. Structure is documented below.
    port Number
    The port to connect to the origin on. Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    protocol String
    The protocol to use to connect to the configured origin. Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values are: HTTP2, HTTPS, HTTP.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    retryConditions List<String>
    Specifies one or more retry conditions for the configured origin. If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are:

    • CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts.
    • HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, 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.
    • RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests)
    • NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet.
    • FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Each value may be one of: CONNECT_FAILURE, HTTP_5XX, GATEWAY_ERROR, RETRIABLE_4XX, NOT_FOUND, FORBIDDEN.
    timeout Property Map
    The connection and HTTP timeout configuration for this origin. Structure is documented below.

    Supporting Types

    EdgeCacheOriginAwsV4Authentication, EdgeCacheOriginAwsV4AuthenticationArgs

    AccessKeyId string
    The access key ID your origin uses to identify the key.
    OriginRegion string
    The name of the AWS region that your origin is in.
    SecretAccessKeyVersion string

    The Secret Manager secret version of the secret access key used by your origin.

    This is the resource name of the secret version in the format 'projects//secrets//versions/' where the '' values are replaced by the project, secret, and version you require.

    AccessKeyId string
    The access key ID your origin uses to identify the key.
    OriginRegion string
    The name of the AWS region that your origin is in.
    SecretAccessKeyVersion string

    The Secret Manager secret version of the secret access key used by your origin.

    This is the resource name of the secret version in the format 'projects//secrets//versions/' where the '' values are replaced by the project, secret, and version you require.

    accessKeyId String
    The access key ID your origin uses to identify the key.
    originRegion String
    The name of the AWS region that your origin is in.
    secretAccessKeyVersion String

    The Secret Manager secret version of the secret access key used by your origin.

    This is the resource name of the secret version in the format 'projects//secrets//versions/' where the '' values are replaced by the project, secret, and version you require.

    accessKeyId string
    The access key ID your origin uses to identify the key.
    originRegion string
    The name of the AWS region that your origin is in.
    secretAccessKeyVersion string

    The Secret Manager secret version of the secret access key used by your origin.

    This is the resource name of the secret version in the format 'projects//secrets//versions/' where the '' values are replaced by the project, secret, and version you require.

    access_key_id str
    The access key ID your origin uses to identify the key.
    origin_region str
    The name of the AWS region that your origin is in.
    secret_access_key_version str

    The Secret Manager secret version of the secret access key used by your origin.

    This is the resource name of the secret version in the format 'projects//secrets//versions/' where the '' values are replaced by the project, secret, and version you require.

    accessKeyId String
    The access key ID your origin uses to identify the key.
    originRegion String
    The name of the AWS region that your origin is in.
    secretAccessKeyVersion String

    The Secret Manager secret version of the secret access key used by your origin.

    This is the resource name of the secret version in the format 'projects//secrets//versions/' where the '' values are replaced by the project, secret, and version you require.

    EdgeCacheOriginOriginOverrideAction, EdgeCacheOriginOriginOverrideActionArgs

    HeaderAction EdgeCacheOriginOriginOverrideActionHeaderAction
    The header actions, including adding and removing headers, for request handled by this origin. Structure is documented below.
    UrlRewrite EdgeCacheOriginOriginOverrideActionUrlRewrite
    The URL rewrite configuration for request that are handled by this origin. Structure is documented below.
    HeaderAction EdgeCacheOriginOriginOverrideActionHeaderAction
    The header actions, including adding and removing headers, for request handled by this origin. Structure is documented below.
    UrlRewrite EdgeCacheOriginOriginOverrideActionUrlRewrite
    The URL rewrite configuration for request that are handled by this origin. Structure is documented below.
    headerAction EdgeCacheOriginOriginOverrideActionHeaderAction
    The header actions, including adding and removing headers, for request handled by this origin. Structure is documented below.
    urlRewrite EdgeCacheOriginOriginOverrideActionUrlRewrite
    The URL rewrite configuration for request that are handled by this origin. Structure is documented below.
    headerAction EdgeCacheOriginOriginOverrideActionHeaderAction
    The header actions, including adding and removing headers, for request handled by this origin. Structure is documented below.
    urlRewrite EdgeCacheOriginOriginOverrideActionUrlRewrite
    The URL rewrite configuration for request that are handled by this origin. Structure is documented below.
    header_action EdgeCacheOriginOriginOverrideActionHeaderAction
    The header actions, including adding and removing headers, for request handled by this origin. Structure is documented below.
    url_rewrite EdgeCacheOriginOriginOverrideActionUrlRewrite
    The URL rewrite configuration for request that are handled by this origin. Structure is documented below.
    headerAction Property Map
    The header actions, including adding and removing headers, for request handled by this origin. Structure is documented below.
    urlRewrite Property Map
    The URL rewrite configuration for request that are handled by this origin. Structure is documented below.

    EdgeCacheOriginOriginOverrideActionHeaderAction, EdgeCacheOriginOriginOverrideActionHeaderActionArgs

    RequestHeadersToAdds List<EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAdd>
    Describes a header to add. You may add a maximum of 25 request headers. Structure is documented below.
    RequestHeadersToAdds []EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAdd
    Describes a header to add. You may add a maximum of 25 request headers. Structure is documented below.
    requestHeadersToAdds List<EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAdd>
    Describes a header to add. You may add a maximum of 25 request headers. Structure is documented below.
    requestHeadersToAdds EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAdd[]
    Describes a header to add. You may add a maximum of 25 request headers. Structure is documented below.
    request_headers_to_adds Sequence[EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAdd]
    Describes a header to add. You may add a maximum of 25 request headers. Structure is documented below.
    requestHeadersToAdds List<Property Map>
    Describes a header to add. You may add a maximum of 25 request headers. Structure is documented below.

    EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAdd, EdgeCacheOriginOriginOverrideActionHeaderActionRequestHeadersToAddArgs

    HeaderName string
    The name of the header to add.
    HeaderValue string
    The value of the header to add.
    Replace bool
    Whether to replace all existing headers with the same name. By default, added header values are appended to the response or request headers with the same field names. The added values are separated by commas. To overwrite existing values, set replace to true.
    HeaderName string
    The name of the header to add.
    HeaderValue string
    The value of the header to add.
    Replace bool
    Whether to replace all existing headers with the same name. By default, added header values are appended to the response or request headers with the same field names. The added values are separated by commas. To overwrite existing values, set replace to true.
    headerName String
    The name of the header to add.
    headerValue String
    The value of the header to add.
    replace Boolean
    Whether to replace all existing headers with the same name. By default, added header values are appended to the response or request headers with the same field names. The added values are separated by commas. To overwrite existing values, set replace to true.
    headerName string
    The name of the header to add.
    headerValue string
    The value of the header to add.
    replace boolean
    Whether to replace all existing headers with the same name. By default, added header values are appended to the response or request headers with the same field names. The added values are separated by commas. To overwrite existing values, set replace to true.
    header_name str
    The name of the header to add.
    header_value str
    The value of the header to add.
    replace bool
    Whether to replace all existing headers with the same name. By default, added header values are appended to the response or request headers with the same field names. The added values are separated by commas. To overwrite existing values, set replace to true.
    headerName String
    The name of the header to add.
    headerValue String
    The value of the header to add.
    replace Boolean
    Whether to replace all existing headers with the same name. By default, added header values are appended to the response or request headers with the same field names. The added values are separated by commas. To overwrite existing values, set replace to true.

    EdgeCacheOriginOriginOverrideActionUrlRewrite, EdgeCacheOriginOriginOverrideActionUrlRewriteArgs

    HostRewrite string
    Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of the hostRewrite. This value must be between 1 and 255 characters.
    HostRewrite string
    Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of the hostRewrite. This value must be between 1 and 255 characters.
    hostRewrite String
    Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of the hostRewrite. This value must be between 1 and 255 characters.
    hostRewrite string
    Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of the hostRewrite. This value must be between 1 and 255 characters.
    host_rewrite str
    Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of the hostRewrite. This value must be between 1 and 255 characters.
    hostRewrite String
    Prior to forwarding the request to the selected origin, the request's host header is replaced with contents of the hostRewrite. This value must be between 1 and 255 characters.

    EdgeCacheOriginOriginRedirect, EdgeCacheOriginOriginRedirectArgs

    RedirectConditions List<string>
    The set of redirect response codes that the CDN follows. Values of RedirectConditions are accepted.
    RedirectConditions []string
    The set of redirect response codes that the CDN follows. Values of RedirectConditions are accepted.
    redirectConditions List<String>
    The set of redirect response codes that the CDN follows. Values of RedirectConditions are accepted.
    redirectConditions string[]
    The set of redirect response codes that the CDN follows. Values of RedirectConditions are accepted.
    redirect_conditions Sequence[str]
    The set of redirect response codes that the CDN follows. Values of RedirectConditions are accepted.
    redirectConditions List<String>
    The set of redirect response codes that the CDN follows. Values of RedirectConditions are accepted.

    EdgeCacheOriginTimeout, EdgeCacheOriginTimeoutArgs

    ConnectTimeout string
    The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment. Defaults to 5 seconds. The timeout must be a value between 1s and 15s. The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout. The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout.
    MaxAttemptsTimeout string
    The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins.
    ReadTimeout string

    The maximum duration to wait between reads of a single HTTP connection/stream. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. The readTimeout is capped by the responseTimeout. All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout. If the response headers have already been written to the connection, the response will be truncated and logged.

    The aws_v4_authentication block supports:

    ResponseTimeout string
    The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream. Defaults to 30 seconds. The timeout must be a value between 1s and 120s. The responseTimeout starts after the connection has been established. This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client. If the response headers have already been written to the connection, the response will be truncated and logged.
    ConnectTimeout string
    The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment. Defaults to 5 seconds. The timeout must be a value between 1s and 15s. The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout. The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout.
    MaxAttemptsTimeout string
    The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins.
    ReadTimeout string

    The maximum duration to wait between reads of a single HTTP connection/stream. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. The readTimeout is capped by the responseTimeout. All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout. If the response headers have already been written to the connection, the response will be truncated and logged.

    The aws_v4_authentication block supports:

    ResponseTimeout string
    The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream. Defaults to 30 seconds. The timeout must be a value between 1s and 120s. The responseTimeout starts after the connection has been established. This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client. If the response headers have already been written to the connection, the response will be truncated and logged.
    connectTimeout String
    The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment. Defaults to 5 seconds. The timeout must be a value between 1s and 15s. The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout. The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout.
    maxAttemptsTimeout String
    The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins.
    readTimeout String

    The maximum duration to wait between reads of a single HTTP connection/stream. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. The readTimeout is capped by the responseTimeout. All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout. If the response headers have already been written to the connection, the response will be truncated and logged.

    The aws_v4_authentication block supports:

    responseTimeout String
    The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream. Defaults to 30 seconds. The timeout must be a value between 1s and 120s. The responseTimeout starts after the connection has been established. This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client. If the response headers have already been written to the connection, the response will be truncated and logged.
    connectTimeout string
    The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment. Defaults to 5 seconds. The timeout must be a value between 1s and 15s. The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout. The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout.
    maxAttemptsTimeout string
    The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins.
    readTimeout string

    The maximum duration to wait between reads of a single HTTP connection/stream. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. The readTimeout is capped by the responseTimeout. All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout. If the response headers have already been written to the connection, the response will be truncated and logged.

    The aws_v4_authentication block supports:

    responseTimeout string
    The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream. Defaults to 30 seconds. The timeout must be a value between 1s and 120s. The responseTimeout starts after the connection has been established. This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client. If the response headers have already been written to the connection, the response will be truncated and logged.
    connect_timeout str
    The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment. Defaults to 5 seconds. The timeout must be a value between 1s and 15s. The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout. The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout.
    max_attempts_timeout str
    The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins.
    read_timeout str

    The maximum duration to wait between reads of a single HTTP connection/stream. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. The readTimeout is capped by the responseTimeout. All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout. If the response headers have already been written to the connection, the response will be truncated and logged.

    The aws_v4_authentication block supports:

    response_timeout str
    The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream. Defaults to 30 seconds. The timeout must be a value between 1s and 120s. The responseTimeout starts after the connection has been established. This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client. If the response headers have already been written to the connection, the response will be truncated and logged.
    connectTimeout String
    The maximum duration to wait for a single origin connection to be established, including DNS lookup, TLS handshake and TCP/QUIC connection establishment. Defaults to 5 seconds. The timeout must be a value between 1s and 15s. The connectTimeout capped by the deadline set by the request's maxAttemptsTimeout. The last connection attempt may have a smaller connectTimeout in order to adhere to the overall maxAttemptsTimeout.
    maxAttemptsTimeout String
    The maximum time across all connection attempts to the origin, including failover origins, before returning an error to the client. A HTTP 504 will be returned if the timeout is reached before a response is returned. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. If a failoverOrigin is specified, the maxAttemptsTimeout of the first configured origin sets the deadline for all connection attempts across all failoverOrigins.
    readTimeout String

    The maximum duration to wait between reads of a single HTTP connection/stream. Defaults to 15 seconds. The timeout must be a value between 1s and 30s. The readTimeout is capped by the responseTimeout. All reads of the HTTP connection/stream must be completed by the deadline set by the responseTimeout. If the response headers have already been written to the connection, the response will be truncated and logged.

    The aws_v4_authentication block supports:

    responseTimeout String
    The maximum duration to wait for the last byte of a response to arrive when reading from the HTTP connection/stream. Defaults to 30 seconds. The timeout must be a value between 1s and 120s. The responseTimeout starts after the connection has been established. This also applies to HTTP Chunked Transfer Encoding responses, and/or when an open-ended Range request is made to the origin. Origins that take longer to write additional bytes to the response than the configured responseTimeout will result in an error being returned to the client. If the response headers have already been written to the connection, the response will be truncated and logged.

    Import

    EdgeCacheOrigin can be imported using any of these accepted formats:

    • projects/{{project}}/locations/global/edgeCacheOrigins/{{name}}

    • {{project}}/{{name}}

    • {{name}}

    When using the pulumi import command, EdgeCacheOrigin can be imported using one of the formats above. For example:

    $ pulumi import gcp:networkservices/edgeCacheOrigin:EdgeCacheOrigin default projects/{{project}}/locations/global/edgeCacheOrigins/{{name}}
    
    $ pulumi import gcp:networkservices/edgeCacheOrigin:EdgeCacheOrigin default {{project}}/{{name}}
    
    $ pulumi import gcp:networkservices/edgeCacheOrigin:EdgeCacheOrigin default {{name}}
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Google Cloud (GCP) Classic pulumi/pulumi-gcp
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the google-beta Terraform Provider.
    gcp logo
    Google Cloud Classic v7.20.0 published on Wednesday, Apr 24, 2024 by Pulumi