Skip to content

Merge pull request #955 from roboflow/block-gallery-refactor #380

Merge pull request #955 from roboflow/block-gallery-refactor

Merge pull request #955 from roboflow/block-gallery-refactor #380

name: Code Quality & Regression Tests - NVIDIA T4 (Parallel Server)
on:
push:
branches: [main]
workflow_dispatch:
jobs:
build:
if: ${{ !github.event.act }}
runs-on: Roboflow-GPU-VM-Runner
timeout-minutes: 60
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: 🛎️ Checkout
uses: actions/checkout@v4
- name: 📦 Cache Python packages
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('requirements/**') }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}-
- name: 🦾 Install dependencies
run: |
python3 -m pip install --upgrade pip
python3 -m pip install -r requirements/requirements.test.integration.txt
- name: 🔨 Build and Push Test Docker - Parallel GPU
run: |
docker build -t roboflow/roboflow-inference-server-gpu-parallel:test -f docker/dockerfiles/Dockerfile.onnx.gpu.parallel .
- name: 🔋 Start Test Docker - Parallel GPU
run: |
PORT=9101 INFERENCE_SERVER_REPO=roboflow-inference-server-gpu-parallel make start_test_docker_gpu
- name: 🧪 Regression Tests - Parallel GPU
id: regression_tests
run: |
IS_PARALLEL_SERVER=true SKIP_VISUALISATION_TESTS=true FUNCTIONAL=true PORT=9101 API_KEY=${{ secrets.API_KEY }} asl_instance_segmentation_API_KEY=${{ secrets.ASL_INSTANCE_SEGMENTATION_API_KEY }} asl_poly_instance_seg_API_KEY=${{ secrets.ASL_POLY_INSTANCE_SEG_API_KEY }} bccd_favz3_API_KEY=${{ secrets.BCCD_FAVZ3_API_KEY }} bccd_i4nym_API_KEY=${{ secrets.BCCD_I4NYM_API_KEY }} cats_and_dogs_smnpl_API_KEY=${{ secrets.CATS_AND_DOGS_SMNPL_API_KEY }} coins_xaz9i_API_KEY=${{ secrets.COINS_XAZ9I_API_KEY }} melee_API_KEY=${{ secrets.MELEE_API_KEY }} yolonas_test_API_KEY=${{ secrets.YOLONAS_TEST_API_KEY }} python3 -m pytest tests/inference/integration_tests/regression_test.py tests/inference/integration_tests/batch_regression_test.py
- name: 🚨 Show server logs on error
run: docker logs inference-test
if: failure()
- name: 🧹 Cleanup Test Docker - Parallel GPU
run: make stop_test_docker
if: success() || failure()