Important
This project is under development. All source code and features on the main branch are for the purpose of testing or evaluation and not production ready.
Module for keeping const values.
DEVICE_IDS- family: device_id mapping like "CPK": ["0xF0A5", "0xF0A5"]DEVID_CLASS_MAP_NICINSTALLER- speed: device_id mapping.DRIVER_DIRECTORY_MAP- driver: directory mapping like "ice": "PROCGB"DRIVER_DEVICE_ID_MAP- driver: device_id mapping like "ice": {DeviceID(0x124C), DeviceID(0x124D)}SPEED_IDS- speed: device_id mapping like "@1G": DEVICE_IDS["PVL"]Family- Enum class of available families likeFamily.PVLfamily_to_full_name- Dict with mapping Family to full name likeFamily.CVL: "Columbiaville"Speed- Enum class of available speeds likeSpeed.G100FREEBSD_ADVERTISE_SPEED- advertise_speed: speed mapping like "1G": {"ice": 0x4, "ixl": 0x2, "ix": 0x2}MANAGEMENT_NETWORK- list of networks used for management connectionLOCAL_DEFAULT_MAP(qos.py) - QoS Default map for DCB local settingsLOCAL_ISCSI_MAP(qos.py) - ISCSI map for QoSSAN_DCB_MAP(qos.py) - SAN DCB map for QoSALT_SAN_DCB(qos.py) - ALT SAN DCB map for QoSISCSI_POLICY(qos.py) - ISCSI PolicyFreeBSDDriverNames- Enum class of FreeBSD Driver NamesDESIGNED_NUMBER_VFS_BY_SPEED- Designed number of VFs for every speed class, like for 100G NIC is designed 256 VFsSUPPORTED_ADAPTER_RESET_TYPES- Supporting reset types for NIC.Milestone- Enum class of available milestones likeMilestone.PV
from mfd_const import SPEED_IDS
logger.info(f"Device ids for 1G == {SPEED_IDS['@1G']}")
from mfd_const import FREEBSD_ADVERTISE_SPEED
logger.info(f"Value for 1G advertise speed on ix driver is: {FREEBSD_ADVERTISE_SPEED['1G']['ix']}")
from mfd_const import MANAGEMENT_NETWORK
from ipaddress import IPv4Interface
ip = IPv4Interface("10.10.10.10")
for mng_sub in MANAGEMENT_NETWORK:
if ip in mng_sub:
logger.info(f"{ip} is management IP.")
# To apply DCB settings related to QOS, please use the flags as below.
from mfd_const.qos import (LOCAL_PFC, LOCAL_DEFAULT_MAP)
res = dcb.verify_dcb(LOCAL_DEFAULT_MAP)
if res:
logger.info("DCB Configuration sustains the local settings")Temporary path for copying tools from SUT/Controller to any host under test
DCB_TOOL_PATH_LNX : Path for dcbnl.py - Netlink message generation/parsing script
If you encounter any bugs or have suggestions for improvements, you're welcome to contribute directly or open an issue here.