Skip to content

Commit 17d5f38

Browse files
google-genai-botcopybara-github
authored andcommitted
ci: add dual-version A2A CI coverage (a2a-sdk 0.3.x and 1.x)
Add a CI job that runs the A2A test suite against a2a-sdk 0.3.x in addition to the version resolved by the main test run, so the adk/a2a/_compat.py compatibility shim stays verified against both SDK majors. PiperOrigin-RevId: 940935952
1 parent c6dec00 commit 17d5f38

1 file changed

Lines changed: 41 additions & 1 deletion

File tree

.github/workflows/continuous-integration.yml

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ jobs:
116116
echo "Great job! No new mypy errors introduced."
117117
fi
118118
119-
# 3. Unit testing (Unit Tests with Matrix)
119+
# 3a. Unit testing (Unit Tests with Matrix)
120120
unit-test:
121121
name: Unit Tests (Python ${{ matrix.python-version }})
122122
runs-on: ubuntu-latest
@@ -152,3 +152,43 @@ jobs:
152152
-n auto \
153153
--ignore=tests/unittests/artifacts/test_artifact_service.py \
154154
--ignore=tests/unittests/tools/google_api_tool/test_googleapi_to_openapi_converter.py
155+
156+
# 3b. Dual-version A2A coverage: This job pins a2a-sdk to 0.3.x and
157+
# runs only the A2A-related tests, so the a2a/_compat.py shim stays
158+
# verified against both SDK majors.
159+
# TODO: Remove this 0.3.x re-run once a2a-sdk 0.3.x support is dropped.
160+
unit-test-a2a-v0-3:
161+
name: A2A v0.3 Tests (Python ${{ matrix.python-version }})
162+
runs-on: ubuntu-latest
163+
strategy:
164+
fail-fast: false
165+
matrix:
166+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
167+
timeout-minutes: 10
168+
steps:
169+
- name: Checkout code
170+
uses: actions/checkout@v6
171+
172+
- name: Set up Python ${{ matrix.python-version }}
173+
uses: actions/setup-python@v6
174+
with:
175+
python-version: ${{ matrix.python-version }}
176+
177+
- name: Install the latest version of uv
178+
uses: astral-sh/setup-uv@v7
179+
with:
180+
enable-cache: true
181+
182+
- name: Install dependencies
183+
run: |
184+
uv venv .venv
185+
source .venv/bin/activate
186+
uv sync --extra test
187+
188+
- name: Run A2A tests against a2a-sdk v0.3
189+
run: |
190+
source .venv/bin/activate
191+
uv pip install --reinstall-package a2a-sdk 'a2a-sdk>=0.3.4,<0.4'
192+
pytest tests/unittests/a2a \
193+
tests/unittests/agents/test_remote_a2a_agent.py \
194+
tests/unittests/integrations/agent_registry/test_agent_registry.py

0 commit comments

Comments
 (0)