Skip to content

Pin latest Wrangler deploy tooling for worker CI#758

Merged
kentcdodds merged 2 commits intomainfrom
cursor/call-kent-audio-worker-deploy-78fd
Apr 7, 2026
Merged

Pin latest Wrangler deploy tooling for worker CI#758
kentcdodds merged 2 commits intomainfrom
cursor/call-kent-audio-worker-deploy-78fd

Conversation

@kentcdodds
Copy link
Copy Markdown
Owner

@kentcdodds kentcdodds commented Apr 6, 2026

Summary

  • remove the cloudflare/wrangler-action dependency from all 3 worker deploy workflows
  • deploy each worker with the workspace-installed Wrangler CLI via npm exec wrangler -- ...
  • keep the worker workspaces aligned on wrangler@4.80.0 and document that CI should use the repo-installed CLI instead of runner-provided tooling

Fixes #757

Investigation

  • fetched the failing Actions logs for run 24045455017
  • confirmed Docker image build/push succeeded in CI, so the failure was not missing Docker setup
  • identified the actual deploy error from Cloudflare: configuration.observability cannot be modified via PATCH. Use rollout target_configuration.observability or top-level observability instead
  • confirmed the failing workflow was using the runner's preinstalled Wrangler 4.75.0

Testing

  • npm exec --workspace call-kent-audio-worker wrangler -- --version -> 4.80.0
  • npm exec --workspace oauth wrangler -- --version -> 4.80.0
  • npm exec --workspace search-worker wrangler -- --version -> 4.80.0
  • npm run lint --workspace call-kent-audio-worker && npm run typecheck --workspace call-kent-audio-worker && npm run test --workspace call-kent-audio-worker
  • npm run lint --workspace oauth && npm run typecheck --workspace oauth
  • npm run lint --workspace search-worker && npm run typecheck --workspace search-worker && npm run test --workspace search-worker
  • npx prettier --check .github/workflows/deploy-call-kent-audio-worker.yml .github/workflows/deploy-oauth-worker.yml .github/workflows/deploy-search-worker.yml docs/agents/project-context.md
  • npm exec wrangler -- --version from:
    • services/call-kent-audio-worker
    • services/oauth
    • services/search-worker
  • npm exec --workspace call-kent-audio-worker wrangler -- deploy --dry-run reached Wrangler 4.80.0 and then stopped because this Cursor VM does not have a Docker-compatible CLI installed (docker: command not found), so I could not run the local container build to completion here

Notes

  • the search worker lint step still reports two pre-existing warnings in services/search-worker/src/search-results.test.ts; they are unrelated to this change and did not block typecheck/tests
Open in Web Open in Cursor 

Summary by CodeRabbit

  • Chores

    • Updated deployment workflows to use direct CLI invocation for improved consistency with repository dependencies.
    • Upgraded Wrangler CLI tooling to version 4.80.0 across worker services for enhanced stability and features.
    • Migrated deployment credentials handling to environment variables for better security practices.
  • Documentation

    • Updated deployment guidance to reflect current best practices for worker deployments.

Co-authored-by: Kent C. Dodds <me+github@kentcdodds.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 6, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: dba23d98-6ae5-45ae-a013-3a00f43d284a

📥 Commits

Reviewing files that changed from the base of the PR and between 526eb1b and 9de41c2.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (7)
  • .github/workflows/deploy-call-kent-audio-worker.yml
  • .github/workflows/deploy-oauth-worker.yml
  • .github/workflows/deploy-search-worker.yml
  • docs/agents/project-context.md
  • services/call-kent-audio-worker/package.json
  • services/oauth/package.json
  • services/search-worker/package.json

📝 Walkthrough

Walkthrough

Three GitHub Actions deploy workflows replaced Cloudflare's wrangler-action@v3 with direct npm-executed wrangler CLI invocation. Wrangler development dependencies in three service packages were updated to ^4.80.0. Documentation updated to recommend workspace-installed wrangler via npm exec.

Changes

Cohort / File(s) Summary
GitHub Actions Workflows
.github/workflows/deploy-call-kent-audio-worker.yml, .github/workflows/deploy-oauth-worker.yml, .github/workflows/deploy-search-worker.yml
Replaced cloudflare/wrangler-action@v3 action with direct npm exec wrangler -- deploy shell execution. Moved Cloudflare credentials from action inputs (apiToken, accountId) to environment variables (CLOUDFLARE_API_TOKEN, CLOUDFLARE_ACCOUNT_ID), and working directory to step-level working-directory parameter.
Worker Package Dependencies
services/call-kent-audio-worker/package.json, services/oauth/package.json, services/search-worker/package.json
Updated wrangler development dependency to ^4.80.0 across all three worker services.
Documentation
docs/agents/project-context.md
Updated Non-obvious caveats section to mandate use of workspace-installed Wrangler CLI via npm exec wrangler -- ... in CI deploy workflows instead of cloudflare/wrangler-action or preinstalled runner versions.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • PR #587: Modifies wrangler usage/versioning and CI deploy tooling; shares similar pattern of wrangler CLI refactoring and dependency version alignment.

Poem

🐰 A rabbit hops through workflows anew,
No more actions—just npm will do!
Wrangler updated, from four-seventy to eighty,
Deploying with elegance, crisp and weighty!
The worker scripts dance in direct command,
As dependencies bloom across services' land. 🌿

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the primary change: updating Wrangler tooling and pinning it to the latest version for worker CI deployments.
Linked Issues check ✅ Passed The PR fully addresses issue #757 by diagnosing the wrangler-action incompatibility, upgrading all workers to wrangler@4.80.0, removing the deprecated action, and using the repo-installed CLI via npm exec instead.
Out of Scope Changes check ✅ Passed All changes are directly related to the issue objectives: workflow updates, wrangler version bumps, and documentation of the new deployment approach. No unrelated modifications are present.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/call-kent-audio-worker-deploy-78fd

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Co-authored-by: Kent C. Dodds <me+github@kentcdodds.com>
@kentcdodds kentcdodds marked this pull request as ready for review April 6, 2026 19:54
@kentcdodds kentcdodds merged commit 22ca6f1 into main Apr 7, 2026
11 checks passed
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.

CI: Deploy Call Kent Audio Worker fails — wrangler-action@v3 + Cloudflare Containers issue

2 participants