diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..aa39a9a --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,81 @@ +name: demo + +on: + push: + branches: + - main + - next + + pull_request: + branches: + - main + - next + + merge_group: {} + +jobs: + lint: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: Install pnpm + uses: pnpm/action-setup@v2 + + - name: Set node + uses: actions/setup-node@v3 + with: + node-version: 18.x + cache: pnpm + + - name: Setup + run: npm i -g @antfu/ni + + - name: Install + run: nci + + - name: Lint + run: nr lint + + test: + runs-on: ubuntu-latest + + strategy: + matrix: + node: [16.x, 18.x, 20.x] + fail-fast: false + + steps: + - uses: actions/checkout@v3 + + - name: Install pnpm + uses: pnpm/action-setup@v2 + + - name: Set node version to ${{ matrix.node }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + cache: pnpm + + - name: Setup + run: npm i -g @antfu/ni + + - name: Install + run: nci + + - name: Build + run: nr build + + - name: Typecheck + run: nr typecheck + + - name: Test Vue 3 + run: pnpm run test:3 + + - name: Test Vue 2 + run: pnpm run test:2 + + - if: matrix.node == '18.x' + name: Playground Smoke Test + run: cd playgrounds && bash ./build.sh