diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..a47bc65 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,42 @@ +name: CI — Lint, Test, Smoke + +on: + pull_request: + branches: [master] + push: + branches: [master] + +jobs: + quality: + runs-on: ubuntu-latest + timeout-minutes: 15 + + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Lint (ESLint) + run: npm run lint + + - name: Lint (Markdown) + run: npm run lint:md + + - name: Format check (Prettier) + run: npm run format:check + + - name: Run tests + run: npm test + + - name: Smoke test + run: npm run smoke + + - name: API validation tests + run: npm run test:validation