# This workflow will do a clean install of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions

name: build

on: [push, pull_request]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [20]

    steps:
    - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v3
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v3
      with:
        node-version: ${{ matrix.node-version }}
        cache: 'npm'
    - run: python -m venv env
    - run: source env/bin/activate
    - run: pip install --upgrade pip
    - run: pip install --ignore-requires-python python-minifier
    - run: pip install setuptools
    - run: npm ci
    - run: npx playwright install chromium
    - run: npm run build
    - run: npm run test
