Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 6 additions & 13 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,7 @@ jobs:
- os: ubuntu-latest
python: "3.14"
docsTarget: true
openaiTestTarget: true
clippyLinter: true
- python: "3.10"
pytestExtraArgs: '--reruns 3 --only-rerun "RuntimeError: Failed validating workflow"'
- os: ubuntu-arm
runsOn: ubuntu-24.04-arm64-2-core
- os: macos-arm
Expand Down Expand Up @@ -62,17 +59,13 @@ jobs:
- run: poe build-develop
- run: poe lint
- run: mkdir junit-xml
- run: poe test ${{matrix.pytestExtraArgs}} -s --junit-xml=junit-xml/${{ matrix.python }}--${{ matrix.os }}.xml
- name: Repeat OpenTelemetry tracing tests
shell: bash
run: |
for attempt in {1..20}; do
poe test -s tests/contrib/opentelemetry/test_opentelemetry.py tests/contrib/opentelemetry/test_opentelemetry_plugin.py
done
timeout-minutes: 15
# Time skipping doesn't yet support ARM
- if: ${{ !endsWith(matrix.os, '-arm') }}
run: poe test ${{matrix.pytestExtraArgs}} -s --workflow-environment time-skipping --junit-xml=junit-xml/${{ matrix.python }}--${{ matrix.os }}--time-skipping.xml
timeout-minutes: 10
- if: ${{ matrix.openaiTestTarget && (github.event.pull_request.head.repo.full_name == '' || github.event.pull_request.head.repo.full_name == 'temporalio/sdk-python') }}
run: poe test tests/contrib/openai_agents/test_openai.py ${{matrix.pytestExtraArgs}} -s --junit-xml=junit-xml/${{ matrix.python }}--${{ matrix.os }}--openai.xml
timeout-minutes: 10
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
- name: "Upload junit-xml artifacts"
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
if: always()
Expand Down
2 changes: 1 addition & 1 deletion temporalio/bridge/sdk-core
36 changes: 19 additions & 17 deletions tests/contrib/google_adk_agents/test_google_adk_agents.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
from temporalio.contrib.opentelemetry import OpenTelemetryPlugin, create_tracer_provider
from temporalio.worker import Worker
from temporalio.workflow import ActivityConfig
from tests.contrib.opentelemetry.test_opentelemetry import dump_spans
from tests.contrib.opentelemetry.test_opentelemetry import assert_span_hierarchy

logger = logging.getLogger(__name__)

Expand Down Expand Up @@ -578,22 +578,24 @@ async def test_single_agent_telemetry(
assert result.content.parts is not None
assert result.content.parts[0].text == "warm and sunny"

print("\n".join(dump_spans(exporter.get_finished_spans(), with_attributes=False)))
assert dump_spans(exporter.get_finished_spans(), with_attributes=False) == [
"StartWorkflow:WeatherAgent",
" RunWorkflow:WeatherAgent",
" invocation [test_app]",
" agent_run [test_agent]",
" call_llm",
" StartActivity:invoke_model",
" RunActivity:invoke_model",
" execute_tool get_weather",
" StartActivity:get_weather",
" RunActivity:get_weather",
" call_llm",
" StartActivity:invoke_model",
" RunActivity:invoke_model",
]
assert_span_hierarchy(
exporter.get_finished_spans(),
[
"StartWorkflow:WeatherAgent",
" RunWorkflow:WeatherAgent",
" invocation [test_app]",
" agent_run [test_agent]",
" call_llm",
" StartActivity:invoke_model",
" RunActivity:invoke_model",
" execute_tool get_weather",
" StartActivity:get_weather",
" RunActivity:get_weather",
" call_llm",
" StartActivity:invoke_model",
" RunActivity:invoke_model",
],
)


async def test_unsetting_timeout():
Expand Down
Loading
Loading