To aid the local development experience of writing new performance workloads, we should add a new "test kind" for running genny tests through resmoke.py. The latency and other metrics collected won't be particularly interesting because all of the processes will be running on the same machine, but we'll be able to ensure the mechanics of the new performance workloads are sound before submitting them to Evergreen and running on a distributed cluster.
We should have resmoke.py YAML suite file configurations for
- stand-alone mongod MongoDFixture
- 1-node replica set (ReplicaSetFixture with num_nodes=1)
- 3-node replica set (ReplicaSetFixture with num_nodes=3 and all_nodes_electable=true)
- sharded cluster ((ShardedClusterFixture with configsvr_options.num_nodes=3, num_mongos=3, num_shards=3, and num_rs_nodes_per_shard=3)
in order to match the configurations the genny_workloads Evergreen task runs in as part of the dsi Evergreen project.
Note: There isn't a need to wire up genny's output format and resmoke.py's --perfReportFile because this mode is only intended for local development and not for running in Evergreen.