FRU Generator YAML
Project description
frugy - FRU Generator YAML
This is a tool which generates EEPROM images according to the IPMI FRU standard from YAML configuration files. It can also parse a FRU EEPROM image and write its contents to a YAML file, or dump them to stdout.
Installation
From PyPI:
pip3 install frugy
From GitHub:
pip3 install git+https://github.com/MicroTCA-Tech-Lab/frugy
Usage
$ frugy --help
usage: frugy [-h] [--version] [-o OUTPUT] [-w] [-r] [-d]
[-e EEPROM_SIZE] [-s SET] [-t] [-b] [-c] [-l [LIST]]
[-v VERBOSITY]
[srcfile]
FRU Generator YAML
positional arguments:
srcfile Source file for reading
optional arguments:
-h, --help show this help message and exit
--version show program's version number and exit
-o OUTPUT, --output OUTPUT
output file (derived from input file if not set)
-w, --write FRU write mode (convert YAML to FRU image), default
-r, --read FRU read mode (convert FRU image to YAML)
-d, --dump dump FRU information to stdout (same as -r -o -)
-e EEPROM_SIZE, --eeprom-size EEPROM_SIZE
pad FRU image to match EEPROM size in bytes (only
valid in write mode)
-s SET, --set SET set FRU record field to a value (only valid in write
mode)
-t, --timestamp set BoardInfo.mfg_date_time timestamp to current UTC
time (only valid in write mode)
-b, --broken enable workaround to parse Opal Kelly EEPROMs
-c, --ignore-checksum-errors
ignore checksum errors when parsing a FRU image
-l [LIST], --list [LIST]
list supported FRU records or schema of specified
record
-v VERBOSITY, --verbosity VERBOSITY
set verbosity (0=quiet, 1=info, 2=debug)
Examples
frugy damc-fmc2zup.yml
Read damc-fmc2zup.yml
configuration, generate FRU image damc-fmc2zup.bin
.
frugy damc-fmc2zup.yml -o fmc2zup_fru_eeprom.bin -e 2048
Read damc-fmc2zup.yml
configuration, generate fmc2zup_fru_eeprom.bin
, make it 2048 bytes (pad with 0xff).
frugy damc-fmc2zup.bin -r
Read and parse FRU image damc-fmc2zup.bin
, generate YAML file damc-fmc2zup.yml
.
frugy dmmc-stamp.yml -s BoardInfo.serial_number=1234 -s ProductInfo.version=1.0 -t
Read dmmc-stamp.yml
, generate FRU with BoardInfo.serial_number
set to 1234, ProductInfo.version
to 1.0 and BoardInfo.mfg_date_time
to current UTC time.
frugy dmmc-stamp.yml -s serial_number=1234 -t
Read dmmc-stamp.yml
, generate FRU with BoardInfo.serial_number
and ProductInfo.serial_number
set to 1234 and BoardInfo.mfg_date_time
to current UTC time.
frugy -l
Show list of all supported FRU records.
frugy -l PointToPointConnectivity
Show layout of the FRU record called 'PointToPointConnectivity'.
Supported FRU records
YAML keywords for supported FRU records
- Detailed list of supported IPMI records
- Detailed list of supported PICMG records
- Detailed list of supported FMC records
Example configuration file
BoardInfo:
manufacturer: DESY
product_name: DMMC-STAMP Rev.A
serial_number: '0000'
part_number: '0000'
fru_file_id: none
ProductInfo:
manufacturer: DESY
product_name: DMMC-STAMP Rev.A
part_number: '0000'
version: '0000'
serial_number: '0000'
asset_tag: none
fru_file_id: none
MultirecordArea:
- type: ModuleCurrentRequirements
current_draw: 6.5
More example configurations are stored in the examples
folder.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file frugy-0.4.2.tar.gz
.
File metadata
- Download URL: frugy-0.4.2.tar.gz
- Upload date:
- Size: 25.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc8f4898605c2457bc0a320f6dd3532064a159ddb6c0e50f48b977c8bef3690f |
|
MD5 | 3ea84463e17a80883c2dc6b0fe47a3ee |
|
BLAKE2b-256 | 9bfb35c36c8bfcdb70cf17d0c3efeb5a513d686e56e8c801a113a50613d6b6fd |
File details
Details for the file frugy-0.4.2-py3-none-any.whl
.
File metadata
- Download URL: frugy-0.4.2-py3-none-any.whl
- Upload date:
- Size: 27.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f9aed6a98a6c72086523ba3d3c27ad0208d9fe1e5deef15dc7e76cdc9a13bc2 |
|
MD5 | a0f764ff4188d1617a40b18b7855f4e4 |
|
BLAKE2b-256 | d59fc86b96981b14395736f720e129fcc472f09ad31ba5340df2f1d65a430657 |