Skip to content

Conversation

rwhogg
Copy link
Contributor

@rwhogg rwhogg commented Oct 6, 2025

Description

Add support for Firestore Database Clone

Scenarios Tested

  • Clone database without specifying timestamp
  • Clone database with specified timestamp
  • Clone to database that already exists (error)
  • Clone to database with explicit Google-default encryption
  • Clone to database with explicit keep-the-same-encryption config (the default)
  • Clone to database with explicitly chosen KMS key
  • Specify KMS key without explicitly choosing CMEK encryption (error)
  • Specify customer-managed encryption without picking a CMEK key (error)

Sample Commands

  • firebase firestore:databases:clone projects/myproject/databases/original-db projects/myproject/databases/clone (chooses most recent available snapshot)
  • firebase firestore:databases:clone projects/myproject/databases/original-db projects/myproject/databases/clone2 --snapshot-time 2025-10-06T10:00:00Z (uses selected snapshot time)
  • firebase firestore:databases:clone projects/myproject/databases/original-db projects/myproject/databases/db-with-same-encryption --snapshot-time 2025-10-06T10:00:00Z --encryption-type USE_SOURCE_ENCRYPTION
  • firebase firestore:databases:clone projects/myproject/databases/original-db projects/myproject/databases/db-with-kms-encryption --snapshot-time 2025-10-06T10:00:00Z --encryption-type CUSTOMER_MANAGED_ENCRYPTION --kms-key-name projects/myproject/locations/us-central1/keyRings/testkeyring/cryptoKeys/k1
  • firebase firestore:databases:clone projects/myproject/databases/original-db projects/myproject/databases/db-with-google-managed-encryption --snapshot-time 2025-10-06T10:00:00Z --encryption-type GOOGLE_DEFAULT_ENCRYPTION

@rwhogg rwhogg marked this pull request as ready for review October 6, 2025 15:39
@rwhogg rwhogg force-pushed the rh-firestore-clone branch from 62d50d7 to 610c8ed Compare October 6, 2025 15:42
@rwhogg rwhogg force-pushed the rh-firestore-clone branch from 610c8ed to 224e9f8 Compare October 6, 2025 18:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant