name: CI on: push: branches: [main, develop] pull_request: branches: [main, develop] jobs: build-and-test: runs-on: ubuntu-latest steps: - name: Checkout repo uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '22' - name: Install bun uses: oven-sh/setup-bun@v2 with: bun-version: 1.3.3 - name: Install dependencies run: bun --bun install - name: Is vite there? run: ls node_modules/vite - name: Is node cli there? run: ls node_modules/vite/dist/node # - name: Install dependencies # run: npm ci - name: Build app run: bun --bun run build # - name: Run type checking # run: bun --bun run check # type-check: # runs-on: ubuntu-latest # container: # image: oven/bun:alpine # needs: install-dependencies # steps: # - name: Checkout code # uses: actions/checkout@v4 # - name: Download node_modules artifact # uses: actions/download-artifact@v3 # with: # name: node_modules # path: node_modules # - name: Run type checking # run: bun run check # lint: # runs-on: ubuntu-latest # container: # image: oven/bun:alpine # needs: install-dependencies # steps: # - name: Checkout code # uses: actions/checkout@v4 # - name: Download node_modules artifact # uses: actions/download-artifact@v3 # with: # name: node_modules # path: node_modules # - name: Run linting # run: bun run lint:check # format-check: # runs-on: ubuntu-latest # container: # image: oven/bun:alpine # needs: install-dependencies # steps: # - name: Checkout code # uses: actions/checkout@v4 # - name: Download node_modules artifact # uses: actions/download-artifact@v3 # with: # name: node_modules # path: node_modules # - name: Check formatting # run: bun run format:check # build: # runs-on: ubuntu-latest # container: # image: oven/bun:alpine # needs: install-dependencies # steps: # - name: Checkout code # uses: actions/checkout@v4 # - name: Download node_modules artifact # uses: actions/download-artifact@v3 # with: # name: node_modules # path: node_modules # - name: Build application # run: bun run build # - name: Upload build artifacts # uses: actions/upload-artifact@v4 # with: # name: build-output # path: build/ # retention-days: 7