@@ -310,6 +310,8 @@ jobs:
310310 uv pip install -r tests/integration/requirements.txt
311311
312312 - name : Run basic integration tests
313+ id : basic-tests
314+ continue-on-error : true
313315 run : |
314316 source venv/bin/activate
315317 echo "Running basic integration tests..."
@@ -349,6 +351,8 @@ jobs:
349351 docker ps
350352
351353 - name : Run query rewriter integration tests
354+ id : query-rewriter-tests
355+ continue-on-error : true
352356 run : |
353357 source venv/bin/activate
354358 echo "Running query rewriter integration tests..."
@@ -390,6 +394,8 @@ jobs:
390394 docker ps
391395
392396 - name : Run reflection integration tests
397+ id : reflection-tests
398+ continue-on-error : true
393399 run : |
394400 source venv/bin/activate
395401 echo "Running reflection integration tests..."
@@ -437,6 +443,7 @@ jobs:
437443 sleep 30
438444
439445 - name : Run NemoGuardrails integration tests
446+ id : guardrails-tests
440447 continue-on-error : true
441448 run : |
442449 source venv/bin/activate
@@ -484,6 +491,8 @@ jobs:
484491 docker ps
485492
486493 - name : Run image captioning integration tests
494+ id : image-captioning-tests
495+ continue-on-error : true
487496 run : |
488497 source venv/bin/activate
489498 echo "Running image captioning integration tests..."
@@ -524,6 +533,8 @@ jobs:
524533 docker ps
525534
526535 - name : Run VLM generation integration tests
536+ id : vlm-generation-tests
537+ continue-on-error : true
527538 run : |
528539 source venv/bin/activate
529540 echo "Running VLM generation integration tests..."
@@ -584,6 +595,8 @@ jobs:
584595 docker ps
585596
586597 - name : Run multimodal query integration tests
598+ id : multimodal-query-tests
599+ continue-on-error : true
587600 run : |
588601 source venv/bin/activate
589602 echo "Running multimodal query integration tests..."
@@ -624,6 +637,8 @@ jobs:
624637 docker ps
625638
626639 - name : Run custom prompt integration tests
640+ id : custom-prompt-tests
641+ continue-on-error : true
627642 run : |
628643 source venv/bin/activate
629644 echo "Running custom prompt integration tests..."
@@ -660,6 +675,8 @@ jobs:
660675 echo "CONVERSATION_HISTORY=0" >> $GITHUB_ENV
661676
662677 - name : Run library usage integration tests
678+ id : library-usage-tests
679+ continue-on-error : true
663680 run : |
664681 source venv/bin/activate
665682 echo "Running library usage integration tests..."
@@ -678,6 +695,8 @@ jobs:
678695 # ========================================================================
679696
680697 - name : Run library summarization integration tests
698+ id : library-summarization-tests
699+ continue-on-error : true
681700 run : |
682701 source venv/bin/activate
683702 echo "Running library summarization integration tests..."
@@ -726,6 +745,8 @@ jobs:
726745 sleep 30
727746
728747 - name : Run observability integration tests
748+ id : observability-tests
749+ continue-on-error : true
729750 run : |
730751 source venv/bin/activate
731752 echo "Running observability integration tests..."
@@ -828,6 +849,8 @@ jobs:
828849 docker ps
829850
830851 - name : Run Milvus VDB Auth tests
852+ id : milvus-vdb-auth-tests
853+ continue-on-error : true
831854 env :
832855 APP_VECTORSTORE_URL : http://localhost:19530
833856 run : |
@@ -877,6 +900,30 @@ jobs:
877900 echo "VDB_AUTH_TOKEN=" >> $GITHUB_ENV
878901 echo "MILVUS_ROOT_TOKEN=" >> $GITHUB_ENV
879902
903+ # ========================================================================
904+ # FAIL JOB IF ANY INTEGRATION TEST FAILED
905+ # ========================================================================
906+ # All test steps use continue-on-error so every suite runs; this step
907+ # marks the job as failed if any of them failed.
908+ - name : Fail job if any integration test failed
909+ if : always() && (steps.basic-tests.outcome == 'failure' || steps.query-rewriter-tests.outcome == 'failure' || steps.reflection-tests.outcome == 'failure' || steps.guardrails-tests.outcome == 'failure' || steps.image-captioning-tests.outcome == 'failure' || steps.vlm-generation-tests.outcome == 'failure' || steps.multimodal-query-tests.outcome == 'failure' || steps.custom-prompt-tests.outcome == 'failure' || steps.library-usage-tests.outcome == 'failure' || steps.library-summarization-tests.outcome == 'failure' || steps.observability-tests.outcome == 'failure' || steps.milvus-vdb-auth-tests.outcome == 'failure')
910+ run : |
911+ echo "=== Failed integration test suites ==="
912+ [ "${{ steps.basic-tests.outcome }}" = "failure" ] && echo " - basic-tests"
913+ [ "${{ steps.query-rewriter-tests.outcome }}" = "failure" ] && echo " - query-rewriter-tests"
914+ [ "${{ steps.reflection-tests.outcome }}" = "failure" ] && echo " - reflection-tests"
915+ [ "${{ steps.guardrails-tests.outcome }}" = "failure" ] && echo " - guardrails-tests"
916+ [ "${{ steps.image-captioning-tests.outcome }}" = "failure" ] && echo " - image-captioning-tests"
917+ [ "${{ steps.vlm-generation-tests.outcome }}" = "failure" ] && echo " - vlm-generation-tests"
918+ [ "${{ steps.multimodal-query-tests.outcome }}" = "failure" ] && echo " - multimodal-query-tests"
919+ [ "${{ steps.custom-prompt-tests.outcome }}" = "failure" ] && echo " - custom-prompt-tests"
920+ [ "${{ steps.library-usage-tests.outcome }}" = "failure" ] && echo " - library-usage-tests"
921+ [ "${{ steps.library-summarization-tests.outcome }}" = "failure" ] && echo " - library-summarization-tests"
922+ [ "${{ steps.observability-tests.outcome }}" = "failure" ] && echo " - observability-tests"
923+ [ "${{ steps.milvus-vdb-auth-tests.outcome }}" = "failure" ] && echo " - milvus-vdb-auth-tests"
924+ echo "One or more integration test suites failed. Failing job."
925+ exit 1
926+
880927 # ========================================================================
881928 # UPLOAD ALL LOGS
882929 # ========================================================================
0 commit comments