Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 20 additions & 2 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,16 @@ jobs:
run: pnpm install --frozen-lockfile

- name: Install Playwright Chromium
run: pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium
# Drop Google's chrome-stable apt source first: its index has been
# serving a broken Packages.gz ("Hash Sum mismatch", nightly run
# 34382957429, both attempts, three jobs), and `--with-deps` runs
# `apt-get update`, which fails the whole install with code 100.
# Playwright ships its own Chromium and takes system deps from the
# Ubuntu archives, so the repo is dead weight here.
run: |
sudo rm -f /etc/apt/sources.list.d/google-chrome.list
sudo rm -f /etc/apt/sources.list.d/google-chrome.sources
pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium

- name: Provision MinIO env (defaults; smoke is OAuth-free)
run: cp local-dev/.env.minio.example local-dev/.env.minio
Expand Down Expand Up @@ -285,7 +294,16 @@ jobs:
run: pnpm --filter @useupup/core --filter @useupup/react --filter @useupup/server build

- name: Install Playwright Chromium
run: pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium
# Drop Google's chrome-stable apt source first: its index has been
# serving a broken Packages.gz ("Hash Sum mismatch", nightly run
# 34382957429, both attempts, three jobs), and `--with-deps` runs
# `apt-get update`, which fails the whole install with code 100.
# Playwright ships its own Chromium and takes system deps from the
# Ubuntu archives, so the repo is dead weight here.
run: |
sudo rm -f /etc/apt/sources.list.d/google-chrome.list
sudo rm -f /etc/apt/sources.list.d/google-chrome.sources
pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium

# Flag-position --project (never the `-- --project` pnpm-forwarding
# form, which Playwright reads as filename filters — see CLAUDE.md).
Expand Down
18 changes: 16 additions & 2 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,16 @@ jobs:
run: pnpm install --frozen-lockfile

- name: Install Playwright Chromium
run: pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium
# Drop Google's chrome-stable apt source first: its index has been
# serving a broken Packages.gz ("Hash Sum mismatch", nightly run
# 34382957429, both attempts, three jobs), and `--with-deps` runs
# `apt-get update`, which fails the whole install with code 100.
# Playwright ships its own Chromium and takes system deps from the
# Ubuntu archives, so the repo is dead weight here.
run: |
sudo rm -f /etc/apt/sources.list.d/google-chrome.list
sudo rm -f /etc/apt/sources.list.d/google-chrome.sources
pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium

- name: Provision MinIO env (defaults; suites are OAuth-free)
run: cp local-dev/.env.minio.example local-dev/.env.minio
Expand Down Expand Up @@ -438,7 +447,12 @@ jobs:

- name: Install Playwright Chromium
if: steps.creds.outputs.present == 'true'
run: pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium
# See the Full E2E job above: Google's chrome-stable apt index is
# serving a broken Packages.gz, and `--with-deps` fails on it.
run: |
sudo rm -f /etc/apt/sources.list.d/google-chrome.list
sudo rm -f /etc/apt/sources.list.d/google-chrome.sources
pnpm --filter @useupup/e2e-test exec playwright install --with-deps chromium

- name: Run landing feedback e2e + shared-PostHog ingestion verification
if: steps.creds.outputs.present == 'true'
Expand Down
7 changes: 6 additions & 1 deletion apps/e2e-test/playwright.landing.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,12 @@ import { defineConfig } from '@playwright/test'
// The `flows` project (support + thumbs) runs first; the serial `ingestion`
// project depends on it, so verification always runs LAST against landed data.

const LANDING_PORT = 53080
// 31080, not 53080: Linux draws ephemeral source ports from 32768-60999, so a
// fixed listen port in that window can be transiently held by one of the
// runner's own outbound connections — the failure mode that killed the
// resume harness on :53062 (see apps/e2e-test/e2e/multipart-resume-harness.ts).
// Below 32768 the kernel never competes for it.
const LANDING_PORT = 31080
const MASTRA_PORT = 4144
const baseURL = `http://localhost:${LANDING_PORT}`

Expand Down
Loading