Skip to content

add testing for example folder #874

add testing for example folder

add testing for example folder #874

name: CLI CUDA OnnxRuntime Tests
on:
workflow_dispatch:
push:
branches:
- main
pull_request:
branches:
- main
types:
- opened
- reopened
- synchronize
- labeled
- unlabeled
concurrency:
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
jobs:
run_cli_cuda_onnxruntime_tests:
if: ${{
(github.event_name == 'push') ||
(github.event_name == 'workflow_dispatch') ||
contains( github.event.pull_request.labels.*.name, 'cli') ||
contains( github.event.pull_request.labels.*.name, 'examples') ||
contains( github.event.pull_request.labels.*.name, 'cuda') ||
contains( github.event.pull_request.labels.*.name, 'onnxruntime') ||
contains( github.event.pull_request.labels.*.name, 'cli_cuda_onnxruntime')
}}
runs-on:
group: aws-g5-4xlarge-plus
container:
image: ghcr.io/huggingface/optimum-benchmark:latest-cuda
options: --ipc host --gpus all
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install dependencies
run: |
pip install -e .[testing,onnxruntime-gpu,diffusers,timm]
# - name: Run cli tests
# run: |
# pytest tests/test_cli.py -x -s -k "cli and cuda and onnxruntime"
- name: Run tests from example folder
run: |
pytest tests/test_examples.py -x -s -k "cuda and onnxruntime"
continue-on-error: true # Continue even if tests fail or no tests are collected
- name: Check test result
if: steps.run_tests.outcome == 'failure' && steps.run_tests.conclusion == 'failure'
run: |
if [ "${{ steps.run_tests.outputs.exit_code }}" -eq 5 ]; then
echo "No tests were collected. Skipping failure..."
exit 0
else
echo "Tests failed for another reason."
exit 1
fi