refactor: UI libs CSS+API refactor #2264
This file contains 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: build | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
types: [opened, synchronize, reopened, edited] | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: "20.x" | |
- name: Cache node modules | |
uses: actions/cache@v4 | |
env: | |
cache-name: cache-node-modules | |
with: | |
# npm cache files are stored in `~/.npm` on Linux/macOS | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- name: cache playwright | |
id: playwright-cache | |
uses: actions/cache@v4 | |
with: | |
path: ~/.cache/ms-playwright | |
key: pw-new-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }} | |
- name: Install Dependencies | |
run: npm install | |
- name: Bootstrap packages | |
run: npm run bootstrap | |
- name: Lint packages | |
run: npm run lint | |
env: | |
CI: true | |
- name: Build packages | |
run: npm run build | |
env: | |
CI: true | |
- name: Run unit tests | |
run: npm run test | |
env: | |
CI: true | |
- name: Run server | |
run: npm run start:built & npx wait-on http://localhost:3000 | |
env: | |
CI: true | |
- name: Install Playwright | |
run: npm run install-playwright | |
- name: Run Playwright tests | |
working-directory: ./tests | |
run: npx playwright test | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: playwright-report | |
path: tests/playwright-report/ | |
retention-days: 30 | |
- name: Upload webpack stats artifact (editor) | |
uses: relative-ci/agent-upload-artifact-action@v1 | |
with: | |
webpackStatsFile: ./playground/dist/webpack-stats.json | |
artifactName: relative-ci-artifacts-editor |