microsoft / playwright

Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
https://playwright.dev
Apache License 2.0
64.18k stars 3.49k forks source link

[Bug]: Unable to run playwright tests using github actions #30377

Closed Bloke-Bloke closed 3 months ago

Bloke-Bloke commented 3 months ago

Version

1.43.1

Steps to reproduce

This may be an issue with our runners in github actions but this has not been an issue in the past.. and our current playwright implementation is working as intended.. So I'd like to see if its a new issue.

  1. Install a fresh installation of playwright
  2. Ensure github actions is included
  3. Using the default tests included, push the changes to kick off the github workflow

Here is an example of the files (mostly default) package.json

{
  "name": "sandbox",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {},
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "@playwright/test": "^1.43.1",
    "@types/node": "^20.12.7"
  }
}

playwright config

import { defineConfig, devices } from '@playwright/test';

/**
 * Read environment variables from file.
 * https://github.com/motdotla/dotenv
 */
// require('dotenv').config();

/**
 * See https://playwright.dev/docs/test-configuration.
 */
export default defineConfig({
  testDir: './tests',
  /* Run tests in files in parallel */
  fullyParallel: true,
  /* Fail the build on CI if you accidentally left test.only in the source code. */
  forbidOnly: !!process.env.CI,
  /* Retry on CI only */
  retries: 0,
  /* Opt out of parallel tests on CI. */
  workers: process.env.CI ? 1 : undefined,
  /* Reporter to use. See https://playwright.dev/docs/test-reporters */
  reporter: 'html',
  /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
  use: {
    /* Base URL to use in actions like `await page.goto('/')`. */
    // baseURL: 'http://127.0.0.1:3000',

    /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
    trace: 'on-first-retry',
  },

  /* Configure projects for major browsers */
  projects: [
    {
      name: 'chromium',
      use: { ...devices['Desktop Chrome'] },
    },

    {
      name: 'firefox',
      use: { ...devices['Desktop Firefox'] },
    },

    /* Test against mobile viewports. */
    // {
    //   name: 'Mobile Chrome',
    //   use: { ...devices['Pixel 5'] },
    // },
    // {
    //   name: 'Mobile Safari',
    //   use: { ...devices['iPhone 12'] },
    // },

    /* Test against branded browsers. */
    // {
    //   name: 'Microsoft Edge',
    //   use: { ...devices['Desktop Edge'], channel: 'msedge' },
    // },
    // {
    //   name: 'Google Chrome',
    //   use: { ...devices['Desktop Chrome'], channel: 'chrome' },
    // },
  ],

  /* Run your local dev server before starting the tests */
  // webServer: {
  //   command: 'npm run start',
  //   url: 'http://127.0.0.1:3000',
  //   reuseExistingServer: !process.env.CI,
  // },
});

github workflow:

name: Playwright Tests
on:
  push:
    branches: [main, master]
  pull_request:
    branches: [main, master]
jobs:
  test:
    runs-on: ebf-pod-ubuntu-2004-slim@${{ github.run_id }}-playright-sand
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - name: Install dependencies
        run: npm ci
      - name: Install Playwright Browsers
        run: npx playwright install --with-deps
      - name: Run Playwright tests
        run: npx playwright test --workers 4
      - uses: actions/upload-artifact@v3
        if: always()
        with:
          name: playwright-report
          path: playwright-report/
          retention-days: 30

Expected behavior

Expect tests to pass

Actual behavior

