A GitHub Action / Docker image for Puppeteer, the Headless Chrome Node API
Sorry, I've switched to Playwright and no longer use Puppeteer. You should be able to use ianwalter/playwright-container instead by setting environment variables like:
PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
PUPPETEER_EXECUTABLE_PATH=/opt/playwright-browsers/chromium-857950/chrome-linux/chrome
So that Puppeteer doesn't download Chromium and uses the existig binary in the image.
Forked from buildkite/puppeteer and based on this troubleshooting guide.
Puppeteer will need to be launched with:
browser.launch({ args: ['--no-sandbox'] })
This is done by default in @ianwalter/bff-puppeteer.
As a GitHub Action:
name: CI
on:
push:
branches:
- master
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install
# NOTE: this pins the action to a specific commit sha for security
# reasons but you can also use a version tag if desired. For example:
# ianwalter/puppeteer-container@v4.0.0
uses: ianwalter/puppeteer-container@acc52cd2334ad9eaf6e1974562d263e0a711b7e8
with:
args: pnpm i
- name: Test
uses: ianwalter/puppeteer-container@acc52cd2334ad9eaf6e1974562d263e0a711b7e8
with:
args: pnpm t
As a Docker container:
docker pull ianwalter/puppeteer:v4.0.0
@ianwalter/bff
- Your friendly test frameworkianwalter/playwright-container
- A GitHub Action / Docker image for Playwright, the browser automation library
Apache 2.0 with Commons Clause - See LICENSE
Created by Ian Walter