Provides real-time synchronization between GCP Firestore instances across regions using Pub/Sub, packaged as a Docker image for deployment on Cloud Run.
- crossfiresync - A Java library enabling real-time synchronization between GCP Firestore instances across regions using Pub/Sub.
- crossfiresyncrun - Provides real-time synchronization between GCP Firestore instances across regions using Pub/Sub, packaged as a Docker image for deployment on Cloud Run.
- crossfiresyncrun-tofu - A module for OpenTofu that deploys crossfiresyncrun to GCP Cloud Run, along with configuring essential services including Firestore and Pub/Sub.
- crossfiresync-firestore - Reference implementation of a crossfiresync Firestore publisher, featuring Java code and deployment scripts for Cloud Functions.
- crossfiresync-pubsub - Reference implementation of a crossfiresync Pub/Sub consumer, featuring Java code and deployment scripts for Cloud Functions.
This application is a variant of crossfiresync that implements the application in Cloud Run instead of a Cloud Function. This is accomplished by utilizing the exact same logic and implementation and simply wrapping that with Spring Boot 3 and allowing that to be built as a Docker container.
This Container for the most recent development version is available on GitHub Packages:
docker pull ghcr.io/unitvectory-labs/crossfiresyncrun:dev
The implementation for crossfiresyncrun has one endpoint for receiving the events from Firestore and another for receiving events from Pub/Sub via Eventarc.
The /firestore
endpoint receives the google.cloud.firestore.document.v1.written
events from Eventarc.
The /pubsub
endpoint receives the google.cloud.pubsub.topic.v1.messagePublished
events from Eventarc.