name: CI on: push: branches: - main - master pull_request: {} concurrency: group: ci-${{ github.head_ref || github.ref }} cancel-in-progress: true jobs: lint: name: "Lint" runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 with: version: 10 - name: Install Node uses: actions/setup-node@v4 with: node-version: 22 - name: Get pnpm store directory shell: bash run: | echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - uses: actions/cache@v4 name: Setup pnpm cache with: path: ${{ env.STORE_PATH }} key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}-pnpm-store- - name: Install Dependencies run: pnpm install --frozen-lockfile - name: Lint run: pnpm lint test: name: "Test" runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 with: version: 10 - name: Install Node uses: actions/setup-node@v4 with: node-version: 22 - name: Get pnpm store directory shell: bash run: | echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - uses: actions/cache@v4 name: Setup pnpm cache with: path: ${{ env.STORE_PATH }} key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}-pnpm-store- - name: Install Dependencies run: pnpm install --frozen-lockfile - name: Run Tests run: pnpm test