Skip to content

feat(demos): add GCP Cloud Armor sync demo tape and gif - #274

Merged
gfargo merged 2 commits into
mainfrom
docs/gcp-sync-demo
Aug 24, 2026
Merged

feat(demos): add GCP Cloud Armor sync demo tape and gif#274
gfargo merged 2 commits into
mainfrom
docs/gcp-sync-demo

Conversation

@gfargo

@gfargo gfargo commented Aug 24, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a VHS-recorded doorman sync demo for GCP, matching the existing sync.gif (Vercel)/cloudflare-sync.gif/fastly-sync.gif pattern used on the marketing site's homepage provider switcher.

  • demos/tapes/gcp-sync.tape — the recording recipe
  • demos/fixtures/gcp-demo-local.doorman.json / gcp-demo-remote.json — purpose-built demo fixtures telling a clean single-add story (mirrors sync-local/sync-remote's shape), rather than reusing the cloudarmor-sync-* fixtures built for unit-test coverage, which produce a busier mixed diff
  • assets/demos/gcp-sync.gif — the rendered, gifsicle-optimized output (197KB)

One real difference from the other three tapes, called out in the tape's own header comment: GCP's GoogleAuth still mints a real OAuth2 access token against Google's real infrastructure even when the actual securityPolicies traffic is routed to the local mock server — there's no way to fake that locally. This tape was recorded using my own gcloud auth application-default login session; re-recording it requires live GCP credentials (documented in gcp.md's "Manual End-to-End Verification" section). Verified the full interactive flow manually and timed it before writing the tape, so the Sleep windows are calibrated against real measurements, not guessed.

Also includes a small formatting-only commit (pre-existing prettier drift the pre-commit hook's repo-wide format:fix surfaced in SKILL.md/cloudflare.md/fastly.md/gcp.md — unrelated to this change, no functional difference).

Test plan

  • Verified the underlying sync flow manually (real ADC token + mock backend) before writing the tape
  • Confirmed the demo fixtures produce the intended clean "1 rule to add" diff, with the already-synced rule correctly showing zero drift
  • Rendered via the existing ./demos/capture.sh gcp-sync pipeline (build → vhs → gifsicle -O3)
  • Extracted and visually inspected frames across the recording (confirmation prompt, completion message) — clean, no cut-off content, ends on a fresh prompt

gfargo added 2 commits August 24, 2026 11:58
Purpose-built demo fixtures (gcp-demo-local.doorman.json/gcp-demo-remote.json)
telling the same clean single-add story as the Vercel demo (sync-local/
sync-remote) — one rule already in sync, one new rule to add — rather than
reusing the cloudarmor-sync-* fixtures built for unit-test coverage, which
produce a busier mixed add/update/delete diff not ideal for a marketing GIF.
The already-synced rule explicitly carries `description`/`priority` so it
reads as unchanged rather than a spurious update, per this session's own
real-e2e finding about GCP's sync/download field parity.

Unlike Cloudflare/Fastly/Vercel's tapes, this one genuinely cannot be fully
offline: GoogleAuth still mints a real OAuth2 token against Google's real
infrastructure (the recorder's own `gcloud auth application-default login`
session) even though the actual securityPolicies traffic is routed to
cloudarmor-mock-server.mjs. Verified the full interactive flow (real token,
mocked backend, real confirmation prompt) before writing the tape, and timed
it to calibrate Sleep windows generously rather than guessing. Re-recording
requires live GCP credentials — documented in gcp.md's "Manual End-to-End
Verification" section.
Incidental cleanup surfaced by the pre-commit hook's repo-wide format:fix
step while working on the GCP demo tape — no functional change.
@gfargo
gfargo merged commit 35804b2 into main Aug 24, 2026
2 checks passed
@gfargo
gfargo deleted the docs/gcp-sync-demo branch August 24, 2026 17:37
github-actions Bot pushed a commit that referenced this pull request Aug 24, 2026
# [3.15.0](v3.14.2...v3.15.0) (2026-08-24)

### Features

* **demos:** add GCP Cloud Armor sync demo tape and gif ([#274](#274)) ([35804b2](35804b2))
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 3.15.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant