Skip to content

Clean and clear CI

Clean and clear CI #11

name: OpenVINO - Slow Test
on:
workflow_dispatch:
schedule:
- cron: "41 1 * * *" # run every day at 1:41
push:
branches:
- v*-release
pull_request:
types:
- opened
- labeled
- reopened
- synchronize
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
build:
if: ${{ (github.event_name == 'workflow_dispatch') || (github.event_name == 'schedule') || (github.event_name == 'push') || contains( github.event.pull_request.labels.*.name, 'openvino-test') }}
strategy:
fail-fast: false
matrix:
# TODO: testong python upper bound seems unnecessary
# Testing lower and upper bound of supported Python versions
# This also ensures that the test fails if dependencies break for Python 3.7
python-version: ["3.9", "3.12"]
os: ["ubuntu-22.04", "windows-latest"]
transformers-version: ["4.45.*"]
openvino: ["openvino openvino-tokenizers"]
nncf: ["nncf"]
include:
- python-version: "3.12"
os: "ubuntu-22.04"
transformers-version: "4.36.0"
openvino: "openvino openvino-tokenizers"
nncf: "nncf"
- python-version: "3.12"
os: "ubuntu-22.04"
transformers-version: "4.45.*"
openvino: "--pre -U openvino openvino-tokenizers --extra-index-url https://storage.openvinotoolkit.org/simple/wheels/nightly"
nncf: "nncf"
- python-version: "3.12"
os: "ubuntu-22.04"
transformers-version: "4.45.*"
openvino: "--pre -U openvino openvino-tokenizers --extra-index-url https://storage.openvinotoolkit.org/simple/wheels/nightly"
nncf: "git+https://github.com/openvinotoolkit/nncf.git"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install --upgrade pip
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
pip install ${{ matrix.openvino }}
pip install .[tests] transformers[testing]==${{ matrix.transformers-version }}
- name: Assert versions
run: |
python -c "import transformers; print(transformers.__version__); assert transformers.__version__.startswith('${{ matrix.transformers-version }}'.replace('.*', ''))"
- name: Test with Pytest
run: |
pytest tests/openvino/test_modeling_basic.py
- name: Install dependencies (slow)
run: |
pip install ${{ matrix.nncf }}
- name: Test with Pytest (slow)
run: |
pytest tests/openvino -m "run_slow" --durations=0
env:
RUN_SLOW: 1
HF_HUB_READ_TOKEN: ${{ secrets.HF_HUB_READ_TOKEN }}