diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ef1566703..c623191be 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -81,10 +81,22 @@ test: stage: test needs: [check] script: - # Stub libcuda.so.1 lets CUDA-linked binaries load; GPU tests skipped (run on gpu nodes) + # Stub libcuda.so.1 lets CUDA-linked binaries load on GPU-less nodes - ln -sf /usr/local/cuda/lib64/stubs/libcuda.so /usr/local/cuda/lib64/stubs/libcuda.so.1 || true - export LD_LIBRARY_PATH="/usr/local/cuda/lib64/stubs:${LD_LIBRARY_PATH}" - - cargo test --workspace --lib -- --skip model_loader::tests + # Run all workspace tests EXCEPT ml crate (52 CUDA-dependent tests need real GPU) + - cargo test --workspace --exclude ml --lib -- --skip model_loader::tests + +# GPU test job — runs ml crate tests on real CUDA hardware +# TODO: Configure GPU runner with node_selector targeting gpu-inference pool +test-gpu: + extends: .rust-base + stage: test + needs: [check] + when: manual + allow_failure: true + script: + - cargo test -p ml --lib # -------------------------------------------------------------------------- # Stage 3: Build + push service images (main only, Kaniko → GitLab registry)