name: CI on: push: branches: [main] pull_request: branches: [main] jobs: lint-and-test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.11" cache: pip - name: Install dependencies run: pip install -r requirements.txt - name: Lint with ruff run: | pip install ruff ruff check src/ tests/ - name: Type check with mypy run: | pip install mypy mypy src/ --ignore-missing-imports --no-error-summary || true - name: Run tests run: pytest tests/ -v --ignore=tests/evaluation/ env: LLM_PROVIDER: ollama EMBEDDING_PROVIDER: local build-image: runs-on: ubuntu-latest needs: lint-and-test if: github.ref == 'refs/heads/main' steps: - uses: actions/checkout@v4 - name: Build Docker image run: docker build -f Dockerfile.compose -t doc-assistant:${{ github.sha }} .