Skip to content

feat(ci): build depot snapshot for all runs#3393

Draft
gabrielmfern wants to merge 1 commit intocanaryfrom
feat/depot-snapshot-containers
Draft

feat(ci): build depot snapshot for all runs#3393
gabrielmfern wants to merge 1 commit intocanaryfrom
feat/depot-snapshot-containers

Conversation

@gabrielmfern
Copy link
Copy Markdown
Member

@gabrielmfern gabrielmfern commented Apr 17, 2026

Summary by cubic

Standardizes CI on a prebuilt Depot image with Node 22, warmed pnpm store, and Playwright browsers to speed up runs and reduce flakiness. Adds an automated workflow to build and push this image on schedule and on canary.

  • New Features

    • Add .github/workflows/build-ci-image.yml to build and push a Depot snapshot image on canary, weekly, and on demand.
    • Image includes Node 22, warmed pnpm store, and Playwright Chromium with system deps at /opt/playwright.
    • Uses depot/snapshot-action to publish ${{ vars.DEPOT_ORG_ID }}.registry.depot.dev/react-email-ci:latest.
  • Refactors

    • Switch tests, e2e, lint, and pin-dependencies-check to Depot runners with image: .../react-email-ci:latest (8x16 or 2x8).
    • Remove per-job containers and pnpm/action-setup; rely on the prebuilt image.
    • Set PLAYWRIGHT_BROWSERS_PATH=/opt/playwright for tests.

Written for commit 7294808. Summary will update on new commits.

@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented Apr 17, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
react-email Ready Ready Preview, Comment Apr 17, 2026 8:48pm
react-email-demo Ready Ready Preview, Comment Apr 17, 2026 8:48pm

Request Review

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Apr 17, 2026

⚠️ No Changeset found

Latest commit: 7294808

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 5 files

Confidence score: 3/5

  • There is a meaningful regression risk in .github/workflows/build-ci-image.yml: adding Depot snapshot/push without verified API key permissions can cause CI image build/push steps to fail after merge.
  • The issue is high-confidence and medium-high severity (7/10, 9/10), so this is more than a housekeeping concern even though it appears limited to pipeline behavior rather than application runtime logic.
  • This should be straightforward to de-risk by validating the production key scopes before rollout; once confirmed, merge risk drops significantly.
  • Pay close attention to .github/workflows/build-ci-image.yml - ensure the production API key has the required Depot permissions for snapshot/push actions.
Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".github/workflows/build-ci-image.yml">

<violation number="1" location=".github/workflows/build-ci-image.yml:38">
P1: Custom agent: **API Key Permission Check SDK Methods**

This PR introduces Depot’s snapshot/push action, but there is no confirmation that the existing production API key has the required permissions for this new operation. Please verify key scopes before rollout to avoid permission-related CI failures.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

- name: Install Playwright browsers with system deps
run: pnpm exec playwright install --with-deps chromium
- name: Snapshot and push image
uses: depot/snapshot-action@b11edd94cf3edbcab102fc45e695c2967953e177
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: Custom agent: API Key Permission Check SDK Methods

This PR introduces Depot’s snapshot/push action, but there is no confirmation that the existing production API key has the required permissions for this new operation. Please verify key scopes before rollout to avoid permission-related CI failures.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At .github/workflows/build-ci-image.yml, line 38:

<comment>This PR introduces Depot’s snapshot/push action, but there is no confirmation that the existing production API key has the required permissions for this new operation. Please verify key scopes before rollout to avoid permission-related CI failures.</comment>

<file context>
@@ -0,0 +1,40 @@
+      - name: Install Playwright browsers with system deps
+        run: pnpm exec playwright install --with-deps chromium
+      - name: Snapshot and push image
+        uses: depot/snapshot-action@b11edd94cf3edbcab102fc45e695c2967953e177
+        with:
+          image: ${{ vars.DEPOT_ORG_ID }}.registry.depot.dev/react-email-ci:latest
</file context>

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.

1 participant