Pavilion2¶
Pavilion is a Python 3 (3.4+) based framework for running and analyzing tests targeting HPC systems. It provides a rich YAML-based configuration system for wrapping test codes and running them against various systems. The vast majority of the system is defined via plugins, giving users the ability to extend and modify Pavilion’s operation to suit their needs. Plugin components include those for gathering system data, adding additional schedulers, parsing test results, and more.
Project goals:¶
- Robust testing in postDST, automated, and acceptance testing (system validation) scenarios.
- End-to-end status tracking for all tests.
- Simple, powerful test configuration language.
- System agnostic test configs.
- Hide common platform and environment idiosyncrasies from tests.
- System specific defaults.
- Eliminate unnecessary build repetition.
- Extreme extensibility (plugins everywhere).
- Getting Started
- Installing Pavilion
- Environment Modules
- Pavilion Advanced Usage
- Configuring Pavilion
- Test Run Lifecycle
- Test Format
- Pavilion Test Variables
- Running Tests
- Building Tests
- Build and Run Environments
- Command Result Parser (cmd)
- Constant Result Parser (const)
- Regex Result Parser (regex)
- Table Result Parser
- Test Permutations
- Config Values
- Test Results
- Scheduling Tests
- Skip Conditions
- Pavilion Plugins
- API Documentation
- Command Arguments and Base Configuration
- Pavilion Builder Objects
- Command Plugins
- Dir Database
- Expression Function Plugins
- Logging
- Miscellaneous Modules
- Module Wrapper Plugins
- Utilities
- Parser Components
- Results
- Schedulers
- Test Series
- Status Files
- Test Configuration
- Pavilion Test Run Objects
- UnitTests
- Utilities
- Variable Components
- Index by Module