mirror of
https://github.com/kemko/nomad.git
synced 2026-01-03 08:55:43 +03:00
Since the matrix exercises different test cases, it's better to allow all partitions to completely run, even if one of them fails, so it's easier to catch multiple test failures.
101 lines
2.4 KiB
YAML
101 lines
2.4 KiB
YAML
name: test-ui
|
|
on:
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'README.md'
|
|
- 'CHANGELOG.md'
|
|
- '.changelog/**'
|
|
- '.tours/**'
|
|
- 'contributing/**'
|
|
- 'demo/**'
|
|
- 'dev/**'
|
|
- 'e2e/**'
|
|
- 'integrations/**'
|
|
- 'pkg/**'
|
|
- 'scripts/**'
|
|
- 'terraform/**'
|
|
- 'website/**'
|
|
push:
|
|
branches:
|
|
- main
|
|
- release/**
|
|
- test-ui
|
|
paths-ignore:
|
|
- 'README.md'
|
|
- 'CHANGELOG.md'
|
|
- '.changelog/**'
|
|
- '.tours/**'
|
|
- 'contributing/**'
|
|
- 'demo/**'
|
|
- 'dev/**'
|
|
- 'e2e/**'
|
|
- 'integrations/**'
|
|
- 'pkg/**'
|
|
- 'scripts/**'
|
|
- 'terraform/**'
|
|
- 'website/**'
|
|
|
|
jobs:
|
|
pre-test:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
defaults:
|
|
run:
|
|
working-directory: ui
|
|
outputs:
|
|
nonce: ${{ steps.nonce.outputs.nonce }}
|
|
steps:
|
|
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
|
- name: yarn install
|
|
run: yarn install --frozen-lockfile
|
|
- name: lint:js
|
|
run: yarn run lint:js
|
|
- name: lint:hbs
|
|
run: yarn run lint:hbs
|
|
- id: nonce
|
|
name: nonce
|
|
run: echo "nonce=${{ github.run_id }}-$(date +%s)" >> "$GITHUB_OUTPUT"
|
|
|
|
tests:
|
|
needs:
|
|
- pre-test
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
continue-on-error: true
|
|
defaults:
|
|
run:
|
|
working-directory: ui
|
|
strategy:
|
|
matrix:
|
|
partition: [1, 2, 3, 4]
|
|
split: [4]
|
|
steps:
|
|
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
|
- name: yarn install
|
|
run: yarn install --frozen-lockfile
|
|
- name: ember exam
|
|
env:
|
|
PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
|
|
PERCY_PARALLEL_NONCE: ${{ needs.pre-test.outputs.nonce }}
|
|
run: yarn exam:parallel --split=${{ matrix.split }} --partition=${{ matrix.partition }}
|
|
finalize:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
defaults:
|
|
run:
|
|
working-directory: ui
|
|
needs:
|
|
- pre-test
|
|
- tests
|
|
steps:
|
|
- uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
|
- name: yarn install
|
|
run: yarn install --frozen-lockfile
|
|
- name: finalize
|
|
env:
|
|
PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
|
|
PERCY_PARALLEL_NONCE: ${{ needs.pre-test.outputs.nonce }}
|
|
run: yarn percy build:finalize
|
|
permissions:
|
|
contents: read
|