This patchset modifies the current implementation of the performance test tweaks.
Before the patch set the user was unable to add performance test tweaks on per iteration basis. It was only possible to add/remove tweaks before/after the whole set of the performance test measurement iterations.
The patchset adds BasePerfTestIterationTweakMixin to RecipeCommon.Perf.Recipe that provides a common API for that. The actual tasks to be performed before/after each iteration needs to be defined by a specific mixin class.
In the same manner the already existing BasePerfTestTweakMixin has been moved to RecipeCommon.Perf.Recipe to have both APIs at the same place.
Jan Tluka (6): RecipeCommon.Perf.PerfTestMixins: add BasePerfTestIterationTweakMixin RecipeCommon.Perf.Recipe: add per-iteration tweaks using BasePerfTestIterationTweakMixin lnst.Recipes.ENRT.PerfTestMixins: move BasePerfTestTweakMixin to RecipeCommon RecipeCommon.Perf.PerfTestMixins.BasePerfTestTweakMixin: move get_flow_measurement_from_config to standalone function lnst.Recipes.ENRT.PerfTestMixins: add DropCachesPerfTestMixin Recipes.ENRT.PerfTestMixins: extend CommonPerfTestTweakMixin with DropCachesMixin
.../BasePerfTestIterationTweakMixin.py | 18 +++++++++ .../PerfTestMixins/BasePerfTestTweakMixin.py | 6 --- lnst/RecipeCommon/Perf/Recipe.py | 30 ++++++++++++-- lnst/Recipes/ENRT/BaseEnrtRecipe.py | 9 +---- .../CommonPerfTestTweakMixin.py | 3 +- .../PerfTestMixins/DropCachesPerfTestMixin.py | 39 +++++++++++++++++++ .../SctpFirewallPerfTestMixin.py | 11 +++--- lnst/Recipes/ENRT/PerfTestMixins/Utils.py | 5 +++ lnst/Recipes/ENRT/PerfTestMixins/__init__.py | 2 +- 9 files changed, 100 insertions(+), 23 deletions(-) create mode 100644 lnst/RecipeCommon/Perf/PerfTestMixins/BasePerfTestIterationTweakMixin.py rename lnst/{Recipes/ENRT => RecipeCommon/Perf}/PerfTestMixins/BasePerfTestTweakMixin.py (63%) create mode 100644 lnst/Recipes/ENRT/PerfTestMixins/DropCachesPerfTestMixin.py create mode 100644 lnst/Recipes/ENRT/PerfTestMixins/Utils.py