1) [chromium] › example.spec.ts:3:5 › has title ──────────────────────────────────────────────────

    Test timeout of 30000ms exceeded.

    Error: page.goto: net::ERR_ABORTED; maybe frame was detached?
    Call log:
      - navigating to "https://playwright.dev/", waiting until "load"

      2 |
      3 | test('has title', async ({ page }) => {
    > 4 |   await page.goto('https://playwright.dev/');
        |              ^
      5 |
      6 |   // Expect a title "to contain" a substring.
      7 |   await expect(page).toHaveTitle(/Playwright/);

        at /home/runner/_work/sandbox/sandbox/tests/example.spec.ts:4:14

  2) [chromium] › example.spec.ts:[10](https://adc.github.trendmicro.com/Cloud-ASRM/sandbox/actions/runs/3809568/job/10552905#step:6:11):5 › get started link ──────────────────────────────────────────

Additional context

Note tests run and pass locally image

Environment

The tests are running in the following env:

# Ubuntu 20.04.6 LTS
- Linux kernel version: 4.14.291-218.527.amzn2.x86_64
- Image Version: 20240327

## Extra Pre-Installed Softwares

### Additional Linux Softwares
- Crane 0.19.1
- JFrog CLI 2.54.0
- Terragrunt v0.55.20
- TFSec v1.28.5
- Trivy 0.50.0
- Vault v1.13.2

### Additional Pip3 Package (only for default Python)
- Ansible 2.13.13
- detect-secrets 1.4.0
- j2cli 0.3.10, Jinja2 3.1.3
- pipenv 2023.12.1
- poetry Poetry (version 1.8.2)
- Robot Framework 7.0
- yamllint 1.35.1

## Installed Software
### Language and Runtime
- Bash 5.0.17(1)-release
- GNU C++ 9.4.0
- Perl 5.30.0
- Python3 3.8.10

### Package Management
- Helm 3.14.3
- Pip3 20.0.2

### Tools
- apt-fast 1.10.0
- AzCopy 10.24.0 (available by `azcopy` and `azcopy10` aliases)
- Docker Amazon ECR Credential Helper 0.7.1
- Docker Compose v1 1.29.2
- Docker Compose v2 2.26.0-1
- Docker-Buildx 0.13.1-1
- Docker-Moby Client 24.0.9-1
- Git 2.43.2 (apt source repository: ppa:git-core/ppa)
- Git LFS 3.5.1 (apt source repository: https://packagecloud.io/install/repositories/github/git-lfs)
- Git-ftp 1.6.0
- jq 1.6
- Kubectl 1.29.3
- Kustomize 5.3.0
- Packer 1.10.2
- Pulumi 3.111.1
- Terraform 1.7.5
- yq v4.43.1
- Skopeo v1.15.0

### CLI Tools
- Alibaba Cloud CLI 3.0.174
- AWS CLI 2.15.32
- AWS CLI Session manager plugin 1.2.553.0
- AWS SAM CLI 1.113.0
- Azure CLI (azure-cli) 2.58.0 (installation method: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt)
- Azure CLI (azure-devops) 1.0.0
- GitHub CLI 2.46.0
- Google Cloud SDK 470.0.0 (apt source repository: https://packages.cloud.google.com/apt)
- Hub CLI 

### PowerShell Tools
- PowerShell 7.2.18

#### PowerShell Modules
| Module           | Version |
| ---------------- | ------- |
| MarkdownPS       | 1.9     |
| Microsoft.Graph  | 2.16.0  |
| Pester           | 5.5.0   |
| PSScriptAnalyzer | 1.22.0  |

#### Az PowerShell Modules
- 9.3.0 3.1.0.zip 4.4.0.zip 5.9.0.zip 6.6.0.zip 7.5.0.zip

### Installed apt packages
| Name                   | Version                           |
| ---------------------- | --------------------------------- |
| acl                    | 2.2.53-6                          |
| aria2                  | 1.35.0-1build1                    |
| autoconf               | 2.69-11.1                         |
| automake               | 1:1.16.1-4ubuntu6                 |
| binutils               | 2.34-6ubuntu1.9                   |
| bison                  | 2:3.5.1+dfsg-1                    |
| brotli                 | 1.0.7-6ubuntu0.1                  |
| coreutils              | 8.30-3ubuntu2                     |
| dbus                   | 1.12.16-2ubuntu2.3                |
| dnsutils               | 1:9.16.48-0ubuntu0.20.04.1        |
| dpkg                   | 1.19.7ubuntu3.2                   |
| dpkg-dev               | 1.19.7ubuntu3.2                   |
| fakeroot               | 1.24-1                            |
| file                   | 1:5.38-4                          |
| flex                   | 2.6.4-6.2                         |
| fonts-noto-color-emoji | 0\~20200916-1\~ubuntu20.04.1      |
| ftp                    | 0.17-34.1                         |
| gnupg2                 | 2.2.19-3ubuntu2.2                 |
| haveged                | 1.9.1-6ubuntu1                    |
| imagemagick            | 8:6.9.10.23+dfsg-2.1ubuntu11.9    |
| iproute2               | 5.5.0-1ubuntu1                    |
| iputils-ping           | 3:20190709-3ubuntu1               |
| lib32z1                | 1:1.2.11.dfsg-2ubuntu1.5          |
| libc++-dev             | 1:10.0-50\~exp1                   |
| libc++abi-dev          | 1:10.0-50\~exp1                   |
| libc6-dev              | 2.31-0ubuntu9.14                  |
| libcurl4               | 7.68.0-1ubuntu2.21                |
| libgbm-dev             | 21.2.6-0ubuntu0.1\~20.04.2        |
| libgconf-2-4           | 3.2.6-6ubuntu1                    |
| libgsl-dev             | 2.5+dfsg-6+deb10u1build0.20.04.1  |
| libgtk-3-0             | 3.24.20-0ubuntu1.1                |
| libmagic-dev           | 1:5.38-4                          |
| libmagickcore-dev      | 8:6.9.10.23+dfsg-2.1ubuntu11.9    |
| libmagickwand-dev      | 8:6.9.10.23+dfsg-2.1ubuntu11.9    |
| libsecret-1-dev        | 0.20.4-0ubuntu1                   |
| libsqlite3-dev         | 3.31.1-4ubuntu0.6                 |
| libtool                | 2.4.6-14                          |
| libunwind8             | 1.2.1-9ubuntu0.1                  |
| libxkbfile-dev         | 1:1.1.0-1                         |
| libxss1                | 1:1.2.3-1                         |
| libyaml-dev            | 0.2.2-1                           |
| locales                | 2.31-0ubuntu9.14                  |
| m4                     | 1.4.18-4                          |
| mediainfo              | 19.09-1build1                     |
| mercurial              | 5.3.1-1ubuntu1                    |
| net-tools              | 1.60+git20180626.aebd88e-1ubuntu1 |
| netcat                 | 1.206-1ubuntu1                    |
| openssh-client         | 1:8.2p1-4ubuntu0.11               |
| p7zip-full             | 16.02+dfsg-7build1                |
| p7zip-rar              | 16.02-3build1                     |
| parallel               | 20161222-1.1                      |
| pass                   | 1.7.3-2                           |
| patchelf               | 0.10-2build1                      |
| pigz                   | 2.4-1                             |
| pkg-config             | 0.29.1-0ubuntu4                   |
| pollinate              | 4.33-3ubuntu1.20.04.1             |
| python-is-python3      | 3.8.2-4                           |
| rpm                    | 4.14.2.1+dfsg1-1build2            |
| rsync                  | 3.1.3-8ubuntu0.7                  |
| shellcheck             | 0.7.0-2build2                     |
| sphinxsearch           | 2.2.11-2ubuntu2                   |
| sqlite3                | 3.31.1-4ubuntu0.6                 |
| ssh                    | 1:8.2p1-4ubuntu0.11               |
| sshpass                | 1.06-1                            |
| subversion             | 1.13.0-3ubuntu0.2                 |
| sudo                   | 1.8.31-1ubuntu1.5                 |
| swig                   | 4.0.1-5build1                     |
| telnet                 | 0.17-41.2build1                   |
| texinfo                | 6.7.0.dfsg.2-5                    |
| time                   | 1.7-25.1build1                    |
| tk                     | 8.6.9+1                           |
| tzdata                 | 2024a-0ubuntu0.20.04              |
| upx                    | 3.95-2build1                      |
| xorriso                | 1.5.2-1                           |
| xvfb                   | 2:1.20.13-1ubuntu1\~20.04.15      |
| xz-utils               | 5.2.4-1ubuntu1.1                  |
| zip                    | 3.0-11build1                      |
| zsync                  | 0.6.2-3ubuntu1                    |
yury-s commented 3 months ago

runs-on: ebf-pod-ubuntu-2004-slim@${{ github.run_id }}-playright-sand

The problem is likely in the image you use to run the tests. Try running on ubuntu-20.04 instead.

yury-s commented 3 months ago

It is still failing please share a github project with that failing action and minimal reproduction project.

Bloke-Bloke commented 3 months ago

Our company locks down the runners we can use. That being said it is using Ubuntu 20.04.6 LTS just with some preinstalled software.

sandbox.zip

Attached is the repo, if the action doesn't copy over properly it is as follows

/sandbox/.github/workflows/playwright.yml

name: Playwright Tests
on:
  push:
    branches: [main, master]
  pull_request:
    branches: [main, master]
jobs:
  test:
    runs-on: ebf-pod-ubuntu-2004-slim@${{ github.run_id }}-playright-sand-s
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 21
      - name: Install dependencies
        run: npm ci
      - name: Install Playwright Browsers
        run: npx playwright install --with-deps
      - name: Run Playwright tests
        run: npx playwright test --workers 4
      - uses: actions/upload-artifact@v3
        if: always()
        with:
          name: playwright-report
          path: playwright-report/
          retention-days: 30
Bloke-Bloke commented 3 months ago

I'll reach out to the owners of our elasticfarm to see if they can repo the issue as well.

mxschmitt commented 3 months ago

Could you set the DEBUG=pw:browser env var while running the tests? This might yield more helpful output.

Bloke-Bloke commented 3 months ago

Could you set the DEBUG=pw:browser env var while running the tests? This might yield more helpful output.

Run DEBUG=pw:browser npx playwright test --workers 4

Running [4](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:5) tests using 4 workers
  pw:browser <launching> /home/runner/.cache/ms-playwright/firefox-1447/firefox/firefox -no-remote -headless -profile /tmp/playwright_firefoxdev_profile-XXXXXXDyi[5](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:6)H3 -juggler-pipe -silent +0ms
  pw:browser <launching> /home/runner/.cache/ms-playwright/chromium-1112/chrome-linux/chrome --disable-field-trial-config --disable-background-networking --enable-features=NetworkService,NetworkServiceInProcess --disable-background-timer-throttling --disable-backgrounding-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-background-pages --disable-component-update --no-default-browser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=ImprovedCookieControls,LazyFrameLoading,GlobalMediaControls,DestroyProfileOnBrowserClose,MediaRouter,DialMediaRouteProvider,AcceptCHFrame,AutoExpandDetailsElement,CertificateTransparencyComponentUpdater,AvoidUnnecessaryBeforeUnloadCheckSync,Translate,HttpsUpgrades,PaintHolding --allow-pre-commit-input --disable-hang-monitor --disable-ipc-flooding-protection --disable-popup-blocking --disable-prompt-on-repost --disable-renderer-backgrounding --force-color-profile=srgb --metrics-recording-only --no-first-run --enable-automation --password-store=basic --use-mock-keychain --no-service-autorun --export-tagged-pdf --disable-search-engine-choice-screen --headless --hide-scrollbars --mute-audio --blink-settings=primaryHoverType=2,availableHoverTypes=2,primaryPointerType=4,availablePointerTypes=4 --no-sandbox --user-data-dir=/tmp/playwright_chromiumdev_profile-XXXXXXi3ymBy --remote-debugging-pipe --no-startup-window +0ms
  pw:browser <launched> pid=4484 +40ms
  pw:browser <launched> pid=448[6](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:7) +40ms
  pw:browser <launching> /home/runner/.cache/ms-playwright/chromium-1112/chrome-linux/chrome --disable-field-trial-config --disable-background-networking --enable-features=NetworkService,NetworkServiceInProcess --disable-background-timer-throttling --disable-backgrounding-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-background-pages --disable-component-update --no-default-browser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=ImprovedCookieControls,LazyFrameLoading,GlobalMediaControls,DestroyProfileOnBrowserClose,MediaRouter,DialMediaRouteProvider,AcceptCHFrame,AutoExpandDetailsElement,CertificateTransparencyComponentUpdater,AvoidUnnecessaryBeforeUnloadCheckSync,Translate,HttpsUpgrades,PaintHolding --allow-pre-commit-input --disable-hang-monitor --disable-ipc-flooding-protection --disable-popup-blocking --disable-prompt-on-repost --disable-renderer-backgrounding --force-color-profile=srgb --metrics-recording-only --no-first-run --enable-automation --password-store=basic --use-mock-keychain --no-service-autorun --export-tagged-pdf --disable-search-engine-choice-screen --headless --hide-scrollbars --mute-audio --blink-settings=primaryHoverType=2,availableHoverTypes=2,primaryPointerType=4,availablePointerTypes=4 --no-sandbox --user-data-dir=/tmp/playwright_chromiumdev_profile-XXXXXXBoUbCv --remote-debugging-pipe --no-startup-window +0ms
  pw:browser <launched> pid=4488 +4ms
  pw:browser <launching> /home/runner/.cache/ms-playwright/firefox-144[7](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:8)/firefox/firefox -no-remote -headless -profile /tmp/playwright_firefoxdev_profile-XXXXXXqKF9cE -juggler-pipe -silent +0ms
  pw:browser <launched> pid=4489 +3ms
  pw:browser [pid=4484][err] *** You are running in headless mode. +20ms
  pw:browser [pid=4489][err] *** You are running in headless mode. +20ms
  pw:browser [pid=4488][err] [0415/203731.071703:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory +49ms
  pw:browser [pid=4488][err] [0415/203731.072665:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory +0ms
  pw:browser [pid=4488][err] [0415/203731.072705:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory +0ms
  pw:browser [pid=4486][err] [0415/203731.084555:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory +68ms
  pw:browser [pid=4486][err] [0415/203731.085483:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory +0ms
  pw:browser [pid=4486][err] [0415/203731.085516:ERROR:bus.cc(407)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory +1ms
  pw:browser [pid=4484][err] JavaScript warning: resource://services-settings/Utils.sys.mjs, line 114: unreachable code after return statement +62ms
  pw:browser [pid=44[8](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:9)4][out] console.warn: services.settings: Ignoring preference override of remote settings server +18ms
  pw:browser [pid=4484][out] console.warn: services.settings: Allow by setting MOZ_REMOTE_SETTINGS_DEVTOOLS=1 in the environment +1ms
  pw:browser [pid=4488][err] [0415/203731.116170:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 455[9](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:10): Permission denied (13) +43ms
  pw:browser [pid=4489][err] JavaScript warning: resource://services-settings/Utils.sys.mjs, line 114: unreachable code after return statement +81ms
  pw:browser [pid=4488][err] [0415/203731.132257:WARNING:sandbox_linux.cc(420)] InitializeSandbox() called with multiple threads in process gpu-process. +16ms
  pw:browser [pid=4489][out] console.warn: services.settings: Ignoring preference override of remote settings server +2ms
  pw:browser [pid=4489][out] console.warn: services.settings: Allow by setting MOZ_REMOTE_SETTINGS_DEVTOOLS=1 in the environment +1ms
  pw:browser [pid=4486][err] [0415/203731.144500:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 4596: Permission denied (13) +58ms
  pw:browser [pid=4488][err] [0415/203731.158212:INFO:config_dir_policy_loader.cc(118)] Skipping mandatory platform policies because no policy file was found at: /etc/chromium/policies/managed +26ms
  pw:browser [pid=4488][err] [0415/203731.158238:INFO:config_dir_policy_loader.cc(118)] Skipping recommended platform policies because no policy file was found at: /etc/chromium/policies/recommended +0ms
  pw:browser [pid=4486][err] [0415/203731.159505:INFO:config_dir_policy_loader.cc(118)] Skipping mandatory platform policies because no policy file was found at: /etc/chromium/policies/managed +15ms
  pw:browser [pid=4486][err] [0415/203731.159532:INFO:config_dir_policy_loader.cc(118)] Skipping recommended platform policies because no policy file was found at: /etc/chromium/policies/recommended +0ms
  pw:browser [pid=4486][err] [0415/203731.161391:WARNING:sandbox_linux.cc(420)] InitializeSandbox() called with multiple threads in process gpu-process. +2ms
  pw:browser [pid=4488][err] [0415/203731.163155:WARNING:bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable. +5ms
  pw:browser [pid=4486][err] [0415/203731.164026:WARNING:bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable. +3ms
  pw:browser [pid=4488][err] [0415/203731.227649:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 4655: Permission denied (13) +64ms
  pw:browser [pid=4486][err] [0415/203731.232350:ERROR:zygote_host_impl_linux.cc(273)] Failed to adjust OOM score of renderer with pid 4658: Permission denied (13) +68ms
  pw:browser [pid=4488][err] [0415/203731.234199:WARNING:runtime_features.cc(730)] AttributionReportingCrossAppWeb cannot be enabled in this configuration. Use --enable-features=ConversionMeasurement,AttributionReportingCrossAppWeb in addition. +[10](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:11)ms
  pw:browser [pid=4486][err] [0415/203731.237793:WARNING:runtime_features.cc(730)] AttributionReportingCrossAppWeb cannot be enabled in this configuration. Use --enable-features=ConversionMeasurement,AttributionReportingCrossAppWeb in addition. +8ms
  pw:browser [pid=4484][out] Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=0.406756) [GFX1-]: glxtest: libpci missing +267ms
  pw:browser [pid=4484][out] Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=0.406756) |[1][GFX1-]: glxtest: Unable to open a connection to the X server (t=0.406756) [GFX1-]: glxtest: Unable to open a connection to the X server +0ms
  pw:browser [pid=4484][out] Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=0.406756) |[1][GFX1-]: glxtest: Unable to open a connection to the X server (t=0.406756) |[2][GFX1-]: No GPUs detected via PCI +0ms
  pw:browser [pid=4484][out]  (t=0.406756) [GFX1-]: No GPUs detected via PCI +0ms
  pw:browser [pid=4484][out]  +0ms
  pw:browser [pid=4489][out] Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=0.354806) [GFX1-]: glxtest: libpci missing +256ms
  pw:browser [pid=4489][out] Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=0.354806) |[1][GFX1-]: glxtest: Unable to open a connection to the X server (t=0.354806) [GFX1-]: glxtest: Unable to open a connection to the X server +0ms
  pw:browser [pid=4489][out] Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=0.354806) |[1][GFX1-]: glxtest: Unable to open a connection to the X server (t=0.354806) |[2][GFX1-]: No GPUs detected via PCI +0ms
  pw:browser [pid=4489][out]  (t=0.354806) [GFX1-]: No GPUs detected via PCI +1ms
  pw:browser [pid=4489][out]  +0ms
  pw:browser [pid=4484][out] console.error: ({}) +28ms
  pw:browser [pid=4489][out] console.error: ({}) +25ms
  pw:browser [pid=4484][out]  +22ms
  pw:browser [pid=4484][out] Juggler listening to the pipe +0ms
  pw:browser [pid=4489][out]  +20ms
  pw:browser [pid=4489][out] Juggler listening to the pipe +1ms
  pw:browser [pid=4484][out] console.error: ({}) +564ms
  pw:browser [pid=4489][out] console.error: ({}) +593ms
  pw:browser [pid=4484][out] console.error: SearchEngineSelector: "Received empty search configuration!" +472ms
  pw:browser [pid=4484][out] console.error: SearchEngineSelector: "Received empty search configuration!" +43ms
  pw:browser [pid=4484][out] console.error: SearchService: "#init: failure initializing search:" ({}) +0ms
  pw:browser [pid=4484][out] console.error: WebExtensions:  +0ms
  pw:browser [pid=4484][out]   Message: [Exception... "Failed to get engine data from Remote Settings"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://gre/modules/SearchEngineSelectorOld.sys.mjs :: getEngineConfiguration :: line [11](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:12)8"  data: no] +0ms
  pw:browser [pid=4484][out]   Stack: +0ms
  pw:browser [pid=4484][out]     getEngineConfiguration@resource://gre/modules/SearchEngineSelectorOld.sys.mjs:118:24 +0ms
  pw:browser [pid=4484][out]  +0ms
  pw:browser [pid=4484][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +1ms
  pw:browser [pid=4484][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +0ms
  pw:browser [pid=4484][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +0ms
  pw:browser [pid=4489][out] console.error: SearchEngineSelector: "Received empty search configuration!" +498ms
  pw:browser [pid=4489][out] console.error: SearchEngineSelector: "Received empty search configuration!" +[12](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:13)ms
  pw:browser [pid=4489][out] console.error: SearchService: "#init: failure initializing search:" ({}) +0ms
  pw:browser [pid=4489][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +6ms
  pw:browser [pid=4489][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +0ms
  pw:browser [pid=4489][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +1ms
  pw:browser [pid=4489][out] console.error: WebExtensions:  +3ms
  pw:browser [pid=4489][out]   Message: [Exception... "Failed to get engine data from Remote Settings"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: resource://gre/modules/SearchEngineSelectorOld.sys.mjs :: getEngineConfiguration :: line 118"  data: no] +0ms
  pw:browser [pid=4489][out]   Stack: +0ms
  pw:browser [pid=4489][out]     getEngineConfiguration@resource://gre/modules/SearchEngineSelectorOld.sys.mjs:118:24 +0ms
  pw:browser [pid=4489][out]  +0ms
  pw:browser [pid=4484][out] console.error: "Received empty top sites configuration!" +627ms
  pw:browser [pid=4484][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +3ms
  pw:browser [pid=4484][out] console.error: "Received empty top sites configuration!" +11ms
  pw:browser [pid=4489][out] console.error: "Received empty top sites configuration!" +627ms
  pw:browser [pid=4489][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +1ms
  pw:browser [pid=4489][out] console.error: "Received empty top sites configuration!" +11ms
  pw:browser [pid=4484][out] console.error: SearchSettings: "_write: Could not write to settings file:" (new Error("cannot write without any engine.", "resource://gre/modules/SearchSettings.sys.mjs", 277)) +45ms
  pw:browser [pid=4489][out] console.error: SearchSettings: "_write: Could not write to settings file:" (new Error("cannot write without any engine.", "resource://gre/modules/SearchSettings.sys.mjs", 277)) +79ms
  pw:browser [pid=4484][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +19s
  pw:browser [pid=4489][err] JavaScript error: resource://gre/modules/SearchEngineSelectorOld.sys.mjs, line 118: NS_ERROR_UNEXPECTED: Failed to get engine data from Remote Settings +19s
  pw:browser [pid=4486] <gracefully close start> +30s
  pw:browser [pid=4488] <gracefully close start> +30s
  pw:browser [pid=4488] <process did exit: exitCode=0, signal=null> +[13](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:14)ms
  pw:browser [pid=4488] starting temporary directories cleanup +1ms
  pw:browser [pid=4488] finished temporary directories cleanup +4ms
  pw:browser [pid=4488] <gracefully close end> +0ms
  pw:browser [pid=4486] <process did exit: exitCode=0, signal=null> +32ms
  pw:browser [pid=4486] starting temporary directories cleanup +0ms
  pw:browser [pid=4486] finished temporary directories cleanup +4ms
  pw:browser [pid=4486] <gracefully close end> +0ms
  pw:browser [pid=4489] <gracefully close start> +9s
  pw:browser [pid=4484] <gracefully close start> +9s
  pw:browser [pid=4489][err] JavaScript warning: resource://gre/modules/UpdateService.sys.mjs, line 3857: unreachable code after return statement +393ms
  pw:browser [pid=4489][out] 1713213481886  addons.xpi  ERROR   System addon update list error Error: Failed downloading XML, status: 0, channelStatus: 2[14](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:15)7500036, errorCode: 2, reason: error +10ms
  pw:browser [pid=4484][err] JavaScript warning: resource://gre/modules/UpdateService.sys.mjs, line 3857: unreachable code after return statement +399ms
  pw:browser [pid=4484][out] 1713213481921  addons.xpi  ERROR   System addon update list error Error: Failed downloading XML, status: 0, channelStatus: 2147500036, errorCode: 2, reason: error +9ms
  pw:browser [pid=4489] <process did exit: exitCode=0, signal=null> +1[15](https://xxx.github.com/Cloud-ASRM/sandbox/actions/runs/3810929/job/10556577#step:6:16)ms
  pw:browser [pid=4489] starting temporary directories cleanup +0ms
  pw:browser [pid=4489] finished temporary directories cleanup +6ms
  pw:browser [pid=4489] <gracefully close end> +0ms
  pw:browser [pid=4484] <process did exit: exitCode=0, signal=null> +118ms
  pw:browser [pid=4484] starting temporary directories cleanup +0ms
  pw:browser [pid=4484] finished temporary directories cleanup +5ms
  pw:browser [pid=4484] <gracefully close end> +0ms
yury-s commented 3 months ago

I uploaded your project to https://github.com/yury-s/bug-30377 and it runs without issues on the standard ubuntu image: https://github.com/yury-s/bug-30377/actions/runs/8695638205/job/23847098232, so it definitely has something to do with the custom image that you run on.

Bloke-Bloke commented 3 months ago

Thank you, our security team recently added firewalls that threw me off with the errors and blocked playwright.dev, cheers.