Google Firestore Document

This page shows how to write Terraform for Firestore Document and write them securely.

google_firestore_document (Terraform)

The Document in Firestore can be configured in Terraform with the resource name google_firestore_document. The following sections describe 4 examples of how to use the resource and its parameters.

Example Usage from GitHub

firestore-sample-data.tf#L2
resource "google_firestore_document" "store_1" {
  count = var.generate-sample-data ? 1 : 0
  project = var.gcp_project
  collection = "store"
  document_id = "b13ee4d6-d1b2-403e-bd3d-3779760fa2a9"
  fields      = <<EOT
main.tf#L34
resource "google_firestore_document" "config" {
  project     = var.project
  depends_on = [time_sleep.wait_30_seconds]
  collection  = "tontocloudwalk"
  document_id = "config"
  fields      = jsonencode(
firestore.tf#L1
resource "google_firestore_document" "mydoc" {
  project     = var.config["project"]
  collection  = "list"
  document_id = "users"
  fields      = file("list.json")
}
firestore.tf#L1
resource "google_firestore_document" "mydoc" {
  project     = var.config["project"]
  collection  = "list"
  document_id = "users"
  fields      = file("list.json")
}

Review your Terraform file for Google best practices

Shisho Cloud, our free checker to make sure your Terraform configuration follows best practices, is available (beta).

Parameters

The collection ID, relative to database. For example: chatrooms or chatrooms/my-document/private-messages.

Creation timestamp in RFC3339 format.

The Firestore database id. Defaults to '"(default)"'.

The client-assigned document ID to use for this document during creation.

The document's fields formated as a json string.

  • id optional computed - string
  • name optional computed - string

A server defined name for this index. Format: 'projects/[[project_id]]/databases/[[database_id]]/documents/[[path]]/[[document_id]]'

  • path optional computed - string

A relative path to the collection this document exists within

Last update timestamp in RFC3339 format.

Explanation in Terraform Registry

In Cloud Firestore, the unit of storage is the document. A document is a lightweight record that contains fields, which map to values. Each document is identified by a name. To get more information about Document, see:

  • API documentation
  • How-to Guides
    • Official Documentation

      Warning: This resource creates a Firestore Document on a project that already has Firestore enabled. If you haven't already enabled it, you can create a google_app_engine_application resource with database_type set to "CLOUD_FIRESTORE" to do so. Your Firestore location will be the same as the App Engine location specified.

Frequently asked questions

What is Google Firestore Document?

Google Firestore Document is a resource for Firestore of Google Cloud Platform. Settings can be wrote in Terraform.

Where can I find the example code for the Google Firestore Document?

For Terraform, the billietl/price-comparator, LeoMarangoni/tonto.cloudwalk.io and alisahp/gcp source code examples are useful. See the Terraform Example section for further details.

security-icon

Automate config file reviews on your commits

Fix issues in your infrastructure as code with auto-generated patches.