google_firebase_extensions_instance

An Instance is an installation of an Extension into a user's project.

To get more information about Instance, see:

Example Usage - Firebase Extentions Instance Resize Image

resource "google_storage_bucket" "images" {
  provider                    = google-beta
  project                     = "my-project-name"
  name                        = "bucket-id"
  location                    = "US"
  uniform_bucket_level_access = true

  # Delete all objects when the bucket is deleted
  force_destroy = true
}

resource "google_firebase_extensions_instance" "resize_image" {
  provider = google-beta
  project  = "my-project-name"
  instance_id = "storage-resize-images"
  config {
    extension_ref = "firebase/storage-resize-images"
    extension_version = "0.2.2"

    # The following params apply to the firebase/storage-resize-images extension. 
    # Different extensions may have different params
    params = {
      DELETE_ORIGINAL_FILE = false
      MAKE_PUBLIC          = false
      IMAGE_TYPE           = false
      IS_ANIMATED          = true
      FUNCTION_MEMORY      = 1024
      DO_BACKFILL          = false
      IMG_SIZES            = "200x200"
      IMG_BUCKET           = google_storage_bucket.images.name
    }

    system_params = {
      "firebaseextensions.v1beta.function/location"                   = ""
      "firebaseextensions.v1beta.function/maxInstances"               = 3000
      "firebaseextensions.v1beta.function/minInstances"               = 0
      "firebaseextensions.v1beta.function/vpcConnectorEgressSettings" = "VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED"
    }

    allowed_event_types = [
      "firebase.extensions.storage-resize-images.v1.onCompletion"
    ]

    eventarc_channel = "projects/my-project-name/locations//channels/firebase"
  }
}

Argument Reference

The following arguments are supported:

The config block supports:


Attributes Reference

In addition to the arguments listed above, the following computed attributes are exported:

The error_status block contains:

The runtime_data block contains:

The processing_state block supports:

The fatal_error block supports:

Timeouts

This resource provides the following Timeouts configuration options:

Import

Instance can be imported using any of these accepted formats:

In Terraform v1.5.0 and later, use an import block to import Instance using one of the formats above. For example:

import {
  id = "projects/{{project}}/instances/{{instance_id}}"
  to = google_firebase_extensions_instance.default
}

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

$ terraform import google_firebase_extensions_instance.default projects/{{project}}/instances/{{instance_id}}
$ terraform import google_firebase_extensions_instance.default {{project}}/{{instance_id}}
$ terraform import google_firebase_extensions_instance.default {{instance_id}}

User Project Overrides

This resource supports User Project Overrides.