name: CI on: push: branches: ["main", "master"] pull_request: branches: ["main", "master"] workflow_dispatch: jobs: python: name: Python checks runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.11" cache: "pip" - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install pytest - name: Compile Python run: python -m compileall backend scripts - name: Run tests run: | if [ -d tests ] && find tests -name "test_*.py" | grep -q .; then python -m pytest else echo "No tests found yet." fi docker: name: Docker builds runs-on: ubuntu-latest needs: python steps: - name: Checkout uses: actions/checkout@v4 - name: Build backend image run: docker build -f backend/Dockerfile -t codebase-agent-backend:ci . - name: Build frontend image run: docker build -f frontend/Dockerfile -t codebase-agent-frontend:ci .