1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- name: CI
- on:
- push:
- branches: [master, next]
- pull_request:
- branches: [master, next]
- permissions:
- contents: read
- jobs:
- build:
- runs-on: ubuntu-latest
- timeout-minutes: 15
- strategy:
- matrix:
- node-version: [20]
- steps:
- - uses: actions/checkout@v3
- - uses: pnpm/action-setup@v3
- with:
- version: ^8.15.0
- - name: Use Node.js ${{ matrix.node-version }}
- uses: actions/setup-node@v3
- with:
- node-version: ${{ matrix.node-version }}
- cache: 'pnpm'
- # Cargo already skips downloading dependencies if they already exist
- - name: Cache cargo
- uses: actions/cache@v3
- with:
- path: |
- ~/.cargo/bin/
- ~/.cargo/registry/index/
- ~/.cargo/registry/cache/
- ~/.cargo/git/db/
- target/
- key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- # Cache the `oxide` Rust build
- - name: Cache oxide build
- uses: actions/cache@v3
- with:
- path: |
- ./target/
- ./crates/node/*.node
- ./crates/node/index.js
- ./crates/node/index.d.ts
- key: ${{ runner.os }}-oxide-${{ hashFiles('./crates/**/*') }}
- - name: Install dependencies
- run: pnpm install
- - name: Build
- run: pnpm run build
- - name: Lint
- run: pnpm run lint
- - name: Test
- run: pnpm run test
- - name: Install Playwright Browsers
- run: npx playwright install --with-deps
- - name: Run Playwright tests
- run: npm run test:ui
- - uses: actions/upload-artifact@v3
- if: always()
- with:
- name: playwright-report
- path: packages/tailwindcss/playwright-report/
- retention-days: 30
- - name: Bench
- run: pnpm run bench
|