Conversation
…ity in air-gapped environments
| # Copy pciutils library dependencies for the DTK container | ||
| # (the DTK image does not have libpci, and dnf fallback fails in air-gapped networks) | ||
| mkdir -p "$DRIVER_TOOLKIT_SHARED_DIR/lib64" | ||
| cp /usr/lib64/libpci.so* "$DRIVER_TOOLKIT_SHARED_DIR/lib64/" |
There was a problem hiding this comment.
Question -- do we know if libpci.so will always be installed at /usr/lib64?
There was a problem hiding this comment.
Specifically for RHEL9 this is the standard library path and should be the same. But there may be a better approach to find this dynamically for compatibility against other OS versions or architectures.
This change just allowed us to make progress in accessing libpci within the vgpu-manager image at runtime.
|
This seems to supersede #566 . Thanks @mattwittwer ! |
|
Question -- Could this be simplified if we downloaded the cc @tariq1890 |
Fix vGPU Manager build for OCP 4.19+ and pciutils availability in air-gapped environments
The documented OS_TAG=rhel9.6 for OpenShift 4.19+ fails because the Makefile SUBDIR overrides only match the "rhcos" prefix, not "rhel9". Add SUBDIR mappings for rhel9-prefixed targets across driver, vgpu-guest, and vgpu-host build targets.
The ocp_dtk_entrypoint script copies the lspci binary to the shared directory for the DTK container, but does not copy its library dependency (libpci.so) or the setpci binary also required by sriov-manage. In air-gapped environments where the dnf fallback cannot reach cdn-ubi.redhat.com, this causes VF creation to fail silently, preventing vGPU mediated devices from being created.
Copy libpci.so* and setpci alongside lspci into the shared directory, and export LD_LIBRARY_PATH in the DTK container so the binaries can find their libraries.