Skip to main content
Glama
ci.yml2.79 kB
name: CI on: push: branches: [main] pull_request: branches: [main] jobs: lint: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.12", "3.13"] steps: - uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v7 with: enable-cache: true version: "0.9.13" - name: Set up Python ${{ matrix.python-version }} run: uv python install ${{ matrix.python-version }} - name: Install dependencies run: uv sync --all-groups - name: Lint with Ruff run: | uv run ruff check . --output-format=github uv run ruff format --check . # Phase 2: Check architectural layer boundaries - name: Check layer boundaries run: uv run lint-imports type-check: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.12", "3.13"] steps: - uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v7 with: enable-cache: true version: "0.9.13" - name: Set up Python ${{ matrix.python-version }} run: uv python install ${{ matrix.python-version }} - name: Install dependencies run: uv sync --all-groups - name: Type check with Mypy run: uv run mypy src/ --ignore-missing-imports test: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.12", "3.13"] steps: - uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v7 with: enable-cache: true version: "0.9.13" - name: Set up Python ${{ matrix.python-version }} run: uv python install ${{ matrix.python-version }} - name: Install dependencies run: uv sync --all-groups - name: Run tests with coverage run: | uv run pytest \ -m "not requires_snowflake" \ --cov=src/igloo_mcp \ --cov-report=xml \ --cov-report=term-missing \ --cov-fail-under=70 \ -v # Phase 3.6: Enforce critical module coverage - name: Check critical module coverage run: | uv run python scripts/check_critical_coverage.py \ --coverage-file coverage.xml \ --min-coverage 55 \ --critical-modules "mcp/tools" "service_layer" "sql_validation.py" - name: Upload coverage to Codecov uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} files: ./coverage.xml flags: unittests fail_ci_if_error: false # Don't fail CI if codecov upload fails (token may not be configured) verbose: 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/Evan-Kim2028/igloo-mcp'

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