-
Notifications
You must be signed in to change notification settings - Fork 424
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: move playback tests to a separate ci run (#1028)
- Loading branch information
1 parent
d39276d
commit f1d9f6e
Showing
5 changed files
with
242 additions
and
356 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,81 +8,72 @@ jobs: | |
runs-on: ubuntu-latest | ||
# Map a step output to a job output | ||
outputs: | ||
should-skip-job: ${{ steps.skip-check.outputs.should_skip }} | ||
should-skip-job: ${{steps.skip-check.outputs.should_skip}} | ||
steps: | ||
- id: skip-check | ||
uses: fkirc/[email protected] | ||
with: | ||
github_token: ${{ github.token }} | ||
github_token: ${{github.token}} | ||
|
||
ci: | ||
needs: should-skip | ||
if: ${{ needs.should-skip.outputs.should-skip-job != 'true'}} | ||
env: | ||
BROWSER_STACK_USERNAME: ${{ secrets.BROWSER_STACK_USERNAME }} | ||
BROWSER_STACK_ACCESS_KEY: ${{ secrets.BROWSER_STACK_ACCESS_KEY }} | ||
runs-on: ${{ matrix.os }} | ||
if: ${{needs.should-skip.outputs.should-skip-job != 'true'}} | ||
strategy: | ||
# TODO: test IE 11, Legacy Edge, and New Edge on windows-latest | ||
# test Safari on macos-latest | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest] | ||
|
||
test-type: [unit, playback] | ||
env: | ||
BROWSER_STACK_USERNAME: ${{secrets.BROWSER_STACK_USERNAME}} | ||
BROWSER_STACK_ACCESS_KEY: ${{secrets.BROWSER_STACK_ACCESS_KEY}} | ||
CI_TEST_TYPE: ${{matrix.test-type}} | ||
runs-on: ${{matrix.os}} | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: checkout code | ||
uses: actions/checkout@v2 | ||
|
||
- name: Cache dependencies | ||
uses: actions/cache@v2 | ||
with: | ||
path: | | ||
~/.npm | ||
**/node_modules | ||
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }} | ||
key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}} | ||
restore-keys: | | ||
${{ runner.os }}-npm- | ||
${{ runner.os }}- | ||
${{runner.os}}-npm- | ||
${{runner.os}}- | ||
- name: Read .nvmrc | ||
- name: read node version from .nvmrc | ||
run: echo ::set-output name=NVMRC::$(cat .nvmrc) | ||
shell: bash | ||
id: nvm | ||
|
||
- name: update apt cache on linux w/o browserstack | ||
run: sudo apt-get update | ||
if: ${{ startsWith(matrix.os, 'ubuntu') && !env.BROWSER_STACK_USERNAME }} | ||
if: ${{startsWith(matrix.os, 'ubuntu') && !env.BROWSER_STACK_USERNAME}} | ||
|
||
- name: Install ffmpeg/pulseaudio for firefox on linux w/o browserstack | ||
- name: install ffmpeg/pulseaudio for firefox on linux w/o browserstack | ||
run: sudo apt-get install ffmpeg pulseaudio | ||
if: ${{ startsWith(matrix.os, 'ubuntu') && !env.BROWSER_STACK_USERNAME }} | ||
if: ${{startsWith(matrix.os, 'ubuntu') && !env.BROWSER_STACK_USERNAME}} | ||
|
||
- name: start pulseaudio for firefox on linux w/o browserstack | ||
run: pulseaudio -D | ||
if: ${{ startsWith(matrix.os, 'ubuntu') && !env.BROWSER_STACK_USERNAME }} | ||
if: ${{startsWith(matrix.os, 'ubuntu') && !env.BROWSER_STACK_USERNAME}} | ||
|
||
- name: Setup node | ||
- name: setup node | ||
uses: actions/setup-node@v1 | ||
with: | ||
node-version: '${{ steps.nvm.outputs.NVMRC }}' | ||
node-version: '${{steps.nvm.outputs.NVMRC}}' | ||
|
||
# turn off the default setup-node problem watchers... | ||
- run: echo "::remove-matcher owner=eslint-compact::" | ||
- run: echo "::remove-matcher owner=eslint-stylish::" | ||
- run: echo "::remove-matcher owner=tsc::" | ||
|
||
- run: npm i --prefer-offline --no-audit | ||
|
||
# run safari on macos | ||
- name: Run Mac test | ||
run: npm run test -- --browsers Safari | ||
if: ${{ startsWith(matrix.os, 'macos') }} | ||
- name: npm install | ||
run: npm i --prefer-offline --no-audit | ||
|
||
# only run ie 11 on windows | ||
- name: Run Windows test | ||
run: npm run test -- --browsers IE | ||
if: ${{ startsWith(matrix.os, 'windows') }} | ||
|
||
# run chrome/firefox or browserstack in linux | ||
- name: Run linux test | ||
- name: run npm test | ||
uses: GabrielBB/xvfb-action@v1 | ||
with: | ||
run: npm test | ||
if: ${{ startsWith(matrix.os, 'ubuntu') }} | ||
|
||
run: npm run test |
Oops, something went wrong.