Skip to content

Test Polyfills Weekly #199

Test Polyfills Weekly

Test Polyfills Weekly #199

name: Test Polyfills Weekly
on:
schedule:
- cron: '0 23 * * 0' # TODO : set convenient weekly retest time
workflow_dispatch:
concurrency:
group: browserstack
cancel-in-progress: false
jobs:
test:
runs-on: ubuntu-latest
strategy:
max-parallel: 1
fail-fast: false
matrix:
browser: [ ie, android, chrome, edge, firefox, ios, safari ]
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 1
- uses: actions/setup-node@v2.2.0
with:
node-version: 16.x
cache: 'npm'
- name: env
run: echo "commit-sha=$(echo ${GITHUB_SHA})" >> $GITHUB_ENV
- run: npm ci
- name: cache __dist
id: cache-dist
uses: actions/cache@v2.1.5
with:
path: polyfills/__dist
key: cache--dist--${{ env.commit-sha }}
- run: npm run build
if: steps.cache-dist.outputs.cache-hit != 'true'
- run: echo "${{ matrix.browser }}" > $GITHUB_WORKSPACE/witness-${{ matrix.browser }}
- name: record ${{ matrix.browser }} witness
id: witness
uses: actions/cache@v2.1.5
with:
path: $GITHUB_WORKSPACE/witness-${{ matrix.browser }}
key: witness--weekly-tests--${{ matrix.browser }}--${{ env.commit-sha }}
- name: Test ${{ matrix.browser }}
run: node ./test/polyfills/server.js & node ./test/polyfills/remotetest.js
test-polyfill-combinations targeted director browser=${{ matrix.browser }}
if: steps.witness.outputs.cache-hit != 'true'
timeout-minutes: 30
env:
BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}