name: Backend Tests on: push: branches: [master] pull_request: branches: [master] jobs: pytest: runs-on: ubuntu-latest env: # Typer otherwise forces ANSI help output when GITHUB_ACTIONS is set. _TYPER_FORCE_DISABLE_TERMINAL: "1" strategy: fail-fast: false matrix: python-version: ["3.10", "3.11", "3.12", "3.13"] defaults: run: working-directory: ruoyi-fastapi-backend steps: - uses: actions/checkout@v5 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} cache: pip cache-dependency-path: | ruoyi-fastapi-backend/requirements.txt ruoyi-fastapi-backend/plugins/ai/plugin.yaml - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pytest pytest-asyncio aiosqlite - name: Install AI plugin dependencies run: | pip install \ agno==2.8.6 \ anthropic==0.120.2 \ cerebras-cloud-sdk==1.91.0 \ cohere==7.0.8 \ google-genai==2.16.0 \ groq==1.6.0 \ litellm==1.94.0 \ llama-api-client==0.6.0 \ mistralai==2.8.0 \ ollama==0.6.2 \ openai==2.52.0 \ portkey-ai==2.3.4 - name: Run backend tests run: pytest -q