Skip to main content
Glama
ci.yml4.35 kB
name: CI on: pull_request: push: branches: [ main ] permissions: contents: read env: NODE_VERSION: '18' jobs: lint: name: Code Quality & Linting runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Setup Node.js uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'npm' - name: Install dependencies run: npm ci - name: Run ESLint run: npx eslint . continue-on-error: false - name: Check code formatting with Prettier run: npx prettier --check "**/*.{js,mjs,cjs,json,md}" - name: Lint markdown files run: npx markdownlint-cli2 "**/*.md" test: name: Tests runs-on: ubuntu-latest strategy: matrix: node-version: [18, 20, 22] steps: - name: Checkout code uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Setup Node.js ${{ matrix.node-version }} uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4 with: node-version: ${{ matrix.node-version }} cache: 'npm' - name: Install dependencies run: npm ci - name: Run tests run: npm test coverage: name: Test Coverage runs-on: ubuntu-latest needs: test steps: - name: Checkout code uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Setup Node.js uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'npm' - name: Install dependencies run: npm ci - name: Run test coverage run: npm run test:coverage - name: Upload coverage reports to Codecov uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5 with: directory: ./coverage fail_ci_if_error: false files: ./coverage/lcov.info flags: unittests name: codecov-warp-sql-server-mcp token: ${{ secrets.CODECOV_TOKEN }} # yamllint disable-line continue-on-error: true security: name: Security Audit runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Setup Node.js uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'npm' - name: Run security audit run: npm audit --audit-level=high - name: Check for known vulnerabilities run: npx audit-ci --config .audit-ci.json || echo "audit-ci not configured, skipping" continue-on-error: true integration: name: Integration Tests runs-on: ubuntu-latest needs: [lint, test] if: github.event_name == 'push' && github.ref == 'refs/heads/main' steps: - name: Checkout code uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Setup Node.js uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'npm' - name: Install dependencies run: npm ci - name: Run integration tests run: npm run test:integration || echo "No integration tests configured" continue-on-error: true build: name: Build Check runs-on: ubuntu-latest needs: [lint, test] steps: - name: Checkout code uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Setup Node.js uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4 with: node-version: ${{ env.NODE_VERSION }} cache: 'npm' - name: Install dependencies run: npm ci - name: Build project run: npm run build || echo "No build script configured" continue-on-error: true - name: Check bundle size run: npm run size-check || echo "No size-check script configured" continue-on-error: true

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/egarcia74/warp-sql-server-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server