Proposal for switching desktop-client to vite #4924
Workflow file for this run
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
name: E2E Tests | |
on: [pull_request] | |
env: | |
GITHUB_PR_NUMBER: ${{github.event.pull_request.number}} | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
netlify: | |
name: Wait for Netlify build to finish | |
runs-on: ubuntu-latest | |
outputs: | |
netlify_url: ${{ steps.netlify.outputs.url }} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up environment | |
uses: ./.github/actions/setup | |
- name: Wait for Netlify build to finish | |
id: netlify | |
env: | |
COMMIT_SHA: ${{ github.event.pull_request.head.sha }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: ./.github/actions/netlify-wait-for-build | |
functional: | |
name: Functional | |
needs: netlify | |
runs-on: ubuntu-latest | |
container: | |
image: mcr.microsoft.com/playwright:v1.37.0-jammy | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up environment | |
uses: ./.github/actions/setup | |
- name: Run E2E Tests on Netlify URL | |
run: yarn e2e | |
env: | |
E2E_START_URL: ${{ needs.netlify.outputs.netlify_url }} | |
- uses: actions/upload-artifact@v3 | |
if: always() | |
with: | |
name: desktop-client-test-results | |
path: packages/desktop-client/test-results/ | |
retention-days: 30 | |
vrt: | |
name: Visual regression | |
needs: netlify | |
runs-on: ubuntu-latest | |
container: | |
image: mcr.microsoft.com/playwright:v1.37.0-jammy | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up environment | |
uses: ./.github/actions/setup | |
- name: Run VRT Tests on Netlify URL | |
run: yarn vrt | |
env: | |
E2E_START_URL: ${{ needs.netlify.outputs.netlify_url }} | |
- uses: actions/upload-artifact@v3 | |
if: always() | |
with: | |
name: desktop-client-test-results | |
path: packages/desktop-client/test-results/ | |
retention-days: 30 | |
- uses: actions-ecosystem/action-add-labels@v1 | |
if: failure() | |
with: | |
labels: ':red_circle: VRT failing' | |
- uses: actions-ecosystem/action-remove-labels@v1 | |
if: success() | |
with: | |
labels: ':red_circle: VRT failing' | |
- name: Find Comment | |
uses: peter-evans/find-comment@v2 | |
id: fc | |
with: | |
issue-number: ${{ github.event.pull_request.number }} | |
comment-author: 'github-actions[bot]' | |
body-includes: VRT | |
- name: Create comment if failed | |
if: failure() | |
uses: peter-evans/create-or-update-comment@v3 | |
with: | |
comment-id: ${{ steps.fc.outputs.comment-id }} | |
issue-number: ${{ github.event.pull_request.number }} | |
body: | | |
:wave: Looks like VRT (visual regression tests) are failing in this PR. This indicates a problem in the app. It could be either a bug in this PR or a visual change introduced by changing something. | |
To fix this: please follow [these instructions](https://github.com/actualbudget/actual/blob/master/packages/desktop-client/README.md#visual-regression) and review the output of the failing CI job to see the generated screenshots. | |
We look forward to reviewing this PR once all the CI jobs have passed successfully! | |
edit-mode: replace | |
- name: Update comment when CI job passes | |
if: success() && steps.fc.outputs.comment-id != '' | |
uses: peter-evans/create-or-update-comment@v3 | |
with: | |
comment-id: ${{ steps.fc.outputs.comment-id }} | |
body: The VRT tests have passed! Thank you! | |
edit-mode: replace |