Produces a serialized hardware report of the physical infrastructure for automation
- Rust 95.6%
- Nix 3.1%
- Makefile 1.3%
|
|
||
|---|---|---|
| .github/workflows | ||
| .idea | ||
| docs | ||
| examples | ||
| src | ||
| .envrc | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| Makefile | ||
| MYQQGPTJ6J_hardware_report.json | ||
| MYQQGPTJ6J_hardware_report.toml | ||
| MYQQGPTJ6J_new_architecture_report.json | ||
| MYQQGPTJ6J_new_architecture_report.toml | ||
| nix-build-examples.md | ||
| NOTICE | ||
| README.md | ||
| Unknown_S_N_hardware_report.toml | ||
Hardware Report
Automated infrastructure discovery tool built with hexagonal architecture.
Generates structured hardware inventory reports in TOML/JSON format. Designed for CMDB population, infrastructure auditing, and bare-metal server management at scale.
Platforms: Linux, macOS | Architectures: x86_64, ARM64 | GPUs: NVIDIA (including Blackwell)
Table of Contents
What Does This Do?
- CPU Discovery - Model, sockets, cores, threads, NUMA topology, cache hierarchy
- Memory Detection - Total capacity, module details, DDR type, speed, slot mapping
- Storage Enumeration - NVMe/SSD/HDD detection, capacity, serial numbers, SMART status
- GPU Detection - NVIDIA via nvidia-smi, memory, PCI topology, UUIDs
- Network Interfaces - MAC/IP, speed (1G-400G+), InfiniBand, driver info
- System Information - BIOS, BMC/IPMI, chassis serial, motherboard specs
Quick Start
Recommended: Nix build (automatically handles all dependencies)
# Install Nix (if not already installed)
curl -L https://install.determinate.systems/nix | sh -s -- install
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
# Clone, build, and run
git clone https://github.com/sfcompute/hardware_report.git
cd hardware_report
nix build
sudo ./result/bin/hardware_report
Output: <chassis_serial>_hardware_report.toml
Pre-built binaries: Linux x86_64 and aarch64 tarballs on GitHub Releases
Other installation methods: See docs/INSTALLATION.md
Documentation
| Document | Description |
|---|---|
| docs/INSTALLATION.md | All installation methods (Nix, Cargo, pre-built releases) |
| docs/ARCHITECTURE.md | Hexagonal architecture overview |
| docs/API.md | Library API reference |
| docs/DEPLOYMENT.md | Production deployment guide |
Contributing
nix develop
cargo test && cargo clippy && cargo fmt
License
Built for infrastructure management at scale | Issues | Releases