register Elbencho as a CBT benchmark - #359
Conversation
ScopeThe diff matches the Jira ticket and PR description. Story 2 requires registering Elbencho as a benchmark class with factory integration, workload storage, and validation — all present. The Code Review[P1] [P2] [P2] [P2] [P3] [P3] SecurityCredential handling in tests: The test fixture SummaryThe registration is solid and the factory bypass logic is correct. The P1 issue around |
7e64adb to
89776a3
Compare
c6bd7e0 to
550e5d4
Compare
6463326 to
f0c2812
Compare
perezjosibm
left a comment
There was a problem hiding this comment.
Just a few changes needed, eg checking return values from pdsh, documentation. Looking very good, many thanks!
f0c2812 to
7831e76
Compare

Story 2 of 11
This is the foundation story for Elbencho S3 support in CBT. It does one thing: makes
elbencho:a valid benchmark in a YAML test plan, on par with fio, radosbench, etc. However, this is incomplete; I've intentionally opted for making this work incremental to allow for more focus during reviews and better handling of requirements, especially since I'm new to this codebase and tool.The only non-trivial decision here is how the factory handles Elbencho's config. Most benchmarks take scalar parameters and the factory Cartesian-expands any list values into separate runs through
benchmarkfactory.py. Elbencho works differently — its iteration axes live inside a workloads dict that the class owns. A new guard inbenchmarkfactory.pyprevents the factory from expanding those lists and breaking that structure by checking for a particular function in theelbencho.py(and all other tools') class. This sets the pattern for any future benchmark that uses the same workloads model.The run loop itself (the three-tier blocksize → threads → iodepth iteration and pdsh execution) is Story 3 and comes in the next PR. The
_run_workloads()method here is a stub.25 unit tests cover the construction, validation, and factory bypass behaviour.
Regarding the Pull Conquest review below
This is the result of an tool that I developed. It's a configurable & semi-automated AI code review tool using
bob -p,pythonand vanillahtml,js, andcss.