WebAppArgs

data class WebAppArgs(val apiKeyId: Output<String>? = null, val deletionPolicy: Output<String>? = null, val displayName: Output<String>? = null, val project: Output<String>? = null) : ConvertibleToJava<WebAppArgs>

A Google Cloud Firebase web application instance To get more information about WebApp, see:

Example Usage

Firebase Web App Custom Api Key

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const web = new gcp.projects.ApiKey("web", {
project: "my-project-name",
name: "api-key",
displayName: "Display Name",
restrictions: {
browserKeyRestrictions: {
allowedReferrers: ["*"],
},
},
});
const _default = new gcp.firebase.WebApp("default", {
project: "my-project-name",
displayName: "Display Name",
apiKeyId: web.uid,
deletionPolicy: "DELETE",
});
import pulumi
import pulumi_gcp as gcp
web = gcp.projects.ApiKey("web",
project="my-project-name",
name="api-key",
display_name="Display Name",
restrictions={
"browser_key_restrictions": {
"allowed_referrers": ["*"],
},
})
default = gcp.firebase.WebApp("default",
project="my-project-name",
display_name="Display Name",
api_key_id=web.uid,
deletion_policy="DELETE")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var web = new Gcp.Projects.ApiKey("web", new()
{
Project = "my-project-name",
Name = "api-key",
DisplayName = "Display Name",
Restrictions = new Gcp.Projects.Inputs.ApiKeyRestrictionsArgs
{
BrowserKeyRestrictions = new Gcp.Projects.Inputs.ApiKeyRestrictionsBrowserKeyRestrictionsArgs
{
AllowedReferrers = new[]
{
"*",
},
},
},
});
var @default = new Gcp.Firebase.WebApp("default", new()
{
Project = "my-project-name",
DisplayName = "Display Name",
ApiKeyId = web.Uid,
DeletionPolicy = "DELETE",
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/firebase"
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
web, err := projects.NewApiKey(ctx, "web", &projects.ApiKeyArgs{
Project: pulumi.String("my-project-name"),
Name: pulumi.String("api-key"),
DisplayName: pulumi.String("Display Name"),
Restrictions: &projects.ApiKeyRestrictionsArgs{
BrowserKeyRestrictions: &projects.ApiKeyRestrictionsBrowserKeyRestrictionsArgs{
AllowedReferrers: pulumi.StringArray{
pulumi.String("*"),
},
},
},
})
if err != nil {
return err
}
_, err = firebase.NewWebApp(ctx, "default", &firebase.WebAppArgs{
Project: pulumi.String("my-project-name"),
DisplayName: pulumi.String("Display Name"),
ApiKeyId: web.Uid,
DeletionPolicy: pulumi.String("DELETE"),
})
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.projects.ApiKey;
import com.pulumi.gcp.projects.ApiKeyArgs;
import com.pulumi.gcp.projects.inputs.ApiKeyRestrictionsArgs;
import com.pulumi.gcp.projects.inputs.ApiKeyRestrictionsBrowserKeyRestrictionsArgs;
import com.pulumi.gcp.firebase.WebApp;
import com.pulumi.gcp.firebase.WebAppArgs;
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 web = new ApiKey("web", ApiKeyArgs.builder()
.project("my-project-name")
.name("api-key")
.displayName("Display Name")
.restrictions(ApiKeyRestrictionsArgs.builder()
.browserKeyRestrictions(ApiKeyRestrictionsBrowserKeyRestrictionsArgs.builder()
.allowedReferrers("*")
.build())
.build())
.build());
var default_ = new WebApp("default", WebAppArgs.builder()
.project("my-project-name")
.displayName("Display Name")
.apiKeyId(web.uid())
.deletionPolicy("DELETE")
.build());
}
}
resources:
default:
type: gcp:firebase:WebApp
properties:
project: my-project-name
displayName: Display Name
apiKeyId: ${web.uid}
deletionPolicy: DELETE
web:
type: gcp:projects:ApiKey
properties:
project: my-project-name
name: api-key
displayName: Display Name
restrictions:
browserKeyRestrictions:
allowedReferrers:
- '*'

Import

WebApp can be imported using any of these accepted formats:

  • {{project}} projects/{{project}}/webApps/{{app_id}}

  • projects/{{project}}/webApps/{{app_id}}

  • {{project}}/{{project}}/{{app_id}}

  • webApps/{{app_id}}

  • {{app_id}} When using the pulumi import command, WebApp can be imported using one of the formats above. For example:

$ pulumi import gcp:firebase/webApp:WebApp default {{project}} projects/{{project}}/webApps/{{app_id}}
$ pulumi import gcp:firebase/webApp:WebApp default projects/{{project}}/webApps/{{app_id}}
$ pulumi import gcp:firebase/webApp:WebApp default {{project}}/{{project}}/{{app_id}}
$ pulumi import gcp:firebase/webApp:WebApp default webApps/{{app_id}}
$ pulumi import gcp:firebase/webApp:WebApp default {{app_id}}

Constructors

Link copied to clipboard
constructor(apiKeyId: Output<String>? = null, deletionPolicy: Output<String>? = null, displayName: Output<String>? = null, project: Output<String>? = null)

Properties

Link copied to clipboard
val apiKeyId: Output<String>? = null

The globally unique, Google-assigned identifier (UID) for the Firebase API key associated with the WebApp. If apiKeyId is not set during creation, then Firebase automatically associates an apiKeyId with the WebApp. This auto-associated key may be an existing valid key or, if no valid key exists, a new one will be provisioned.

Link copied to clipboard
val deletionPolicy: Output<String>? = null
Link copied to clipboard
val displayName: Output<String>? = null

The user-assigned display name of the App.

Link copied to clipboard
val project: Output<String>? = null

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

Functions

Link copied to clipboard
open override fun toJava(): WebAppArgs