chore: Update SDK documentation #2604
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Run tests | |
| env: | |
| # enable colored output | |
| PY_COLORS: 1 | |
| on: | |
| push: | |
| branches: ["main"] | |
| paths: | |
| - "src/**" | |
| - "tests/**" | |
| - "uv.lock" | |
| - "pyproject.toml" | |
| - ".github/workflows/**" | |
| # run on all pull requests because these checks are required and will block merges otherwise | |
| pull_request: | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| run_tests: | |
| name: "Run tests: Python ${{ matrix.python-version }} on ${{ matrix.os }}" | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| python-version: ["3.10"] | |
| fail-fast: false | |
| timeout-minutes: 5 | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v6 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install FastMCP | |
| # run with frozen to use the current lockfile; static checks will determine if it needs updating | |
| run: uv sync --frozen | |
| - name: Run tests (excluding integration and client_process) | |
| run: uv run pytest -v tests -m "not integration and not client_process" | |
| - name: Run client process tests separately | |
| run: uv run pytest -v tests -m "client_process" -x | |
| run_integration_tests: | |
| name: "Run integration tests" | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v6 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| python-version: "3.10" | |
| - name: Install FastMCP | |
| # run with frozen to use the current lockfile; static checks will determine if it needs updating | |
| run: uv sync --frozen | |
| - name: Run integration tests | |
| # use longer per-test timeout than the default 3s | |
| run: uv run pytest -v tests -m "integration" --timeout=15 | |
| env: | |
| FASTMCP_GITHUB_TOKEN: ${{ secrets.FASTMCP_GITHUB_TOKEN }} | |
| FASTMCP_TEST_AUTH_GITHUB_CLIENT_ID: ${{ secrets.FASTMCP_TEST_AUTH_GITHUB_CLIENT_ID }} | |
| FASTMCP_TEST_AUTH_GITHUB_CLIENT_SECRET: ${{ secrets.FASTMCP_TEST_AUTH_GITHUB_CLIENT_SECRET }} |