ocptv-ctam


Nameocptv-ctam JSON
Version 0.0.1 PyPI version JSON
download
home_page
SummaryCompliance Tool for Accelerator Management
upload_time2023-09-28 12:18:19
maintainer
docs_urlNone
author
requires_python>=3.10
licenseMIT License Copyright (c) 2023 Open Compute Project Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords ocp ocptv accelerator compliance
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Compliance Tool for Accelerator Management

The [**OCP Test & Validation Initiative**](https://github.com/opencomputeproject/ocp-diag-core) 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](https://github.com/opencomputeproject/ocp-diag-ctam) tool provides acceptance testing for Accelerator Management in cloud data centers.

---

This project is part of [OCPTV](https://github.com/opencomputeproject/ocp-diag-core) and exists under the same [MIT License Agreement](https://github.com/opencomputeproject/ocp-diag-ctam/LICENSE).

## Getting Started

1. Optional: create python [virtual environment](https://docs.python.org/3/library/venv.html) and activate.
    ```
    python -m venv venv
    source ./venv/bin/activate
    ```
2. Run 
    ```
    python -m pip install -r pip-requirements.txt
    ```
3. For full documentation, from `/docs` directory, run
    ```
    ./make html
    ``````
    Open `docs/build/html/index.html` for full documentation including architecture and test case details
4. To run suite,
    ```
    cd ctam
    python ctam.py -w ..\example_workspace
    ```
    Logs will be created under `example_workspace\TestRuns`
5. To list all test cases 
    ```
    cd ctam
    python ctam.py -l
    ```
6. To run a specific test case 
    ```
    cd ctam
    python ctam.py -w ..\example_workspace -t <test case id>
    ```
    Logs will be created under `example_workspace\TestRuns`
7. To run test cases of a specifc test group
    ```
    cd ctam
    python ctam.py -w ..\example_workspace -g <test group name>
    ```
    Logs will be created under `example_workspace\TestRuns`
8. To run test cases with sequence
    ```
    cd ctam
    python ctam.py -w ..\example_workspace -test_seq <test case name or id> <test case name or id>
    ```
    Logs will be created under `example_workspace\TestRuns`
9. To run groups with sequence
    ```
    cd ctam
    python ctam.py -w ..\example_workspace -group_seq <group name or id> <group name or id>
    ```
    Logs will be created under `example_workspace\TestRuns`
10. Choose test cases to run by using tags and specifying the tags to include/exclude in test_runner.json 
11. Choose test sequence in test_runner.json if you want to run it from test runner config.


## Log Files created

1. OCPTV Log file - All logs in OCPTV defined logging format. 
2. Test_Score_<>.json - All test cases result + Final score. 
3. Test_Report_<>.log - Tabulated report of test run
4. Test_Info_<>.json - Optional log file used by test interfaces (for debug)
5. RedfishCommandDetails/RedfishCommandDetails_<Test_ID>_ <Test_Name>_<>.json - Redfish Commands used & return values (for debug)

## Test Runner Knobs

1. debug_mode - True/False (for debug logs)
2. console_log - True/False (for console logs)
3. 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](https://github.com/opencomputeproject/ocp-diag-ctam/discussions), or otherwise post an [issue/request](https://github.com/opencomputeproject/ocp-diag-ctam/issues).

An email contact is also available at: ocp-test-validation@OCP-All.groups.io

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "ocptv-ctam",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "ocp,ocptv,accelerator,compliance",
    "author": "",
    "author_email": "OCP Test & Validation <ocp-test-validation@OCP-All.groups.io>",
    "download_url": "https://files.pythonhosted.org/packages/b4/81/30052694b706dd6401eafab7e8f247960a470a23e2b7063ddd6e195bdb3c/ocptv-ctam-0.0.1.tar.gz",
    "platform": null,
    "description": "# Compliance Tool for Accelerator Management\n\nThe [**OCP Test & Validation Initiative**](https://github.com/opencomputeproject/ocp-diag-core) 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.\n\nSpecifically, the [ocp-diag-ctam](https://github.com/opencomputeproject/ocp-diag-ctam) tool provides acceptance testing for Accelerator Management in cloud data centers.\n\n---\n\nThis project is part of [OCPTV](https://github.com/opencomputeproject/ocp-diag-core) and exists under the same [MIT License Agreement](https://github.com/opencomputeproject/ocp-diag-ctam/LICENSE).\n\n## Getting Started\n\n1. Optional: create python [virtual environment](https://docs.python.org/3/library/venv.html) and activate.\n    ```\n    python -m venv venv\n    source ./venv/bin/activate\n    ```\n2. Run \n    ```\n    python -m pip install -r pip-requirements.txt\n    ```\n3. For full documentation, from `/docs` directory, run\n    ```\n    ./make html\n    ``````\n    Open `docs/build/html/index.html` for full documentation including architecture and test case details\n4. To run suite,\n    ```\n    cd ctam\n    python ctam.py -w ..\\example_workspace\n    ```\n    Logs will be created under `example_workspace\\TestRuns`\n5. To list all test cases \n    ```\n    cd ctam\n    python ctam.py -l\n    ```\n6. To run a specific test case \n    ```\n    cd ctam\n    python ctam.py -w ..\\example_workspace -t <test case id>\n    ```\n    Logs will be created under `example_workspace\\TestRuns`\n7. To run test cases of a specifc test group\n    ```\n    cd ctam\n    python ctam.py -w ..\\example_workspace -g <test group name>\n    ```\n    Logs will be created under `example_workspace\\TestRuns`\n8. To run test cases with sequence\n    ```\n    cd ctam\n    python ctam.py -w ..\\example_workspace -test_seq <test case name or id> <test case name or id>\n    ```\n    Logs will be created under `example_workspace\\TestRuns`\n9. To run groups with sequence\n    ```\n    cd ctam\n    python ctam.py -w ..\\example_workspace -group_seq <group name or id> <group name or id>\n    ```\n    Logs will be created under `example_workspace\\TestRuns`\n10. Choose test cases to run by using tags and specifying the tags to include/exclude in test_runner.json \n11. Choose test sequence in test_runner.json if you want to run it from test runner config.\n\n\n## Log Files created\n\n1. OCPTV Log file - All logs in OCPTV defined logging format. \n2. Test_Score_<>.json - All test cases result + Final score. \n3. Test_Report_<>.log - Tabulated report of test run\n4. Test_Info_<>.json - Optional log file used by test interfaces (for debug)\n5. RedfishCommandDetails/RedfishCommandDetails_<Test_ID>_ <Test_Name>_<>.json - Redfish Commands used & return values (for debug)\n\n## Test Runner Knobs\n\n1. debug_mode - True/False (for debug logs)\n2. console_log - True/False (for console logs)\n3. progress_bar - True/False (for progress bar idicator)\n\n## Developer notes\n### VS Code\n\n`VS Code` is not required for development, however it does have workspace configurations to assist in development.\n\nTo use `VS Code`, open the `ctam.code-workspace` file.\n\nIn lieu of `VS Code` usage, the following items should be configured for other editors or the developer should perform\nsteps manually to ensure the consistency of the code base.\n\n- automatic file formatting using python black formatter on file save.\n    - \"--line-length\", \"120\"\n- Indent set to 4 spaces\n- Auto docstring configured for sphinx, type 3 double quotes below python class or function and the documentation header is automatically stubbed out.\n- Automatic mypy checking of code\n- Spell checking\n- Useful git extensions\n- Useful debugger configurations defined in launch.json, extensible\n- Useful Code snippets to jump start new test development\n    - Snippets for interfaces, test groups and test cases simplify new tests.\n    - easy replace of TODO in the snippet creates runnable test case quickly.\n\n## Upcoming changes \n\n- More test cases\n- Logging improvements\n- Ability to set test sequence\n- PLDM validator, and auto creation of PLDM bundles with error injection.\n\n### Contact\n\nFeel free to start a new [discussion](https://github.com/opencomputeproject/ocp-diag-ctam/discussions), or otherwise post an [issue/request](https://github.com/opencomputeproject/ocp-diag-ctam/issues).\n\nAn email contact is also available at: ocp-test-validation@OCP-All.groups.io\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2023 Open Compute Project  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Compliance Tool for Accelerator Management",
    "version": "0.0.1",
    "project_urls": {
        "Bug reports": "https://github.com/opencomputeproject/ocp-diag-ctam/issues",
        "Homepage": "https://github.com/opencomputeproject/ocp-diag-ctam",
        "Source": "https://github.com/opencomputeproject/ocp-diag-ctam"
    },
    "split_keywords": [
        "ocp",
        "ocptv",
        "accelerator",
        "compliance"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "08b045ea0bff24d484eb5bb1c65f14d83d8c840a8d1959c3aea022dc220389a4",
                "md5": "a12a537919298ba1237860d7050872d3",
                "sha256": "50627fa66ad4156142fabfbcfc51e973299308faf2360e75a6e9a47fd6a1a657"
            },
            "downloads": -1,
            "filename": "ocptv_ctam-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a12a537919298ba1237860d7050872d3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 179018,
            "upload_time": "2023-09-28T12:18:17",
            "upload_time_iso_8601": "2023-09-28T12:18:17.302982Z",
            "url": "https://files.pythonhosted.org/packages/08/b0/45ea0bff24d484eb5bb1c65f14d83d8c840a8d1959c3aea022dc220389a4/ocptv_ctam-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b48130052694b706dd6401eafab7e8f247960a470a23e2b7063ddd6e195bdb3c",
                "md5": "23e16e1af01856de70a15881826db0aa",
                "sha256": "77f6d4443527ed1e70e7ddada87b4f7b356d7eb7d6f9a17baa8973ef6eae7052"
            },
            "downloads": -1,
            "filename": "ocptv-ctam-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "23e16e1af01856de70a15881826db0aa",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 72441,
            "upload_time": "2023-09-28T12:18:19",
            "upload_time_iso_8601": "2023-09-28T12:18:19.509730Z",
            "url": "https://files.pythonhosted.org/packages/b4/81/30052694b706dd6401eafab7e8f247960a470a23e2b7063ddd6e195bdb3c/ocptv-ctam-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-09-28 12:18:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "opencomputeproject",
    "github_project": "ocp-diag-ctam",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "ocptv-ctam"
}
        
Elapsed time: 0.30962s