ci(e2e): enable Google Calendar E2E suites in workflow - #293
Merged
Conversation
Wires the GOOGLE_CALENDAR_E2E_* repo secrets (configured 2026-04-20) into the Playwright Electron job and flips GOOGLE_CALENDAR_E2E=1 so the two Calendar suites landed in #291 actually exercise the real Google Calendar API in CI: - calendar-google-two-way-sync.e2e.ts (Google → Memry import) - calendar-google-writeback.e2e.ts (Memry → Google write-back) Without this, both suites' `CREDS_PRESENT` gate was false in CI and they skipped silently — the tests were landed but not actually running. Why per-step env (not workflow-level): The secrets are only needed for the Playwright step. Scoping to the step limits exposure and makes it easy to remove if we ever split the E2E job. Forks are still safe: Forked repos can't access secrets, so the env vars will be empty strings in their CI. The Calendar suites' CREDS_PRESENT check demands non-empty values and short-circuits the whole describe block via test.skip, so forks' E2E jobs continue to pass without the Calendar suites executing. Trigger scope unchanged: e2e.yml still runs only on push-to-main + manual workflow_dispatch — the Calendar suites will gate main-branch health post-merge, not individual PRs. Adding a `pull_request:` trigger is a bigger policy decision (cost and Google API usage) and is intentionally out of scope here; tracked as a follow-up.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Enables the two Calendar E2E suites landed in #291 to actually run in CI by wiring the
GOOGLE_CALENDAR_E2E_*repo secrets into the Playwright Electron job.What changes: one
env:block added to the "Run Electron E2E tests" step in.github/workflows/e2e.yml. 9 lines.What this unblocks
calendar-google-two-way-sync.e2e.ts(Google → Memry)calendar-google-writeback.e2e.ts(Memry → Google)calendar-push-channels.e2e.ts(webhook round-trip)Push-channels remain skipped until the staging Memry sync-auth user is provisioned — unchanged from #291.
Safety
CREDS_PRESENTcheck fails →test.skipfires at the describe level. Forked PRs still pass E2E.Out of scope (follow-up)
Current triggers on
e2e.yml:```yaml
on:
push:
branches: [main]
workflow_dispatch:
```
Calendar E2E will only run post-merge to main. To actually gate PRs on Calendar health, add a
pull_request:trigger. I left this out because:pull_request:with an optionalpaths:filter onapps/desktop/**to scope the costTesting this PR
Can't — this PR changes the workflow, but the workflow only triggers on push-to-main. Options for validation:
workflow_dispatchon this branch post-merge to exercise before the next feature landspull_request:trigger in a throwaway commit — overkillRecommending option 1. The change is small and review-verifiable.
Test plan