- Home
- Skills
- Firebase
- Firebase Tools
- Update Pubsub Emulator
update-pubsub-emulator_skill
- TypeScript
4.3k
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill firebase/firebase-tools --skill update-pubsub-emulator- SKILL.md2.6 KB
Overview
This skill explains how to update the Google Cloud Pub/Sub emulator used by Firebase emulators. It walks through obtaining the latest emulator, packaging and uploading the artifact, updating emulator metadata, and verifying the new version runs locally. The goal is a reproducible, verifiable update process so the emulator downloads and starts correctly for all developers and CI systems.
How this skill works
The process checks for the latest emulator via gcloud, locates the installed emulator directory, and packages it into a zip with the expected internal layout. The zip is uploaded to a storage bucket, checksums and file size are calculated, and the emulator metadata JSON is updated so the Firebase tooling can download the new version. Finally, the emulators are started to verify the update.
When to use it
- Releasing a new Pub/Sub emulator version to developer machines or CI
- Updating emulator metadata after packaging a fixed or patched binary
- Replacing an out-of-date emulator that fails to start or behaves inconsistently
- Preparing a controlled emulator rollout for a team or organization
Best practices
- Confirm the gcloud-managed emulator is up-to-date before packaging (gcloud components update pubsub-emulator).
- Keep the zip root folder named pubsub-emulator so cache paths resolve correctly.
- Record exact size and both MD5 and SHA256 checksums to ensure download integrity.
- Upload artifacts to a controlled storage bucket and validate public access or appropriate ACLs before publishing metadata changes.
- Run firebase emulators:start --only pubsub locally to verify download and startup before announcing the update.
Example use cases
- Publish a patched emulator binary after fixing a runtime bug that caused crashes in integration tests.
- Roll out a newer emulator version to CI so nightly builds use the same local Pub/Sub behavior developers have locally.
- Replace an emulator that changed internal paths by re-packaging with the correct top-level directory layout.
- Validate checksum mismatches by recalculating MD5 and SHA256 and updating the metadata JSON accordingly.
FAQ
The top-level directory inside the zip must be named pubsub-emulator and include the bin/cloud-pubsub-emulator binary at pubsub-emulator/bin/cloud-pubsub-emulator so the cache path matches expectations.
Which checksums do I need to record?
Record both MD5 (expectedChecksum) and SHA256 (expectedChecksumSHA256), plus the exact file size in bytes (expectedSize) to ensure integrity and correct metadata.
How do I verify the new emulator is used after publishing metadata?
Run firebase emulators:start --only pubsub and observe the download step and startup logs; confirm the VERSION file or emulator output reports the new version.