chore: notify Slack after frontend production deploy - #8340
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 3 Skipped Deployments
|
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 8 included reviews per hour; 3 remain after this review. 📝 WalkthroughWalkthroughThe change adds a composite Slack notification action. The action accepts deployment inputs, builds an escaped Block Kit payload, and sends it with Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: 🟡 Moderate · up to This change adds Slack notifications to production deployment workflows, but the current implementation still allows mutable or unpinned actions and test runs that can repeatedly or falsely announce production deployments. The PR is not merge-ready until these bounded security and notification-correctness risks are fixed or explicitly accepted. ✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
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. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8340 +/- ##
=======================================
Coverage 98.78% 98.78%
=======================================
Files 1609 1609
Lines 64578 64578
=======================================
Hits 63794 63794
Misses 784 784 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
a8ddf76 to
d8a748a
Compare
d8a748a to
da93080
Compare
Docker builds report
|
There was a problem hiding this comment.
Actionable comments posted: 2
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: dbd46fb8-6050-4ec9-b59e-90a44d849ca0
📒 Files selected for processing (1)
.github/workflows/frontend-deploy-production.yml
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.
✅ private-cloud · depot-ubuntu-latest-16 — run #19625 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
🗂️ Previous results✅ private-cloud · depot-ubuntu-latest-arm-16 — run #19625 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #19625 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #19625 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-16 — run #19624 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #19624 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #19624 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #19624 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-16 — run #19623 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #19623 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
Skipped testsfirefox › tests/onboarding-tests.pw.ts › Onboarding › New user connects via the single-page onboarding flow @oss ✅ oss · depot-ubuntu-latest-arm-16 — run #19623 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #19623 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
|
Visual Regression19 screenshots compared. See report for details. |
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 7fc10b63-c933-45e1-9b07-d370af53617f
📒 Files selected for processing (2)
.github/actions/notify-slack-deploy/action.yml.github/workflows/frontend-deploy-production.yml
Included review availability: Your plan provides up to 8 included reviews per hour; 5 remain after this review.
There was a problem hiding this comment.
Actionable comments posted: 3
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: d9193750-fee3-4578-82ae-3d73fde67192
📒 Files selected for processing (1)
.github/workflows/test-slack-frontend-deploy.yml
Included review availability: Your plan provides up to 8 included reviews per hour; 4 remain after this review.
1039714 to
bc7873f
Compare
bc7873f to
fd22aec
Compare
Post to #frontend-deploy once the production deploy succeeds, with the commit, who deployed, and links to production and the Actions run, as a prompt to smoke test. The message is built by a composite action so the API and MCP deploys can reuse it, and jq assembles the payload so values are escaped rather than interpolated into JSON. The job takes no GitHub token permissions beyond reading the repo, does not keep the checkout credentials, and does not fail the run if Slack is unreachable. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
29058a5 to
36c24ef
Compare
docs/if required so people know about the feature.Changes
Adds a
notify-production-smoke-testjob to the frontend production deploy workflow. After a successful deploy it posts to#frontend-deploywith the commit, who deployed, and links to production and the Actions run, as a prompt to smoke test.The message is built by a composite action (
.github/actions/notify-slack-deploy) so the API and MCP deploys can reuse it, and jq assembles the payload so values are escaped rather than interpolated into JSON.Two deliberate choices:
SLACK_FRONTEND_DEPLOY_WEBHOOK) rather than theSLACK_TOKENthe e2e-tests action uses, so the message is pinned to one channel and the workflow needs no Slack API scope.continue-on-erroron the step, because the deploy has already succeeded by the time this runs, so a Slack outage should not turn the run red. The job takescontents: readand nothing else.Deployer is plain text for this first version, not a Slack mention. GitHub handles are not Slack member IDs, and nothing derivable in CI maps reliably to one.
How did you test this code?
Ran the composite action from a throwaway workflow on this branch, run 32483691892. Slack returned
okand the message rendered in#frontend-deploywith both buttons working. That workflow is not part of this PR.Also checked the rendered payload is valid Block Kit JSON, and that the job is skipped rather than run when
deploy-productiondoes not succeed.