diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..0bd6162 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,48 @@ +name: CI + +# Controls when the action will run. +on: + # Triggers the workflow on pull request events but only for the main branch + pull_request: + branches: [main] + + push: + branches: [main] + + merge_group: + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # ======== ut ======== + ut-mac: + # run ut in MacOS, as SWC cases will fail in Ubuntu CI + runs-on: macos-14 + strategy: + matrix: + node-version: [18.x, 20.x] + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 10 + + - name: Install Pnpm + run: corepack enable + + - name: Setup Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: 'pnpm' + + - name: Install Dependencies + run: pnpm install + + - name: Build Test + run: | + pnpm run test:sandboxes-build