Repository navigation
feat: Add RDMA install method for Windows and Linux - #5
Conversation
|
We don't publish DEVs .whl. |
1 similar comment
|
We don't publish DEVs .whl. |
There was a problem hiding this comment.
Pull Request Overview
This pull request adds automated RDMA driver installation support for both Linux and Windows platforms through new install_rdma_drivers methods in their respective package manager classes. The implementation handles platform-specific driver location, extraction, and installation workflows with comprehensive error handling and validation.
Key Changes:
- Added
install_rdma_driversmethod toLinuxPackageManagerandWindowsPackageManagerwith platform-specific installation logic - Implemented Windows OS version mapping for RDMA driver folders and added helper method
_get_rdma_folder_for_os_version - Added comprehensive unit tests covering success cases, error scenarios, and edge cases for both platforms
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| mfd_package_manager/base.py | Added abstract install_rdma_drivers stub method raising NotImplementedError |
| mfd_package_manager/linux.py | Implemented Linux RDMA driver installation with tar extraction and script execution |
| mfd_package_manager/windows.py | Implemented Windows RDMA driver installation with OS version mapping and INF/certificate handling |
| tests/unit/test_mfd_package_manager/test_base.py | Fixed code formatting for multi-line test assertion |
| tests/unit/test_mfd_package_manager/test_linux.py | Added 6 unit tests for Linux RDMA installation covering success and error cases |
| tests/unit/test_mfd_package_manager/test_windows.py | Added 5 unit tests for Windows RDMA installation covering success and error cases |
| README.md | Documented new install_rdma_drivers method for Linux and Windows package managers |
| examples/linux_example.py | Added usage example for Linux RDMA driver installation |
| examples/windows_example.py | Added usage example for Windows RDMA driver installation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: Lasota, Adrian <adrian.lasota@intel.com>
4bf670e to
8eb16dc
Compare
|
We don't publish DEVs .whl. |
|
We don't publish DEVs .whl. |
This pull request adds support for installing RDMA drivers on both Linux and Windows platforms via a new
install_rdma_driversmethod in the respective package manager classes. The implementation includes robust error handling, platform-specific logic for locating and installing the drivers, and comprehensive unit tests to verify correct behavior and edge cases. Documentation and usage examples have also been updated to reflect the new functionality.RDMA Driver Installation Feature
install_rdma_drivers(self, build_path: "Path | str") -> Nonemethod to bothLinuxPackageManagerandWindowsPackageManager, enabling automated installation of RDMA drivers from a specified build path. This includes extracting driver files, running installation scripts on Linux, and copying/installing INF files and certificates on Windows. [1] [2]_get_rdma_folder_for_os_version. [1] [2]Documentation and Usage Examples
README.mdto document the newinstall_rdma_driversmethod for both Linux and Windows package managers. [1] [2]examples/linux_example.pyandexamples/windows_example.py. [1] [2]Unit Testing and Error Handling
Base Class and Extensibility
install_rdma_driversmethod to the basePackageManagerclass, raisingNotImplementedError, to ensure extensibility and clear API boundaries for platform-specific implementations.