name: CI on: [push, pull_request] jobs: build: name: CI runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: node-version: 14 - name: Cache node modules id: cacheNodeModules uses: actions/cache@v2 with: path: '**/node_modules' key: ${{ runner.os }}-cacheNodeModules-${{ hashFiles('**/package-lock.json') }} restore-keys: ${{ runner.os }}-cacheNodeModules- - name: Install node modules (1) if: ${{ steps.cacheNodeModules.outputs.cache-hit != 'true' }} run: npm install - name: Install node modules (2) if: ${{ steps.cacheNodeModules.outputs.cache-hit != 'true' }} run: npm install --prefix webpack-plugin - name: Install Playwright run: npm run playwright-install - name: Install OS Dependencies for Playwright run: sudo npm run playwright-install-deps - name: Check prettier run: npm run prettier-check - name: Build run: npm run release - name: Run unit tests run: npm test - name: Compile webpack plugin run: npm run compile --prefix webpack-plugin - name: Package using webpack plugin run: npm run smoketest --prefix webpack-plugin - name: Run smoke test run: npm run smoketest - name: Build website run: npm run build-website