Skip to content

fix(ci): fix the monorepo#299

Open
nikitachapovskii-dev wants to merge 8 commits into
masterfrom
fix/revive-actor-scraper
Open

fix(ci): fix the monorepo#299
nikitachapovskii-dev wants to merge 8 commits into
masterfrom
fix/revive-actor-scraper

Conversation

@nikitachapovskii-dev

@nikitachapovskii-dev nikitachapovskii-dev commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

After the scrapers were split into this repo and the tooling was modernized (pnpm, oxlint, oxfmt), CI stopped working

The e2e hang and the red tests

Two problems were stacked on top of each other.

The job was hanging because actions/setup-node with node-version: 24 had moved from 24.14.1 to 24.16.0, and on 24.16.0 (Linux) pnpm install never exits once the dependency build scripts finish. It only shows up on a cold pnpm store. I bisected it in Docker: 24.15.0 is fine, 24.16.0 hangs, on every pnpm version. Fix is to pin node-version: 24.15.0 and add timeout-minutes so any future hang fails fast instead of burning six hours in silence.

The tests were also failing because the e2e workflow never installed browsers. On a warm pnpm store the side-effects cache skips the puppeteer/playwright postinstall, so Chrome was missing and every browser suite died with "Could not find Chrome". The PR workflow already had this step; the e2e one didn't, so I added it.

Release workflow

Added sitemap-extractor to the release matrix so it can be built and pushed like the other six. Everything else is unchanged, and stable stays the default channel.

Post-split cleanup

A few things the split left behind:

  • Repository URLs in the package manifests still pointed at apify-ts / apify-sdk-js, CONTRIBUTING told people to use npm, and two READMEs claimed Node.js 16. All corrected.
  • The npm lockfiles that get generated inside actor directories are workspace-link locks that break the isolated Docker build (the platform builds without them). They're now ignored by git and Docker so local builds match the platform.

Verified

Full toolchain is green (build, oxlint, oxfmt, vitest, tsc). A manual e2e run on this branch with a cold cache passed (24 passed, 3 skipped) and finished in about 16 minutes.

Follow-ups (not in this PR)

  • The Node pin works around an upstream regression; we should unpin once 24.17+ ships a fix.
  • The ignoreSslErrors e2e suites got slower after the crawlee/apify bump (more retry time against badssl.com). Not a correctness problem, but worth a look.

@nikitachapovskii-dev nikitachapovskii-dev marked this pull request as draft June 11, 2026 15:28
@nikitachapovskii-dev nikitachapovskii-dev changed the title fix(ci): unblock e2e and PR workflows fix(ci): fix the repo Jun 15, 2026
@nikitachapovskii-dev

Copy link
Copy Markdown
Contributor Author

@nikitachapovskii-dev nikitachapovskii-dev self-assigned this Jun 16, 2026
@nikitachapovskii-dev nikitachapovskii-dev marked this pull request as ready for review June 16, 2026 12:04
@nikitachapovskii-dev nikitachapovskii-dev changed the title fix(ci): fix the repo fix(ci): fix the monorepo Jun 16, 2026

@ruocco-l ruocco-l left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

🚀 Thank you for figuring this out

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.

3 participants