Page tree
Skip to end of metadata
Go to start of metadata


This is a sub project of CIRV about the hardware validation tool implementation. We have contributed a proto type code implementation based on redfish interface. You can find the repo from Git Repo chapter. Further more, we also would like to support ipmi interface implementation to meet perspective from commuity. Right now, we are actively open to collect any requirements for impi interface. If you have any input, welcome input your items into Requirements List Table at below. Or you can also write a mail to me for further dicussion. Find my email information from Contact chapter.

Project description and goals

Hardware Delivery Verification includes detailed background and requirement discussion for HDV.

We then created a proto type cirv-hdv first commited at the beginning of this year(2020).

We are going to refactor the hdv code to be much friendly for usage, and easily extensible to cover much more hardware model via customize the cases related configuration file.  Also we work endeavor to make sure the hdv tool could support a common standard resource description file (short as DF) which are originally required from CNTT RI chapter. In order to make that happen, we would define a DF from hdv scope.  Right now we are planning to cover both redfish and impi interface implementation, but for sure it's decided by the progress in future. And for the priority, redfish takes precedence over ipmi. Finally, a quick start user guide will be included.  The hdv tool is a very useful tool to validate or configurate hardware, especially if a very large scale of resource pool to build. It is capable to help operator to examine hardware efficiently.

Requirements List

welcome hardware validation requirements of ipmi interfaces

requirement numbershort descriptiondetailsoriginator comments


The HDV tool consists of HDV Engine, testcase configuration files, and hardware resource descriptions file.

  • The test case configuration file defines a resource validation check point by including redfish urls, request data if needed, and expected result.

  • The HDV Engine is a http request handler which mainly interact with hardware resource to execute the redfish request and return the response.
    • Engine takes charge of examination of each hardware by running test case one by one.
  • The Hardware resource description file, which is a large scale of hardware credentials information for servers.

HDV Architect New

Project Roadmap

  • to fill according to my intern effort and progress.  

    Key date week from June 1st, 6, 12, 18, 24 for part-time mentees

  • Milestone work-itemsDue Datedetails git reviewstask status comments
     hdv overview
    •  connection setup, weekly meeting introduction
    • hdv code overview
    • milestone setup 
     2 weeks(6.1-1.2)

    build up a overview about the hdv project.

     #70168 DONE
    code refactor based on redfish implementation
    • re-define and optimize the configuration file structure merge depends.yaml and cases.yaml into one configuration file.
    • Add case enabled flag, convert "expected_result" json to yaml and start writting unit tests.

    How to get the resource from a request url?

    • directly case
    • depends case


    for each case, we define all url(s) in order, ie, grandpa,parent,child url controlled in sorted order. To get a depends case, we have to get the parent's or parent's parent's resource id at first ...





    in progress

    •  redefine the hardware description file per cntt HDV requirements

     How to define the applicable hardware description file which can be treated as uniform input resource configuration file.

    take cntt hdv decription file into account. 

    ? BMC ip/user/passwordcabling?

    •  remove the support of excel format configuration file from project


    This is originally introduced from cmcc, however, it's not proposed in community per opnfv feedback.

    • so we need to clear up excel related code from current code.
    • update the config.yaml to remove the position variable.

    •  extend the case configuration template from one hardware model to multiple case.




    we are intended to extend multiple vendor&model supported by document new configuration value, where it's follows designed rules.


    support typical hardware model.


    •  bug fix
    1 week.(7.27-7.31)defects, depends on the progress.

    document of hdv
    • design and user guide
    1 week.(8.3-8.8)


    • include a instruction of design and principle of HDV
    • a quick start user guide of how to config it.

    ipmi documents collection.



    • TBD
  • Q&A

      • question1: What's the hdv tool function scope?
      • answer: At present, it only support redfish inteface.
      • question2: Any plan to also support ipmi?
      • answer: It depends on the detailed implementable ipmi requirements collected, so we are actively open now for any comments, you can contact me if you are interested.

  • No labels

1 Comment

    1. Could anybody help and provide some real online hardware redfish interface supported? 
    2.  Could anybody provide some detailed ipmi test cases?