| name: Code Quality & Regression Tests - NVIDIA T4 | |
| on: | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| if: ${{ !github.event.act }} | |
| runs-on: [self-hosted, t4-gpu, gcp] | |
| steps: | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v2 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v2 | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v2 | |
| with: | |
| username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| - name: ποΈ Checkout | |
| uses: actions/checkout@v3 | |
| with: | |
| ref: ${{ github.head_ref }} | |
| - name: π¦Ύ Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| python -m pip install -r requirements/requirements.test.txt | |
| - name: π¨ Build and Push Test Docker - GPU | |
| run : | | |
| docker pull roboflow/roboflow-inference-server-gpu:test | |
| docker build -t roboflow/roboflow-inference-server-gpu:test -f docker/dockerfiles/Dockerfile.onnx.gpu . | |
| docker push roboflow/roboflow-inference-server-gpu:test | |
| - name: π Start Test Docker - GPU | |
| run: | | |
| PORT=9101 INFERENCE_SERVER_REPO=roboflow-inference-server-gpu make start_test_docker_gpu | |
| - name: π§ͺ Regression Tests - GPU | |
| run: | | |
| 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 }} python -m pytest tests/inference/integration_tests/ | |
| - name: π§Ή Cleanup Test Docker - GPU | |
| run: make stop_test_docker | |
| if: success() || failure() | |
| - name: π¨ Build and Push Test Docker - TRT | |
| if: success() || failure() | |
| run : | | |
| docker pull roboflow/roboflow-inference-server-trt:test | |
| docker build -t roboflow/roboflow-inference-server-trt:test -f docker/dockerfiles/Dockerfile.onnx.trt . | |
| docker push roboflow/roboflow-inference-server-trt:test | |
| - name: π Start Test Docker - TRT | |
| run: | | |
| PORT=9101 INFERENCE_SERVER_REPO=roboflow-inference-server-trt make start_test_docker_gpu | |
| - name: π§ͺ Regression Tests - TRT | |
| run: | | |
| SKIP_GAZE_TEST=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 }} python -m pytest tests/inference/integration_tests/ | |
| - name: π§Ή Cleanup Test Docker - TRT | |
| run: make stop_test_docker | |
| if: success() || failure() | |