5
5
push :
6
6
branches : [main]
7
7
workflow_dispatch :
8
+ inputs :
9
+ test_name :
10
+ description : ' Name of specific test to run. Leave empty to run all tests.'
11
+ required : false
12
+ default : ' '
13
+ type : choice
14
+ options :
15
+ - ' '
16
+ - regression_without_torch
17
+ - regression_with_torch
8
18
9
19
jobs :
10
20
build :
@@ -29,36 +39,44 @@ jobs:
29
39
${{ runner.os }}-pip-${{ matrix.python-version }}-
30
40
- name : 🦾 Install dependencies
31
41
run : |
42
+ python3 -m venv venv
43
+ source venv/bin/activate
32
44
python3 -m pip install --upgrade pip
33
45
python3 -m pip install -r requirements/requirements.test.integration.txt -r requirements/requirements.test.unit.txt
34
46
- name : 🔨 Build and Push Test Docker - Parallel GPU
35
47
run : |
36
48
docker build -t roboflow/roboflow-inference-server-gpu-parallel:test -f docker/dockerfiles/Dockerfile.onnx.gpu.parallel .
37
49
38
50
- name : 🔋 Start Test Docker without Torch Preprocessing - Parallel GPU
51
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_without_torch' }}
39
52
run : |
40
53
PORT=9101 USE_PYTORCH_FOR_PREPROCESSING=False INFERENCE_SERVER_REPO=roboflow-inference-server-gpu-parallel make start_test_docker_gpu
41
54
- name : 🧪 Regression Tests without Torch Preprocessing - Parallel GPU
42
55
id : regression_tests_with_python_preprocessing
56
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_without_torch' }}
43
57
run : |
58
+ source venv/bin/activate
44
59
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
45
60
- name : 🚨 Show server logs on error
61
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_without_torch' || failure() }}
46
62
run : docker logs inference-test
47
- if : failure()
48
63
- name : 🧹 Cleanup Test Docker - Parallel GPU
64
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_without_torch' }}
49
65
run : make stop_test_docker
50
- if : success() || failure()
51
66
52
67
- name : 🔋 Start Test Docker with Torch Preprocessing - Parallel GPU
68
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_with_torch' }}
53
69
run : |
54
70
PORT=9101 USE_PYTORCH_FOR_PREPROCESSING=True INFERENCE_SERVER_REPO=roboflow-inference-server-gpu-parallel make start_test_docker_gpu
55
71
- name : 🧪 Regression Tests with Torch Preprocessing - Parallel GPU
56
72
id : regression_tests_without_python_preprocessing
73
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_with_torch' }}
57
74
run : |
75
+ source venv/bin/activate
58
76
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
59
77
- name : 🚨 Show server logs on error
78
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_with_torch' || failure() }}
60
79
run : docker logs inference-test
61
- if : failure()
62
80
- name : 🧹 Cleanup Test Docker - Parallel GPU
81
+ if : ${{ github.event.inputs.test_name == '' || github.event.inputs.test_name == 'regression_with_torch' || failure() }}
63
82
run : make stop_test_docker
64
- if : success() || failure()
0 commit comments