遇到异常:在Jenkins(以Debian作为机器)中运行 puppet 脚本时找不到Chromium(修订版本1095492)

qvtsj1bj  于 2023-03-07  发布在  Jenkins
关注(0)|答案(2)|浏览(502)

我已经开发了一个基于nodeJS的项目使用 puppet 和灯塔。我使用 puppet 登录到任何网站,用户需要登录。登录后,我导航到任何页面,如我的订单,帐户信息,已订购的页面等。
注意-我有这个作为一个自由风格的项目Jenkins。
详细信息中存在确切错误-遇到异常:无法找到Chromium(修订版本1095492)。以下情况可能会发生此问题
1.在运行脚本(例如npm install)之前未执行安装,或者
1.缓存路径配置不正确(即:/root/. cache/操纵 puppet 的人)。
在调用我的脚本之前尝试运行以下3个脚本--〉

  1. apt-get更新
  2. apt-获取安装-y gconf-服务库声音2库1.0 - 0库6库开罗2库杯2库数据总线-1 - 3库表达式1库字体配置1库gcc1库配置-2 - 4库gdk-像素缓冲区2.0 - 0库gtk-3 - 0库nspr4库pango-1.0 - 0库pangocairo-1.0 - 0库标准数据库++6库x11 - 6库x11-xcb1库xcb1库xcomposite1库xcursor1库xdamage1库xext6库xfixes3库xi6库xrandr2库xrender1库xss1库xtst6 ca证书字体解放库应用程序指示符1库nss3 lsb版本xdg实用程序wget库gbm-dev
  3. npm安装-g
    npm运行我的脚本名称
    包. json--〉"设备依赖项":{" chrome 驱动程序":"^108.0.0","日期和时间":"^2.4.1","灯塔":"^9.6.8","对数":"^6.7.1"," puppet 师":"^19.7.1 "},
d4so4syb

d4so4syb1#

我可以使用下面的代码解决这个问题:

const browserFetcher = puppeteer.createBrowserFetcher();
      let revisionInfo = await browserFetcher.download('1095492');

      const browser =await puppeteer.launch({
          executablePath: revisionInfo.executablePath,
          ignoreDefaultArgs: ['--disable-extensions'],
          headless: true,
          args: ['--no-sandbox', "--disabled-setupid-sandbox"]
        });
s4n0splo

s4n0splo2#

现在chrome被放置在用户目录"~/.cache/puppeteer"中,检查该目录的权限以及它是否属于运行应用程序的用户。
或者通过PUPPETEER_CACHE_DIR环境变量或puppeteer.config.cjs配置文件设置Chromium下载文件夹。

相关问题