xref: /openbmc/pldm/tools/visualize-pdr/README.md (revision be231d8a)
1# Overview
2
3The `pldmtool` for `GetPDR` command lacks to display all PDRs at once. It
4fetches only one PDR at a time. With a lot of sensors/effecters & with a lot of
5Host FRU pdrs coming in due to concurrent maintenance of the system,where the
6fru's are added/ removed at runtime, it's really necessary to have a full system
7view.
8
9`pldm_visualise_pdrs.py` is a python script that can be used to fetch the PDR's
10from the BMC and can parse them to display a full view of available PDR's on
11system at any given point in time.
12
13## Requirements
14
15- Python 3.6+
16- graphviz
17  - Graphviz is open source graph visualization software. Graph visualization is
18    a way of representing structural information as diagrams of abstract graphs
19    and networks.
20  - There are standard package available for graphviz for both rpm based as well
21    as the debian based systems, it can be installed using :
22
23```bash
24# RPM based distro
25sudo dnf install graphviz
26
27# Debian based distro
28sudo apt install graphviz
29
30# mac distro
31brew install graphviz
32```
33
34- The `requirements.txt` file should list all Python libraries that the tool
35  depend on, and that can be installed using:
36
37```bash
38    sudo pip3 install -r requirements.txt
39              (or)
40    pip3 install -r requirements.txt --user
41```
42
43## Usage
44
45```bash
46$ pldm_visualise_pdrs.py [-h] --bmc BMC --user USER --password PASSWORD [--port PORT]
47
48optional arguments:
49  -h, --help           show this help message and exit
50  --bmc BMC            BMC IPAddress/BMC Hostname
51  --user USER          BMC username
52  --password PASSWORD  BMC Password
53  --port PORT          BMC SSH port
54
55```
56