name: CI / Build and test on: pull_request: workflow_dispatch: push: branches: - main jobs: install: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v2 with: version: 9 - name: Set up config files run: cp config/config.example.toml config/config.toml - name: Cypress install uses: cypress-io/github-action@v6 with: # Disable running of tests within install job runTests: false build: pnpm run build continue-on-error: true - name: Save build folder uses: actions/upload-artifact@v3 with: name: dist if-no-files-found: error path: dist cypress-run: runs-on: ubuntu-latest needs: install steps: - name: Checkout uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v2 with: version: 9 - name: Set up config files run: cp config/config.example.toml config/config.toml - name: Download the build folder uses: actions/download-artifact@v3 with: name: dist path: dist - name: Start MongoDB uses: supercharge/mongodb-github-action@1.10.0 - name: Cypress run uses: cypress-io/github-action@v6 with: start: pnpm start browser: chrome env: CYPRESS: true - name: Upload screenshots uses: actions/upload-artifact@v3 if: failure() with: name: cypress-screenshots path: cypress/screenshots