diff --git a/.github/workflows/task-4.yaml b/.github/workflows/task-4.yaml new file mode 100644 index 0000000..fc724cb --- /dev/null +++ b/.github/workflows/task-4.yaml @@ -0,0 +1,39 @@ +name: task-4-workflow +run-name: Task 4 workflow +on: + pull_request: + branches: + - main + paths: + - "desktop-app/**" + +defaults: + run: + working-directory: desktop-app +jobs: + e2e-tests: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Use Node.js LTS + uses: actions/setup-node@v4 + with: + node-version: "lts/*" + cache: "npm" + cache-dependency-path: desktop-app + - name: Install dependencies + run: npm ci + - name: Run e2e tests + id: e2e + run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run e2e + - name: Archive test results + id: upload-screenshots + if: ${{ failure() && steps.e2e.conclusion == 'failure' }} + uses: actions/upload-artifact@v4 + with: + name: e2e-test-results + path: desktop-app/test-results + retention-days: 7 + - run: echo 'Screenshots available "at ${{ steps.upload-screenshots.outputs.artifact-url }}' + if: ${{ failure() && steps.e2e.conclusion == 'failure' }} \ No newline at end of file