a2a.yaml
1 name: A2A CI 2 3 on: 4 push: 5 paths: 6 - .github/workflows/a2a.yaml 7 - a2a/** 8 branches: 9 - main 10 pull_request: 11 paths: 12 - .github/workflows/a2a.yaml 13 - a2a/** 14 15 permissions: 16 contents: read 17 18 jobs: 19 check: 20 name: Format & Type Check 21 runs-on: ubuntu-latest 22 env: 23 UV_PYTHON: "3.13" 24 25 defaults: 26 run: 27 working-directory: a2a 28 29 steps: 30 - name: Checkout repository 31 uses: actions/checkout@v4 32 33 - name: Set up Python 34 uses: actions/setup-python@v5 35 with: 36 python-version: "3.13" 37 38 - name: Install uv 39 run: | 40 curl -LsSf https://astral.sh/uv/install.sh | sh 41 echo "$HOME/.cargo/bin" >> $GITHUB_PATH # Make uv available 42 43 - name: Check format 44 run: uv run ruff format --check 45 46 - name: Check lint 47 run: uv run ruff check 48 49 - name: Check types 50 run: uv run pyright 51 52 build: 53 name: Build 54 runs-on: ubuntu-latest 55 defaults: 56 run: 57 working-directory: a2a 58 59 steps: 60 - name: Checkout repository 61 uses: actions/checkout@v4 62 63 - name: Set up Docker Compose 64 uses: ./.github/actions/setup-compose 65 66 - name: Build Docker images 67 run: docker compose build