chore: mcp for qa workflows #79
  
    
      This file contains hidden or 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: Continuous Integration | |
| on: | |
| pull_request: | |
| branches: [ main ] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 # Needed for Nx affected commands | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: ^24.1 | |
| cache: 'npm' | |
| # Setup Nx cache for faster builds | |
| - name: Setup Nx cache | |
| uses: actions/cache@v3 | |
| with: | |
| path: | | |
| node_modules/.cache/nx | |
| .nx/cache | |
| key: ${{ runner.os }}-nx-${{ hashFiles('**/package-lock.json') }} | |
| restore-keys: | | |
| ${{ runner.os }}-nx- | |
| - name: install virtual display | |
| run: sudo apt-get install xvfb | |
| - name: npm install | |
| run: npm ci | |
| # Build affected projects only | |
| - name: build affected | |
| run: npm run build:affected | |
| # Test affected projects only | |
| - name: test affected | |
| run: xvfb-run --auto-servernum npm run test:affected | |
| - name: npm pack | |
| run: npm pack --ws | |
| - name: upload artefacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: artefacts | |
| path: | | |
| **/*.tgz |