Compliance Tool for Accelerator Management
The OCP Test & Validation Initiative is a collaboration between datacenter hyperscalers having the goal of standardizing aspects of the hardware validation/diagnosis space, along with providing necessary tooling to enable both diagnostic developers and executors to leverage these interfaces.
Specifically, the ocp-diag-ctam tool provides acceptance testing for Accelerator Management in cloud data centers.
This project is part of OCPTV and exists under the same MIT License Agreement.
Getting Started
- Optional: create python virtual environment and activate.
python -m venv venv source ./venv/bin/activate - Run
python -m pip install -r pip-requirements.txt - For full documentation, from
/docsdirectory, run
Open./make htmldocs/build/html/index.htmlfor full documentation including architecture and test case details - To run suite,
Logs will be created undercd ctam python ctam.py -w ..\example_workspaceexample_workspace\TestRuns - To list all test cases
cd ctam python ctam.py -l - To run a specific test case
Logs will be created undercd ctam python ctam.py -w ..\example_workspace -t <test case id>example_workspace\TestRuns - To run test cases of a specifc test group
Logs will be created undercd ctam python ctam.py -w ..\example_workspace -g <test group name>example_workspace\TestRuns - To run test cases with sequence
Logs will be created undercd ctam python ctam.py -w ..\example_workspace -test_seq <test case name or id> <test case name or id>example_workspace\TestRuns - To run groups with sequence
Logs will be created undercd ctam python ctam.py -w ..\example_workspace -group_seq <group name or id> <group name or id>example_workspace\TestRuns - Choose test cases to run by using tags and specifying the tags to include/exclude in test_runner.json
- Choose test sequence in test_runner.json if you want to run it from test runner config.
Log Files created
- OCPTV Log file - All logs in OCPTV defined logging format.
- Test_Score_<>.json - All test cases result + Final score.
- Test_Report_<>.log - Tabulated report of test run
- Test_Info_<>.json - Optional log file used by test interfaces (for debug)
- RedfishCommandDetails/RedfishCommandDetails_<Test_ID>_ <Test_Name>_<>.json - Redfish Commands used & return values (for debug)
Test Runner Knobs
- debug_mode - True/False (for debug logs)
- console_log - True/False (for console logs)
- progress_bar - True/False (for progress bar idicator)
Developer notes
VS Code
VS Code is not required for development, however it does have workspace configurations to assist in development.
To use VS Code, open the ctam.code-workspace file.
In lieu of VS Code usage, the following items should be configured for other editors or the developer should perform
steps manually to ensure the consistency of the code base.
- automatic file formatting using python black formatter on file save.
- "--line-length", "120"
- Indent set to 4 spaces
- Auto docstring configured for sphinx, type 3 double quotes below python class or function and the documentation header is automatically stubbed out.
- Automatic mypy checking of code
- Spell checking
- Useful git extensions
- Useful debugger configurations defined in launch.json, extensible
- Useful Code snippets to jump start new test development
- Snippets for interfaces, test groups and test cases simplify new tests.
- easy replace of TODO in the snippet creates runnable test case quickly.
Upcoming changes
- More test cases
- Logging improvements
- Ability to set test sequence
- PLDM validator, and auto creation of PLDM bundles with error injection.
Contact
Feel free to start a new discussion, or otherwise post an issue/request.
An email contact is also available at: ocp-test-validation@OCP-All.groups.io
Metadata
Release files for ocptv-ctam 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ocptv-ctam-0.0.1.tar.gz | 72.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ocptv_ctam-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 251.5 kB
Release files / ocptv-ctam-0.0.1.tar.gz
| Download URL | ocptv-ctam-0.0.1.tar.gz |
|---|---|
| Size | 72.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
77f6d4443527ed1e70e7ddada87b4f7b356d7eb7d6f9a17baa8973ef6eae7052
|
|
BLAKE2b-256 checksum How to use checksums |
b48130052694b706dd6401eafab7e8f247960a470a23e2b7063ddd6e195bdb3c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.13
|
Release files / ocptv_ctam-0.0.1-py3-none-any.whl
| Download URL | ocptv_ctam-0.0.1-py3-none-any.whl |
|---|---|
| Size | 179.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
50627fa66ad4156142fabfbcfc51e973299308faf2360e75a6e9a47fd6a1a657
|
|
BLAKE2b-256 checksum How to use checksums |
08b045ea0bff24d484eb5bb1c65f14d83d8c840a8d1959c3aea022dc220389a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.13
|