Skip to content

Conversation

@devin-ai-integration
Copy link
Contributor

@devin-ai-integration devin-ai-integration bot commented Dec 30, 2025

Summary

Fixes the E2E build failure caused by missing POSTHOG_API_KEY environment variable. The root cause was that desktop_e2e.yaml was building in release mode but didn't pass the compile-time required env vars (POSTHOG_API_KEY, APP_VERSION, etc.) that desktop_cd.yaml correctly provides.

This PR creates a composite action (.github/actions/desktop-build/action.yml) that centralizes all required build environment variables. Both desktop_e2e.yaml and desktop_cd.yaml now use this action, ensuring consistent env var handling across all desktop builds.

Key changes:

  • New .github/actions/desktop-build/action.yml composite action with all compile-time env vars
  • Updated desktop_e2e.yaml to use the new action (Linux and macOS)
  • Updated desktop_cd.yaml to use the new action (Linux and macOS builds)
  • Action validates that posthog_api_key is provided, failing fast with a clear error if missing

Note: Composite actions cannot access repository secrets directly, so callers must pass secrets as inputs. This is intentional - it makes the "required env vars" contract explicit in the action interface.

Review & Testing Checklist for Human

  • Verify E2E workflow passes required secrets: E2E only passes github_token, posthog_api_key, sentry_dsn - verify this is sufficient for --no-bundle builds
  • Verify macOS CD uses correct SENTRY_DSN: macOS CD passes SENTRY_DSN_HYPRNOTE_2 while Linux uses SENTRY_DSN - confirm this is intentional
  • Verify Apple signing env vars work: macOS CD passes Apple signing vars via step-level env: block (not through action inputs) - verify this still works
  • Manually trigger the E2E workflow: Run on this branch to verify both Linux and macOS builds succeed

Test Plan

  1. Merge this PR
  2. Go to Actions → "desktop_e2e.yaml" → Run workflow
  3. Verify both e2e-linux and e2e-macos jobs complete successfully
  4. Optionally trigger a staging CD build to verify the action works for full builds with bundles

Notes

…v vars

- Add desktop_build.yaml reusable workflow that centralizes all required
  compile-time env vars (POSTHOG_API_KEY, APP_VERSION, SENTRY_DSN, etc.)
- Update desktop_e2e.yaml to use the reusable workflow with secrets: inherit
- Fixes build failure caused by missing POSTHOG_API_KEY in E2E workflow
- Supports both Linux and macOS builds with optional E2E test execution
- Uses --no-bundle by default, with option to specify bundle types

Co-Authored-By: yujonglee <yujonglee.dev@gmail.com>
@devin-ai-integration
Copy link
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR that start with 'DevinAI' or '@devin'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@netlify
Copy link

netlify bot commented Dec 30, 2025

Deploy Preview for hyprnote-storybook canceled.

Name Link
🔨 Latest commit 2a42800
🔍 Latest deploy log https://app.netlify.com/projects/hyprnote-storybook/deploys/6953690dda2e5a0008e56cbd

@netlify
Copy link

netlify bot commented Dec 30, 2025

Deploy Preview for hyprnote canceled.

Name Link
🔨 Latest commit 2a42800
🔍 Latest deploy log https://app.netlify.com/projects/hyprnote/deploys/6953690de373a50008739820

@netlify
Copy link

netlify bot commented Dec 30, 2025

Deploy Preview for howto-fix-macos-audio-selection canceled.

Name Link
🔨 Latest commit 2a42800
🔍 Latest deploy log https://app.netlify.com/projects/howto-fix-macos-audio-selection/deploys/6953690da9602b00087a4ef0

- Create .github/actions/desktop-build/action.yml composite action
- Update desktop_e2e.yaml to use the new action
- Update desktop_cd.yaml (both macOS and Linux builds) to use the new action
- Delete the old desktop_build.yaml workflow file

The composite action centralizes all required compile-time env vars
(POSTHOG_API_KEY, APP_VERSION, SENTRY_DSN, etc.) and can be used by
both CD and E2E workflows. Callers must pass secrets as inputs since
composite actions cannot access secrets directly.

Co-Authored-By: yujonglee <yujonglee.dev@gmail.com>
@devin-ai-integration devin-ai-integration bot changed the title feat: create reusable workflow for desktop builds with centralized env vars feat: create composite action for desktop builds with centralized env vars Dec 30, 2025
@devin-ai-integration
Copy link
Contributor Author

Devin is archived and cannot be woken up. Please unarchive Devin if you want to continue using it.

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.

2 participants