Fix function calling in get_shift_handoff_report #69
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: Tests | |
| on: [push, pull_request] | |
| jobs: | |
| local-tests: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: astral-sh/setup-uv@v3 | |
| - run: uv python install 3.12 && uv sync --dev | |
| # Fast local validation | |
| - name: Code quality checks | |
| run: | | |
| uv run ruff check . | |
| uv run pyright | |
| - name: Unit tests | |
| run: uv run pytest tests/unit/ --cov=src/rootly_mcp_server --cov-report=xml | |
| - name: Local integration tests | |
| env: | |
| ROOTLY_API_TOKEN: ${{ secrets.ROOTLY_API_TOKEN }} | |
| run: uv run pytest tests/integration/local/ -x | |
| - name: Upload coverage | |
| uses: codecov/codecov-action@v4 | |
| with: | |
| file: ./coverage.xml | |
| container-tests: | |
| runs-on: ubuntu-latest | |
| needs: local-tests | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: astral-sh/setup-uv@v3 | |
| - run: uv python install 3.12 && uv sync --dev | |
| # Build and run the Docker container | |
| - name: Build Docker image | |
| run: docker build -t rootly-mcp-server . | |
| - name: Start MCP server container | |
| env: | |
| ROOTLY_API_TOKEN: ${{ secrets.ROOTLY_API_TOKEN }} | |
| run: | | |
| docker run -d \ | |
| --name rootly-mcp-server \ | |
| -p 8000:8000 \ | |
| -e ROOTLY_API_TOKEN="${ROOTLY_API_TOKEN}" \ | |
| rootly-mcp-server | |
| # Wait for container to be ready | |
| - name: Wait for container startup | |
| run: | | |
| echo "⏳ Waiting for container to start..." | |
| timeout 30s bash -c 'until curl -f http://localhost:8000/health || curl -f http://localhost:8000/; do sleep 2; done' | |
| echo "✅ Container is ready!" | |
| # Test the containerized server | |
| - name: Test containerized MCP server | |
| env: | |
| ROOTLY_API_TOKEN: ${{ secrets.ROOTLY_API_TOKEN }} | |
| MCP_SERVER_URL: "http://localhost:8000" | |
| run: uv run pytest tests/integration/remote/test_essential.py -v --timeout=60 | |
| # Cleanup | |
| - name: Stop container | |
| if: always() | |
| run: docker stop rootly-mcp-server && docker rm rootly-mcp-server |