如何修复在 CI 上下载 chrome-headless-shell 时 puppeteer 间歇性失败的问题

问题描述 投票:0回答:1

我正在使用一个大型 monorepo,它使用 puppeteer 进行测试。在本地安装依赖项工作正常,但 puppeteer 无法在 CI (AWS codepipeline/codeBuild) 上间歇性下载。失败率在50%左右。

日志中的错误是;

... npm ERR! path /codebuild/output/src1712585824/src/common/temp/pnpm-store/v3/tmp/_tmp_283_05a92cf37702a3f0d9171146248ad439/node_modules/puppeteer
... npm ERR! command failed
... npm ERR! command sh -c -- node install.mjs
... npm ERR! Error: ERROR: Failed to set up chrome-headless-shell v121.0.6167.85! Set "PUPPETEER_SKIP_DOWNLOAD" env variable to skip download.
... npm ERR!     at file:///codebuild/output/src1712585824/src/common/temp/pnpm-store/v3/tmp/_tmp_283_05a92cf37702a3f0d9171146248ad439/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:81:27
... npm ERR!     at async Promise.all (index 1)
... npm ERR!     at async downloadBrowser (file:///codebuild/output/src1712585824/src/common/temp/pnpm-store/v3/tmp/_tmp_283_05a92cf37702a3f0d9171146248ad439/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:87:9) {
... npm ERR!   [cause]: Error: unexpected end of file
... npm ERR!       at Zlib.zlibOnError [as onerror] (node:zlib:189:17) {
... npm ERR!     errno: -5,
... npm ERR!     code: 'Z_BUF_ERROR'
... npm ERR!   }
... npm ERR! }

有人见过这个吗? 有人对原因/解决方案有什么想法吗?

我尝试在本地安装依赖项,效果可靠。

在 CI puppeteer 上安装依赖项时,它会间歇性失败。我希望它也能可靠地成功。

Puppeteer 版本 ^21.5.0 (21.9.0)

谢谢

puppeteer zlib google-chrome-headless
1个回答
0
投票

你能猜出来吗? 我也有同样的问题。

© www.soinside.com 2019 - 2024. All rights reserved.