name: Frontend CI on: push: branches: [ main, develop, feature/** ] paths: - 'ruoyi-ui-next/**' pull_request: branches: [ main, develop ] paths: - 'ruoyi-ui-next/**' jobs: build: runs-on: ubuntu-latest defaults: run: working-directory: ruoyi-ui-next steps: - uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '18' cache: 'npm' cache-dependency-path: ruoyi-ui-next/package-lock.json - name: Install dependencies run: npm ci - name: Run ESLint run: npm run lint continue-on-error: true - name: Type check run: npx vue-tsc --noEmit continue-on-error: true - name: Build run: npm run build - name: Upload build artifacts uses: actions/upload-artifact@v4 with: name: frontend-dist path: ruoyi-ui-next/dist/ - name: Upload coverage reports if: always() uses: actions/upload-artifact@v4 with: name: coverage-report path: ruoyi-ui-next/coverage/