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