1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. firebase
  5. HostingVersion
Google Cloud Classic v6.67.0 published on Wednesday, Sep 27, 2023 by Pulumi

gcp.firebase.HostingVersion

Explore with Pulumi AI

gcp logo
Google Cloud Classic v6.67.0 published on Wednesday, Sep 27, 2023 by Pulumi

    Import

    Version can be imported using any of these accepted formats

     $ pulumi import gcp:firebase/hostingVersion:HostingVersion default sites/{{site_id}}/versions/{{version_id}}
    
     $ pulumi import gcp:firebase/hostingVersion:HostingVersion default {{site_id}}/{{version_id}}
    

    Example Usage

    Firebasehosting Version Redirect

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var defaultHostingSite = new Gcp.Firebase.HostingSite("defaultHostingSite", new()
        {
            Project = "my-project-name",
            SiteId = "site-id",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultHostingVersion = new Gcp.Firebase.HostingVersion("defaultHostingVersion", new()
        {
            SiteId = defaultHostingSite.SiteId,
            Config = new Gcp.Firebase.Inputs.HostingVersionConfigArgs
            {
                Redirects = new[]
                {
                    new Gcp.Firebase.Inputs.HostingVersionConfigRedirectArgs
                    {
                        Glob = "/google/**",
                        StatusCode = 302,
                        Location = "https://www.google.com",
                    },
                },
            },
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultHostingRelease = new Gcp.Firebase.HostingRelease("defaultHostingRelease", new()
        {
            SiteId = defaultHostingSite.SiteId,
            VersionName = defaultHostingVersion.Name,
            Message = "Redirect to Google",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/firebase"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultHostingSite, err := firebase.NewHostingSite(ctx, "defaultHostingSite", &firebase.HostingSiteArgs{
    			Project: pulumi.String("my-project-name"),
    			SiteId:  pulumi.String("site-id"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		defaultHostingVersion, err := firebase.NewHostingVersion(ctx, "defaultHostingVersion", &firebase.HostingVersionArgs{
    			SiteId: defaultHostingSite.SiteId,
    			Config: &firebase.HostingVersionConfigArgs{
    				Redirects: firebase.HostingVersionConfigRedirectArray{
    					&firebase.HostingVersionConfigRedirectArgs{
    						Glob:       pulumi.String("/google/**"),
    						StatusCode: pulumi.Int(302),
    						Location:   pulumi.String("https://www.google.com"),
    					},
    				},
    			},
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		_, err = firebase.NewHostingRelease(ctx, "defaultHostingRelease", &firebase.HostingReleaseArgs{
    			SiteId:      defaultHostingSite.SiteId,
    			VersionName: defaultHostingVersion.Name,
    			Message:     pulumi.String("Redirect to Google"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.firebase.HostingSite;
    import com.pulumi.gcp.firebase.HostingSiteArgs;
    import com.pulumi.gcp.firebase.HostingVersion;
    import com.pulumi.gcp.firebase.HostingVersionArgs;
    import com.pulumi.gcp.firebase.inputs.HostingVersionConfigArgs;
    import com.pulumi.gcp.firebase.HostingRelease;
    import com.pulumi.gcp.firebase.HostingReleaseArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 defaultHostingSite = new HostingSite("defaultHostingSite", HostingSiteArgs.builder()        
                .project("my-project-name")
                .siteId("site-id")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultHostingVersion = new HostingVersion("defaultHostingVersion", HostingVersionArgs.builder()        
                .siteId(defaultHostingSite.siteId())
                .config(HostingVersionConfigArgs.builder()
                    .redirects(HostingVersionConfigRedirectArgs.builder()
                        .glob("/google/**")
                        .statusCode(302)
                        .location("https://www.google.com")
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultHostingRelease = new HostingRelease("defaultHostingRelease", HostingReleaseArgs.builder()        
                .siteId(defaultHostingSite.siteId())
                .versionName(defaultHostingVersion.name())
                .message("Redirect to Google")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    default_hosting_site = gcp.firebase.HostingSite("defaultHostingSite",
        project="my-project-name",
        site_id="site-id",
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_hosting_version = gcp.firebase.HostingVersion("defaultHostingVersion",
        site_id=default_hosting_site.site_id,
        config=gcp.firebase.HostingVersionConfigArgs(
            redirects=[gcp.firebase.HostingVersionConfigRedirectArgs(
                glob="/google/**",
                status_code=302,
                location="https://www.google.com",
            )],
        ),
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_hosting_release = gcp.firebase.HostingRelease("defaultHostingRelease",
        site_id=default_hosting_site.site_id,
        version_name=default_hosting_version.name,
        message="Redirect to Google",
        opts=pulumi.ResourceOptions(provider=google_beta))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const defaultHostingSite = new gcp.firebase.HostingSite("defaultHostingSite", {
        project: "my-project-name",
        siteId: "site-id",
    }, {
        provider: google_beta,
    });
    const defaultHostingVersion = new gcp.firebase.HostingVersion("defaultHostingVersion", {
        siteId: defaultHostingSite.siteId,
        config: {
            redirects: [{
                glob: "/google/**",
                statusCode: 302,
                location: "https://www.google.com",
            }],
        },
    }, {
        provider: google_beta,
    });
    const defaultHostingRelease = new gcp.firebase.HostingRelease("defaultHostingRelease", {
        siteId: defaultHostingSite.siteId,
        versionName: defaultHostingVersion.name,
        message: "Redirect to Google",
    }, {
        provider: google_beta,
    });
    
    resources:
      defaultHostingSite:
        type: gcp:firebase:HostingSite
        properties:
          project: my-project-name
          siteId: site-id
        options:
          provider: ${["google-beta"]}
      defaultHostingVersion:
        type: gcp:firebase:HostingVersion
        properties:
          siteId: ${defaultHostingSite.siteId}
          config:
            redirects:
              - glob: /google/**
                statusCode: 302
                location: https://www.google.com
        options:
          provider: ${["google-beta"]}
      defaultHostingRelease:
        type: gcp:firebase:HostingRelease
        properties:
          siteId: ${defaultHostingSite.siteId}
          versionName: ${defaultHostingVersion.name}
          message: Redirect to Google
        options:
          provider: ${["google-beta"]}
    

    Firebasehosting Version Cloud Run

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var defaultHostingSite = new Gcp.Firebase.HostingSite("defaultHostingSite", new()
        {
            Project = "my-project-name",
            SiteId = "site-id",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultService = new Gcp.CloudRunV2.Service("defaultService", new()
        {
            Project = "my-project-name",
            Location = "us-central1",
            Ingress = "INGRESS_TRAFFIC_ALL",
            Template = new Gcp.CloudRunV2.Inputs.ServiceTemplateArgs
            {
                Containers = new[]
                {
                    new Gcp.CloudRunV2.Inputs.ServiceTemplateContainerArgs
                    {
                        Image = "us-docker.pkg.dev/cloudrun/container/hello",
                    },
                },
            },
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultHostingVersion = new Gcp.Firebase.HostingVersion("defaultHostingVersion", new()
        {
            SiteId = defaultHostingSite.SiteId,
            Config = new Gcp.Firebase.Inputs.HostingVersionConfigArgs
            {
                Rewrites = new[]
                {
                    new Gcp.Firebase.Inputs.HostingVersionConfigRewriteArgs
                    {
                        Glob = "/hello/**",
                        Run = new Gcp.Firebase.Inputs.HostingVersionConfigRewriteRunArgs
                        {
                            ServiceId = defaultService.Name,
                            Region = defaultService.Location,
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultHostingRelease = new Gcp.Firebase.HostingRelease("defaultHostingRelease", new()
        {
            SiteId = defaultHostingSite.SiteId,
            VersionName = defaultHostingVersion.Name,
            Message = "Cloud Run Integration",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/cloudrunv2"
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/firebase"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultHostingSite, err := firebase.NewHostingSite(ctx, "defaultHostingSite", &firebase.HostingSiteArgs{
    			Project: pulumi.String("my-project-name"),
    			SiteId:  pulumi.String("site-id"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		defaultService, err := cloudrunv2.NewService(ctx, "defaultService", &cloudrunv2.ServiceArgs{
    			Project:  pulumi.String("my-project-name"),
    			Location: pulumi.String("us-central1"),
    			Ingress:  pulumi.String("INGRESS_TRAFFIC_ALL"),
    			Template: &cloudrunv2.ServiceTemplateArgs{
    				Containers: cloudrunv2.ServiceTemplateContainerArray{
    					&cloudrunv2.ServiceTemplateContainerArgs{
    						Image: pulumi.String("us-docker.pkg.dev/cloudrun/container/hello"),
    					},
    				},
    			},
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		defaultHostingVersion, err := firebase.NewHostingVersion(ctx, "defaultHostingVersion", &firebase.HostingVersionArgs{
    			SiteId: defaultHostingSite.SiteId,
    			Config: &firebase.HostingVersionConfigArgs{
    				Rewrites: firebase.HostingVersionConfigRewriteArray{
    					&firebase.HostingVersionConfigRewriteArgs{
    						Glob: pulumi.String("/hello/**"),
    						Run: &firebase.HostingVersionConfigRewriteRunArgs{
    							ServiceId: defaultService.Name,
    							Region:    defaultService.Location,
    						},
    					},
    				},
    			},
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		_, err = firebase.NewHostingRelease(ctx, "defaultHostingRelease", &firebase.HostingReleaseArgs{
    			SiteId:      defaultHostingSite.SiteId,
    			VersionName: defaultHostingVersion.Name,
    			Message:     pulumi.String("Cloud Run Integration"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.firebase.HostingSite;
    import com.pulumi.gcp.firebase.HostingSiteArgs;
    import com.pulumi.gcp.cloudrunv2.Service;
    import com.pulumi.gcp.cloudrunv2.ServiceArgs;
    import com.pulumi.gcp.cloudrunv2.inputs.ServiceTemplateArgs;
    import com.pulumi.gcp.firebase.HostingVersion;
    import com.pulumi.gcp.firebase.HostingVersionArgs;
    import com.pulumi.gcp.firebase.inputs.HostingVersionConfigArgs;
    import com.pulumi.gcp.firebase.HostingRelease;
    import com.pulumi.gcp.firebase.HostingReleaseArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 defaultHostingSite = new HostingSite("defaultHostingSite", HostingSiteArgs.builder()        
                .project("my-project-name")
                .siteId("site-id")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultService = new Service("defaultService", ServiceArgs.builder()        
                .project("my-project-name")
                .location("us-central1")
                .ingress("INGRESS_TRAFFIC_ALL")
                .template(ServiceTemplateArgs.builder()
                    .containers(ServiceTemplateContainerArgs.builder()
                        .image("us-docker.pkg.dev/cloudrun/container/hello")
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultHostingVersion = new HostingVersion("defaultHostingVersion", HostingVersionArgs.builder()        
                .siteId(defaultHostingSite.siteId())
                .config(HostingVersionConfigArgs.builder()
                    .rewrites(HostingVersionConfigRewriteArgs.builder()
                        .glob("/hello/**")
                        .run(HostingVersionConfigRewriteRunArgs.builder()
                            .serviceId(defaultService.name())
                            .region(defaultService.location())
                            .build())
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultHostingRelease = new HostingRelease("defaultHostingRelease", HostingReleaseArgs.builder()        
                .siteId(defaultHostingSite.siteId())
                .versionName(defaultHostingVersion.name())
                .message("Cloud Run Integration")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    default_hosting_site = gcp.firebase.HostingSite("defaultHostingSite",
        project="my-project-name",
        site_id="site-id",
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_service = gcp.cloudrunv2.Service("defaultService",
        project="my-project-name",
        location="us-central1",
        ingress="INGRESS_TRAFFIC_ALL",
        template=gcp.cloudrunv2.ServiceTemplateArgs(
            containers=[gcp.cloudrunv2.ServiceTemplateContainerArgs(
                image="us-docker.pkg.dev/cloudrun/container/hello",
            )],
        ),
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_hosting_version = gcp.firebase.HostingVersion("defaultHostingVersion",
        site_id=default_hosting_site.site_id,
        config=gcp.firebase.HostingVersionConfigArgs(
            rewrites=[gcp.firebase.HostingVersionConfigRewriteArgs(
                glob="/hello/**",
                run=gcp.firebase.HostingVersionConfigRewriteRunArgs(
                    service_id=default_service.name,
                    region=default_service.location,
                ),
            )],
        ),
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_hosting_release = gcp.firebase.HostingRelease("defaultHostingRelease",
        site_id=default_hosting_site.site_id,
        version_name=default_hosting_version.name,
        message="Cloud Run Integration",
        opts=pulumi.ResourceOptions(provider=google_beta))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const defaultHostingSite = new gcp.firebase.HostingSite("defaultHostingSite", {
        project: "my-project-name",
        siteId: "site-id",
    }, {
        provider: google_beta,
    });
    const defaultService = new gcp.cloudrunv2.Service("defaultService", {
        project: "my-project-name",
        location: "us-central1",
        ingress: "INGRESS_TRAFFIC_ALL",
        template: {
            containers: [{
                image: "us-docker.pkg.dev/cloudrun/container/hello",
            }],
        },
    }, {
        provider: google_beta,
    });
    const defaultHostingVersion = new gcp.firebase.HostingVersion("defaultHostingVersion", {
        siteId: defaultHostingSite.siteId,
        config: {
            rewrites: [{
                glob: "/hello/**",
                run: {
                    serviceId: defaultService.name,
                    region: defaultService.location,
                },
            }],
        },
    }, {
        provider: google_beta,
    });
    const defaultHostingRelease = new gcp.firebase.HostingRelease("defaultHostingRelease", {
        siteId: defaultHostingSite.siteId,
        versionName: defaultHostingVersion.name,
        message: "Cloud Run Integration",
    }, {
        provider: google_beta,
    });
    
    resources:
      defaultHostingSite:
        type: gcp:firebase:HostingSite
        properties:
          project: my-project-name
          siteId: site-id
        options:
          provider: ${["google-beta"]}
      defaultService:
        type: gcp:cloudrunv2:Service
        properties:
          project: my-project-name
          location: us-central1
          # Warning: allows all public traffic
          ingress: INGRESS_TRAFFIC_ALL
          template:
            containers:
              - image: us-docker.pkg.dev/cloudrun/container/hello
        options:
          provider: ${["google-beta"]}
      defaultHostingVersion:
        type: gcp:firebase:HostingVersion
        properties:
          siteId: ${defaultHostingSite.siteId}
          config:
            rewrites:
              - glob: /hello/**
                run:
                  serviceId: ${defaultService.name}
                  region: ${defaultService.location}
        options:
          provider: ${["google-beta"]}
      defaultHostingRelease:
        type: gcp:firebase:HostingRelease
        properties:
          siteId: ${defaultHostingSite.siteId}
          versionName: ${defaultHostingVersion.name}
          message: Cloud Run Integration
        options:
          provider: ${["google-beta"]}
    

    Firebasehosting Version Cloud Functions

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var defaultHostingSite = new Gcp.Firebase.HostingSite("defaultHostingSite", new()
        {
            Project = "my-project-name",
            SiteId = "site-id",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var bucket = new Gcp.Storage.Bucket("bucket", new()
        {
            Project = "my-project-name",
            Location = "US",
            UniformBucketLevelAccess = true,
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var @object = new Gcp.Storage.BucketObject("object", new()
        {
            Bucket = bucket.Name,
            Source = new FileAsset("function-source.zip"),
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        // Add path to the zipped function source code
        var function = new Gcp.CloudFunctions.Function("function", new()
        {
            Project = "my-project-name",
            Description = "A Cloud Function connected to Firebase Hosing",
            Runtime = "nodejs16",
            AvailableMemoryMb = 128,
            SourceArchiveBucket = bucket.Name,
            SourceArchiveObject = @object.Name,
            TriggerHttp = true,
            EntryPoint = "helloHttp",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultHostingVersion = new Gcp.Firebase.HostingVersion("defaultHostingVersion", new()
        {
            SiteId = defaultHostingSite.SiteId,
            Config = new Gcp.Firebase.Inputs.HostingVersionConfigArgs
            {
                Rewrites = new[]
                {
                    new Gcp.Firebase.Inputs.HostingVersionConfigRewriteArgs
                    {
                        Glob = "/hello/**",
                        Function = function.Name,
                    },
                },
            },
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
        var defaultHostingRelease = new Gcp.Firebase.HostingRelease("defaultHostingRelease", new()
        {
            SiteId = defaultHostingSite.SiteId,
            VersionName = defaultHostingVersion.Name,
            Message = "Cloud Functions Integration",
        }, new CustomResourceOptions
        {
            Provider = google_beta,
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/cloudfunctions"
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/firebase"
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultHostingSite, err := firebase.NewHostingSite(ctx, "defaultHostingSite", &firebase.HostingSiteArgs{
    			Project: pulumi.String("my-project-name"),
    			SiteId:  pulumi.String("site-id"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		bucket, err := storage.NewBucket(ctx, "bucket", &storage.BucketArgs{
    			Project:                  pulumi.String("my-project-name"),
    			Location:                 pulumi.String("US"),
    			UniformBucketLevelAccess: pulumi.Bool(true),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		object, err := storage.NewBucketObject(ctx, "object", &storage.BucketObjectArgs{
    			Bucket: bucket.Name,
    			Source: pulumi.NewFileAsset("function-source.zip"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		function, err := cloudfunctions.NewFunction(ctx, "function", &cloudfunctions.FunctionArgs{
    			Project:             pulumi.String("my-project-name"),
    			Description:         pulumi.String("A Cloud Function connected to Firebase Hosing"),
    			Runtime:             pulumi.String("nodejs16"),
    			AvailableMemoryMb:   pulumi.Int(128),
    			SourceArchiveBucket: bucket.Name,
    			SourceArchiveObject: object.Name,
    			TriggerHttp:         pulumi.Bool(true),
    			EntryPoint:          pulumi.String("helloHttp"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		defaultHostingVersion, err := firebase.NewHostingVersion(ctx, "defaultHostingVersion", &firebase.HostingVersionArgs{
    			SiteId: defaultHostingSite.SiteId,
    			Config: &firebase.HostingVersionConfigArgs{
    				Rewrites: firebase.HostingVersionConfigRewriteArray{
    					&firebase.HostingVersionConfigRewriteArgs{
    						Glob:     pulumi.String("/hello/**"),
    						Function: function.Name,
    					},
    				},
    			},
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		_, err = firebase.NewHostingRelease(ctx, "defaultHostingRelease", &firebase.HostingReleaseArgs{
    			SiteId:      defaultHostingSite.SiteId,
    			VersionName: defaultHostingVersion.Name,
    			Message:     pulumi.String("Cloud Functions Integration"),
    		}, pulumi.Provider(google_beta))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.firebase.HostingSite;
    import com.pulumi.gcp.firebase.HostingSiteArgs;
    import com.pulumi.gcp.storage.Bucket;
    import com.pulumi.gcp.storage.BucketArgs;
    import com.pulumi.gcp.storage.BucketObject;
    import com.pulumi.gcp.storage.BucketObjectArgs;
    import com.pulumi.gcp.cloudfunctions.Function;
    import com.pulumi.gcp.cloudfunctions.FunctionArgs;
    import com.pulumi.gcp.firebase.HostingVersion;
    import com.pulumi.gcp.firebase.HostingVersionArgs;
    import com.pulumi.gcp.firebase.inputs.HostingVersionConfigArgs;
    import com.pulumi.gcp.firebase.HostingRelease;
    import com.pulumi.gcp.firebase.HostingReleaseArgs;
    import com.pulumi.resources.CustomResourceOptions;
    import com.pulumi.asset.FileAsset;
    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 defaultHostingSite = new HostingSite("defaultHostingSite", HostingSiteArgs.builder()        
                .project("my-project-name")
                .siteId("site-id")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var bucket = new Bucket("bucket", BucketArgs.builder()        
                .project("my-project-name")
                .location("US")
                .uniformBucketLevelAccess(true)
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var object = new BucketObject("object", BucketObjectArgs.builder()        
                .bucket(bucket.name())
                .source(new FileAsset("function-source.zip"))
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var function = new Function("function", FunctionArgs.builder()        
                .project("my-project-name")
                .description("A Cloud Function connected to Firebase Hosing")
                .runtime("nodejs16")
                .availableMemoryMb(128)
                .sourceArchiveBucket(bucket.name())
                .sourceArchiveObject(object.name())
                .triggerHttp(true)
                .entryPoint("helloHttp")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultHostingVersion = new HostingVersion("defaultHostingVersion", HostingVersionArgs.builder()        
                .siteId(defaultHostingSite.siteId())
                .config(HostingVersionConfigArgs.builder()
                    .rewrites(HostingVersionConfigRewriteArgs.builder()
                        .glob("/hello/**")
                        .function(function.name())
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
            var defaultHostingRelease = new HostingRelease("defaultHostingRelease", HostingReleaseArgs.builder()        
                .siteId(defaultHostingSite.siteId())
                .versionName(defaultHostingVersion.name())
                .message("Cloud Functions Integration")
                .build(), CustomResourceOptions.builder()
                    .provider(google_beta)
                    .build());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    default_hosting_site = gcp.firebase.HostingSite("defaultHostingSite",
        project="my-project-name",
        site_id="site-id",
        opts=pulumi.ResourceOptions(provider=google_beta))
    bucket = gcp.storage.Bucket("bucket",
        project="my-project-name",
        location="US",
        uniform_bucket_level_access=True,
        opts=pulumi.ResourceOptions(provider=google_beta))
    object = gcp.storage.BucketObject("object",
        bucket=bucket.name,
        source=pulumi.FileAsset("function-source.zip"),
        opts=pulumi.ResourceOptions(provider=google_beta))
    # Add path to the zipped function source code
    function = gcp.cloudfunctions.Function("function",
        project="my-project-name",
        description="A Cloud Function connected to Firebase Hosing",
        runtime="nodejs16",
        available_memory_mb=128,
        source_archive_bucket=bucket.name,
        source_archive_object=object.name,
        trigger_http=True,
        entry_point="helloHttp",
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_hosting_version = gcp.firebase.HostingVersion("defaultHostingVersion",
        site_id=default_hosting_site.site_id,
        config=gcp.firebase.HostingVersionConfigArgs(
            rewrites=[gcp.firebase.HostingVersionConfigRewriteArgs(
                glob="/hello/**",
                function=function.name,
            )],
        ),
        opts=pulumi.ResourceOptions(provider=google_beta))
    default_hosting_release = gcp.firebase.HostingRelease("defaultHostingRelease",
        site_id=default_hosting_site.site_id,
        version_name=default_hosting_version.name,
        message="Cloud Functions Integration",
        opts=pulumi.ResourceOptions(provider=google_beta))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const defaultHostingSite = new gcp.firebase.HostingSite("defaultHostingSite", {
        project: "my-project-name",
        siteId: "site-id",
    }, {
        provider: google_beta,
    });
    const bucket = new gcp.storage.Bucket("bucket", {
        project: "my-project-name",
        location: "US",
        uniformBucketLevelAccess: true,
    }, {
        provider: google_beta,
    });
    const object = new gcp.storage.BucketObject("object", {
        bucket: bucket.name,
        source: new pulumi.asset.FileAsset("function-source.zip"),
    }, {
        provider: google_beta,
    });
    // Add path to the zipped function source code
    const _function = new gcp.cloudfunctions.Function("function", {
        project: "my-project-name",
        description: "A Cloud Function connected to Firebase Hosing",
        runtime: "nodejs16",
        availableMemoryMb: 128,
        sourceArchiveBucket: bucket.name,
        sourceArchiveObject: object.name,
        triggerHttp: true,
        entryPoint: "helloHttp",
    }, {
        provider: google_beta,
    });
    const defaultHostingVersion = new gcp.firebase.HostingVersion("defaultHostingVersion", {
        siteId: defaultHostingSite.siteId,
        config: {
            rewrites: [{
                glob: "/hello/**",
                "function": _function.name,
            }],
        },
    }, {
        provider: google_beta,
    });
    const defaultHostingRelease = new gcp.firebase.HostingRelease("defaultHostingRelease", {
        siteId: defaultHostingSite.siteId,
        versionName: defaultHostingVersion.name,
        message: "Cloud Functions Integration",
    }, {
        provider: google_beta,
    });
    
    resources:
      defaultHostingSite:
        type: gcp:firebase:HostingSite
        properties:
          project: my-project-name
          siteId: site-id
        options:
          provider: ${["google-beta"]}
      bucket:
        type: gcp:storage:Bucket
        properties:
          project: my-project-name
          # Every bucket name must be globally unique
          location: US
          uniformBucketLevelAccess: true
        options:
          provider: ${["google-beta"]}
      object:
        type: gcp:storage:BucketObject
        properties:
          bucket: ${bucket.name}
          source:
            fn::FileAsset: function-source.zip
        options:
          provider: ${["google-beta"]}
      function:
        type: gcp:cloudfunctions:Function
        properties:
          project: my-project-name
          description: A Cloud Function connected to Firebase Hosing
          runtime: nodejs16
          availableMemoryMb: 128
          sourceArchiveBucket: ${bucket.name}
          sourceArchiveObject: ${object.name}
          triggerHttp: true
          entryPoint: helloHttp
        options:
          provider: ${["google-beta"]}
      defaultHostingVersion:
        type: gcp:firebase:HostingVersion
        properties:
          siteId: ${defaultHostingSite.siteId}
          config:
            rewrites:
              - glob: /hello/**
                function: ${function.name}
        options:
          provider: ${["google-beta"]}
      defaultHostingRelease:
        type: gcp:firebase:HostingRelease
        properties:
          siteId: ${defaultHostingSite.siteId}
          versionName: ${defaultHostingVersion.name}
          message: Cloud Functions Integration
        options:
          provider: ${["google-beta"]}
    

    Create HostingVersion Resource

    new HostingVersion(name: string, args: HostingVersionArgs, opts?: CustomResourceOptions);
    @overload
    def HostingVersion(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       config: Optional[HostingVersionConfigArgs] = None,
                       site_id: Optional[str] = None)
    @overload
    def HostingVersion(resource_name: str,
                       args: HostingVersionArgs,
                       opts: Optional[ResourceOptions] = None)
    func NewHostingVersion(ctx *Context, name string, args HostingVersionArgs, opts ...ResourceOption) (*HostingVersion, error)
    public HostingVersion(string name, HostingVersionArgs args, CustomResourceOptions? opts = null)
    public HostingVersion(String name, HostingVersionArgs args)
    public HostingVersion(String name, HostingVersionArgs args, CustomResourceOptions options)
    
    type: gcp:firebase:HostingVersion
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args HostingVersionArgs
    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 HostingVersionArgs
    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 HostingVersionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args HostingVersionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args HostingVersionArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

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

    SiteId string

    Required. The ID of the site in which to create this Version.


    Config HostingVersionConfig

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    SiteId string

    Required. The ID of the site in which to create this Version.


    Config HostingVersionConfigArgs

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    siteId String

    Required. The ID of the site in which to create this Version.


    config HostingVersionConfig

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    siteId string

    Required. The ID of the site in which to create this Version.


    config HostingVersionConfig

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    site_id str

    Required. The ID of the site in which to create this Version.


    config HostingVersionConfigArgs

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    siteId String

    Required. The ID of the site in which to create this Version.


    config Property Map

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    Outputs

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

    Id string

    The provider-assigned unique ID for this managed resource.

    Name string

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    VersionId string

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    Id string

    The provider-assigned unique ID for this managed resource.

    Name string

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    VersionId string

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    id String

    The provider-assigned unique ID for this managed resource.

    name String

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    versionId String

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    id string

    The provider-assigned unique ID for this managed resource.

    name string

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    versionId string

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    id str

    The provider-assigned unique ID for this managed resource.

    name str

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    version_id str

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    id String

    The provider-assigned unique ID for this managed resource.

    name String

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    versionId String

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    Look up Existing HostingVersion Resource

    Get an existing HostingVersion 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?: HostingVersionState, opts?: CustomResourceOptions): HostingVersion
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            config: Optional[HostingVersionConfigArgs] = None,
            name: Optional[str] = None,
            site_id: Optional[str] = None,
            version_id: Optional[str] = None) -> HostingVersion
    func GetHostingVersion(ctx *Context, name string, id IDInput, state *HostingVersionState, opts ...ResourceOption) (*HostingVersion, error)
    public static HostingVersion Get(string name, Input<string> id, HostingVersionState? state, CustomResourceOptions? opts = null)
    public static HostingVersion get(String name, Output<String> id, HostingVersionState 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:
    Config HostingVersionConfig

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    Name string

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    SiteId string

    Required. The ID of the site in which to create this Version.


    VersionId string

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    Config HostingVersionConfigArgs

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    Name string

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    SiteId string

    Required. The ID of the site in which to create this Version.


    VersionId string

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    config HostingVersionConfig

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    name String

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    siteId String

    Required. The ID of the site in which to create this Version.


    versionId String

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    config HostingVersionConfig

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    name string

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    siteId string

    Required. The ID of the site in which to create this Version.


    versionId string

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    config HostingVersionConfigArgs

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    name str

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    site_id str

    Required. The ID of the site in which to create this Version.


    version_id str

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    config Property Map

    The configuration for the behavior of the site. This configuration exists in the firebase.json file. Structure is documented below.

    name String

    The fully-qualified resource name for the version, in the format: sites/SITE_ID/versions/VERSION_ID

    siteId String

    Required. The ID of the site in which to create this Version.


    versionId String

    The ID for the version as in sites/SITE_ID/versions/VERSION_ID

    Supporting Types

    HostingVersionConfig, HostingVersionConfigArgs

    Redirects List<HostingVersionConfigRedirect>

    An array of objects (called redirect rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond with a redirect to the specified destination path. Structure is documented below.

    Rewrites List<HostingVersionConfigRewrite>

    An array of objects (called rewrite rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond as if the service were given the specified destination URL. Structure is documented below.

    Redirects []HostingVersionConfigRedirect

    An array of objects (called redirect rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond with a redirect to the specified destination path. Structure is documented below.

    Rewrites []HostingVersionConfigRewrite

    An array of objects (called rewrite rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond as if the service were given the specified destination URL. Structure is documented below.

    redirects List<HostingVersionConfigRedirect>

    An array of objects (called redirect rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond with a redirect to the specified destination path. Structure is documented below.

    rewrites List<HostingVersionConfigRewrite>

    An array of objects (called rewrite rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond as if the service were given the specified destination URL. Structure is documented below.

    redirects HostingVersionConfigRedirect[]

    An array of objects (called redirect rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond with a redirect to the specified destination path. Structure is documented below.

    rewrites HostingVersionConfigRewrite[]

    An array of objects (called rewrite rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond as if the service were given the specified destination URL. Structure is documented below.

    redirects Sequence[HostingVersionConfigRedirect]

    An array of objects (called redirect rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond with a redirect to the specified destination path. Structure is documented below.

    rewrites Sequence[HostingVersionConfigRewrite]

    An array of objects (called rewrite rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond as if the service were given the specified destination URL. Structure is documented below.

    redirects List<Property Map>

    An array of objects (called redirect rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond with a redirect to the specified destination path. Structure is documented below.

    rewrites List<Property Map>

    An array of objects (called rewrite rules), where each rule specifies a URL pattern that, if matched to the request URL path, triggers Hosting to respond as if the service were given the specified destination URL. Structure is documented below.

    HostingVersionConfigRedirect, HostingVersionConfigRedirectArgs

    Location string

    The value to put in the HTTP location header of the response. The location can contain capture group values from the pattern using a : prefix to identify the segment and an optional * to capture the rest of the URL. For example:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    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) {
        }
    }
    
    {}
    
    StatusCode int

    The status HTTP code to return in the response. It must be a valid 3xx status code.

    Glob string

    The user-supplied glob to match against the request URL path.

    Regex string

    The user-supplied RE2 regular expression to match against the request URL path.

    Location string

    The value to put in the HTTP location header of the response. The location can contain capture group values from the pattern using a : prefix to identify the segment and an optional * to capture the rest of the URL. For example:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    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) {
        }
    }
    
    {}
    
    StatusCode int

    The status HTTP code to return in the response. It must be a valid 3xx status code.

    Glob string

    The user-supplied glob to match against the request URL path.

    Regex string

    The user-supplied RE2 regular expression to match against the request URL path.

    location String

    The value to put in the HTTP location header of the response. The location can contain capture group values from the pattern using a : prefix to identify the segment and an optional * to capture the rest of the URL. For example:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    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) {
        }
    }
    
    {}
    
    statusCode Integer

    The status HTTP code to return in the response. It must be a valid 3xx status code.

    glob String

    The user-supplied glob to match against the request URL path.

    regex String

    The user-supplied RE2 regular expression to match against the request URL path.

    location string

    The value to put in the HTTP location header of the response. The location can contain capture group values from the pattern using a : prefix to identify the segment and an optional * to capture the rest of the URL. For example:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    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) {
        }
    }
    
    {}
    
    statusCode number

    The status HTTP code to return in the response. It must be a valid 3xx status code.

    glob string

    The user-supplied glob to match against the request URL path.

    regex string

    The user-supplied RE2 regular expression to match against the request URL path.

    location str

    The value to put in the HTTP location header of the response. The location can contain capture group values from the pattern using a : prefix to identify the segment and an optional * to capture the rest of the URL. For example:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    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) {
        }
    }
    
    {}
    
    status_code int

    The status HTTP code to return in the response. It must be a valid 3xx status code.

    glob str

    The user-supplied glob to match against the request URL path.

    regex str

    The user-supplied RE2 regular expression to match against the request URL path.

    location String

    The value to put in the HTTP location header of the response. The location can contain capture group values from the pattern using a : prefix to identify the segment and an optional * to capture the rest of the URL. For example:

    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    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) {
        }
    }
    
    {}
    
    statusCode Number

    The status HTTP code to return in the response. It must be a valid 3xx status code.

    glob String

    The user-supplied glob to match against the request URL path.

    regex String

    The user-supplied RE2 regular expression to match against the request URL path.

    HostingVersionConfigRewrite, HostingVersionConfigRewriteArgs

    Function string

    The function to proxy requests to. Must match the exported function name exactly.

    Glob string

    The user-supplied glob to match against the request URL path.

    Regex string

    The user-supplied RE2 regular expression to match against the request URL path.

    Run HostingVersionConfigRewriteRun

    The request will be forwarded to Cloud Run. Structure is documented below.

    Function string

    The function to proxy requests to. Must match the exported function name exactly.

    Glob string

    The user-supplied glob to match against the request URL path.

    Regex string

    The user-supplied RE2 regular expression to match against the request URL path.

    Run HostingVersionConfigRewriteRun

    The request will be forwarded to Cloud Run. Structure is documented below.

    function String

    The function to proxy requests to. Must match the exported function name exactly.

    glob String

    The user-supplied glob to match against the request URL path.

    regex String

    The user-supplied RE2 regular expression to match against the request URL path.

    run HostingVersionConfigRewriteRun

    The request will be forwarded to Cloud Run. Structure is documented below.

    function string

    The function to proxy requests to. Must match the exported function name exactly.

    glob string

    The user-supplied glob to match against the request URL path.

    regex string

    The user-supplied RE2 regular expression to match against the request URL path.

    run HostingVersionConfigRewriteRun

    The request will be forwarded to Cloud Run. Structure is documented below.

    function str

    The function to proxy requests to. Must match the exported function name exactly.

    glob str

    The user-supplied glob to match against the request URL path.

    regex str

    The user-supplied RE2 regular expression to match against the request URL path.

    run HostingVersionConfigRewriteRun

    The request will be forwarded to Cloud Run. Structure is documented below.

    function String

    The function to proxy requests to. Must match the exported function name exactly.

    glob String

    The user-supplied glob to match against the request URL path.

    regex String

    The user-supplied RE2 regular expression to match against the request URL path.

    run Property Map

    The request will be forwarded to Cloud Run. Structure is documented below.

    HostingVersionConfigRewriteRun, HostingVersionConfigRewriteRunArgs

    ServiceId string

    User-defined ID of the Cloud Run service.

    Region string

    Optional. User-provided region where the Cloud Run service is hosted. Defaults to us-central1 if not supplied.

    ServiceId string

    User-defined ID of the Cloud Run service.

    Region string

    Optional. User-provided region where the Cloud Run service is hosted. Defaults to us-central1 if not supplied.

    serviceId String

    User-defined ID of the Cloud Run service.

    region String

    Optional. User-provided region where the Cloud Run service is hosted. Defaults to us-central1 if not supplied.

    serviceId string

    User-defined ID of the Cloud Run service.

    region string

    Optional. User-provided region where the Cloud Run service is hosted. Defaults to us-central1 if not supplied.

    service_id str

    User-defined ID of the Cloud Run service.

    region str

    Optional. User-provided region where the Cloud Run service is hosted. Defaults to us-central1 if not supplied.

    serviceId String

    User-defined ID of the Cloud Run service.

    region String

    Optional. User-provided region where the Cloud Run service is hosted. Defaults to us-central1 if not supplied.

    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 v6.67.0 published on Wednesday, Sep 27, 2023 by Pulumi