Skip to content

Merge pull request #639 from red-hat-data-services/sync-odh-v3.13.0 #32

Merge pull request #639 from red-hat-data-services/sync-odh-v3.13.0

Merge pull request #639 from red-hat-data-services/sync-odh-v3.13.0 #32

Workflow file for this run

name: Tracing SDK Test
on:
pull_request:
types:
- opened
- synchronize
- reopened
paths-ignore:
- "docs/**"
- "**.md"
- "dev/clint/**"
- ".github/workflows/docs.yml"
- ".github/workflows/preview-docs.yml"
- "mlflow/server/js/**"
- ".github/workflows/js.yml"
- ".claude/**"
push:
branches:
- master
- branch-[0-9]+.[0-9]+
- main
- rhoai-*
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}
cancel-in-progress: true
# Use `bash` by default for all `run` steps in this workflow:
# https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#defaultsrun
defaults:
run:
shell: bash
env:
MLFLOW_HOME: /home/runner/work/mlflow/mlflow
MLFLOW_CONDA_HOME: /usr/share/miniconda
PYTHONUTF8: "1"
MLFLOW_SERVER_ENABLE_JOB_EXECUTION: "false"
PIP_CONSTRAINT: ${{ github.workspace }}/requirements/constraints.txt
jobs:
core:
runs-on: ubuntu-latest
permissions:
contents: read
timeout-minutes: 30
if: github.event_name != 'pull_request' || (github.event.pull_request.draft == false || github.event.pull_request.user.login == 'Copilot' && github.event.pull_request.user.type == 'Bot')
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: ./.github/actions/setup-python
# Install mlflow-tracing SDK from the current directory
- name: Install mlflow-tracing SDK
run: |
uv pip install --system setuptools --upgrade
uv pip install --system ./libs/tracing
- name: Install test dependencies
run: |
uv pip install --system pytest pytest-asyncio pytest-timeout litellm
- name: Run core tracing tests
# NB: OTLP exporter includes large dependencies, so we want to test it in a separate job
# to avoid overlooking unnecessary dependencies in the core tracing package.
run: |
export PYTHONPATH=$(pwd)
pytest tests/tracing \
--ignore tests/tracing/utils/test_otlp.py \
--ignore tests/tracing/test_assessment.py \
--ignore tests/tracing/test_otel_logging.py \
--ignore tests/tracing/processor/test_otel_metrics.py \
--ignore tests/tracing/opentelemetry/test_integration.py \
--ignore tests/tracing/test_otel_loading.py \
--import-mode=importlib
# TODO: Add a job to run autologging tests against integrated libraries (latest versions)
# TODO: Add a job to warn large package size increase.
# package-size:
# TODO: Add a job to test OTLP export