Skip to content

[Snyk] Fix for 1 vulnerabilities #514

[Snyk] Fix for 1 vulnerabilities

[Snyk] Fix for 1 vulnerabilities #514

Workflow file for this run

name: smoke
on:
push:
branches: [master]
pull_request: # run on all PRs, not just PRs to a particular branch
jobs:
# `smoke` runs as a matrix across 4 jobs:
# * The smoke tests are split into two batches, to parallelize.
# * Then, those are run with both Chrome stable and ToT Chromium, in parallel
smoke:
strategy:
matrix:
chrome-channel: ['stable', 'ToT']
smoke-test-shard: [1, 2]
# e.g. if set 1 fails, continue with set 2 anyway
fail-fast: false
runs-on: ubuntu-latest
env:
# The total number of shards. Set dynamically when length of single matrix variable is
# computable. See https://gh.neting.ccmunity/t/get-length-of-strategy-matrix-or-get-all-matrix-options/18342
SHARD_TOTAL: 2
# Job named e.g. "Chrome stable, batch 1".
name: Chrome ${{ matrix.chrome-channel }}, batch ${{ matrix.smoke-test-shard }}
steps:
- name: git clone
uses: actions/checkout@v2
with:
# Depth of at least 2 for codecov coverage diffs. See https://github.com/GoogleChrome/lighthouse/pull/12079
fetch-depth: 2
- name: Use Node.js 14.x
uses: actions/setup-node@v1
with:
node-version: 14.x
- name: Define ToT chrome path
if: matrix.chrome-channel == 'ToT'
run: echo "CHROME_PATH=/home/runner/chrome-linux-tot/chrome" >> $GITHUB_ENV
# Chrome Stable is already installed by default.
- name: Install Chrome ToT
if: matrix.chrome-channel == 'ToT'
working-directory: /home/runner
run: bash $GITHUB_WORKSPACE/lighthouse-core/scripts/download-chrome.sh && mv chrome-linux chrome-linux-tot
- run: yarn install --frozen-lockfile --network-timeout 1000000
- run: yarn build-report
- run: yarn reset-link
- run: sudo apt-get install xvfb
- name: Run smoke tests
run: |
xvfb-run --auto-servernum yarn c8 yarn smoke --debug -j=1 --retries=2 --shard=${{ matrix.smoke-test-shard }}/$SHARD_TOTAL
yarn c8 report --reporter text-lcov > smoke-coverage.lcov
- name: Upload test coverage to Codecov
if: matrix.chrome-channel == 'ToT'
uses: codecov/codecov-action@6004246f47ab62d32be025ce173b241cd84ac58e
with:
flags: smoke
file: ./smoke-coverage.lcov
# Fail if any changes were written to source files.
- run: git diff --exit-code
- name: Upload dist
if: failure()
uses: actions/upload-artifact@v1
with:
name: Smokehouse (ubuntu; chrome ${{ matrix.chrome-channel }})
path: .tmp/smokehouse-ci-failures/
# Only run smoke tests for windows against stable chrome.
smoke-windows:
runs-on: windows-latest
name: Windows
steps:
- name: git clone
uses: actions/checkout@v2
- name: Use Node.js 14.x
uses: actions/setup-node@v1
with:
node-version: 14.x
- run: yarn install --frozen-lockfile --network-timeout 1000000
- run: yarn build-report
- name: Run smoke tests
# Windows bots are slow, so only run enough tests to verify matching behavior.
run: yarn smoke --debug -j=1 --retries=2 dbw oopif offline lantern metrics
# Fail if any changes were written to source files.
- run: git diff --exit-code
- name: Upload dist
if: failure()
uses: actions/upload-artifact@v1
with:
name: Smokehouse (windows)
path: .tmp/smokehouse-ci-failures/
smoke-fr:
runs-on: ubuntu-latest
name: Fraggle Rock
steps:
- name: git clone
uses: actions/checkout@v2
- name: Use Node.js 14.x
uses: actions/setup-node@v1
with:
node-version: 14.x
- run: yarn install --frozen-lockfile --network-timeout 1000000
- run: yarn build-report
- run: yarn reset-link
- run: sudo apt-get install xvfb
- name: yarn smoke --fraggle-rock
run: xvfb-run --auto-servernum yarn smoke --debug --fraggle-rock -j=1 --retries=2 --invert-match pwa offline
# Fail if any changes were written to source files.
- run: git diff --exit-code
- name: Upload dist
if: failure()
uses: actions/upload-artifact@v1
with:
name: Smokehouse (fr)
path: .tmp/smokehouse-ci-failures/
smoke-bundle:
runs-on: ubuntu-latest
name: Bundled Lighthouse
steps:
- name: git clone
uses: actions/checkout@v2
- name: Use Node.js 14.x
uses: actions/setup-node@v1
with:
node-version: 14.x
- run: yarn install --frozen-lockfile --network-timeout 1000000
- run: yarn build-report
- run: yarn build-devtools
- run: sudo apt-get install xvfb
- name: yarn test-bundle
run: xvfb-run --auto-servernum yarn test-bundle
# Fail if any changes were written to source files.
- run: git diff --exit-code
- name: Upload dist
if: failure()
uses: actions/upload-artifact@v1
with:
name: Smokehouse (bundled)
path: .tmp/smokehouse-ci-failures/