Publish #1607
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: CI | |
on: | |
push: | |
branches: ['main'] | |
pull_request: | |
types: [opened, synchronize] | |
env: | |
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }} | |
TURBO_TEAM: ${{ vars.TURBO_TEAM }} | |
jobs: | |
Compile: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- name: Typescript - packages | |
run: yarn tsc | |
- name: Typescript - test files | |
run: yarn tsc:test | |
Linting: | |
runs-on: ubuntu-latest | |
needs: Compile | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn tsc | |
- run: yarn eslint . | |
- name: Validate package setup | |
run: | | |
yarn setup | |
yarn prettier --write . | |
git diff --exit-code -- . :^.yarn | |
Unit: | |
name: Unit Tests | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
node-version: | |
- 20 | |
- 18 | |
steps: | |
- uses: actions/checkout@v4 | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn vitest --run --coverage | |
- uses: codecov/codecov-action@v4 | |
Integration: | |
name: Integration Tests | |
runs-on: ubuntu-latest | |
needs: Compile | |
strategy: | |
fail-fast: false | |
matrix: | |
node-version: | |
- 20 | |
- 18 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn tsc | |
- name: Integration tests | |
run: yarn node --test integration/ | |
Package: | |
name: Are the types wrong? | |
runs-on: ubuntu-latest | |
needs: Compile | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn turbo attw |