From 45c01dbf7236e318bb2d4a6a630a550e1ea23b47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=95=E8=88=9E=E5=85=AB=E5=BC=A6?= <1677759063@qq.com> Date: Sat, 17 Aug 2024 15:46:20 +0800 Subject: [PATCH] ci: run lint and test --- .github/actions/setup-node/action.yml | 18 ++++++++++ .github/workflows/ci.yml | 49 +++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 .github/actions/setup-node/action.yml create mode 100644 .github/workflows/ci.yml diff --git a/.github/actions/setup-node/action.yml b/.github/actions/setup-node/action.yml new file mode 100644 index 0000000..764d742 --- /dev/null +++ b/.github/actions/setup-node/action.yml @@ -0,0 +1,18 @@ +name: Setup Node +description: Setup Node + +runs: + using: composite + steps: + - name: Install pnpm + uses: pnpm/action-setup@v3 + + - name: Install Node.js + uses: actions/setup-node@v4 + with: + node-version: lts/* + cache: pnpm + + - name: Install dependencies + shell: bash + run: pnpm install diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..bbf3d75 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,49 @@ +name: CI + +on: + push: + branches: + - main + + pull_request: + branches: + - main + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Setup Node + uses: ./.github/actions/setup-node + + - name: Build + run: pnpm run build + + - name: Lint + run: pnpm run lint + + - name: Typecheck + run: pnpm run typecheck + + test: + runs-on: ${{ matrix.os }} + + strategy: + matrix: + node: [lts/*] + os: [ubuntu-latest, windows-latest, macos-latest] + fail-fast: false + + steps: + - uses: actions/checkout@v4 + + - name: Setup Node + uses: ./.github/actions/setup-node + + - name: Build + run: pnpm run build + + - name: Test + run: pnpm run test