diff options
author | qiujuan <juan_qiu@tongji.edu.cn> | 2016-05-30 21:15:53 +0800 |
---|---|---|
committer | lihuan <lihuansse@tongji.edu.cn> | 2016-06-25 12:07:29 +0800 |
commit | 8a4f8df64b8897bf38e77399099099f92266048b (patch) | |
tree | a6df95463e2681f464940f3b27f9323207ac78c3 /yardstick/benchmark/scenarios/availability/attacker/baseattacker.py | |
parent | 675eef731a098f83aa98c2021b151b7e5ba1da7d (diff) |
Creating a generic attacker
JIRA: YARDSTICK-273
Change-Id: Id81b554b559d14ced440a1fa004d14d791fd2306
Signed-off-by: qiujuan <juan_qiu@tongji.edu.cn>
Diffstat (limited to 'yardstick/benchmark/scenarios/availability/attacker/baseattacker.py')
-rw-r--r-- | yardstick/benchmark/scenarios/availability/attacker/baseattacker.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/yardstick/benchmark/scenarios/availability/attacker/baseattacker.py b/yardstick/benchmark/scenarios/availability/attacker/baseattacker.py index a1c6999e5..78276efa2 100644 --- a/yardstick/benchmark/scenarios/availability/attacker/baseattacker.py +++ b/yardstick/benchmark/scenarios/availability/attacker/baseattacker.py @@ -20,6 +20,31 @@ attacker_conf_path = pkg_resources.resource_filename( "attacker_conf.yaml") +class AttackerMgr(object): + + def __init__(self): + self._attacker_list = [] + + def init_attackers(self, attacker_cfgs, context): + LOG.debug("attackerMgr confg: %s" % attacker_cfgs) + + for cfg in attacker_cfgs: + attacker_cls = BaseAttacker.get_attacker_cls(cfg) + attacker_ins = attacker_cls(cfg, context) + attacker_ins.key = cfg['key'] + attacker_ins.setup() + self._attacker_list.append(attacker_ins) + + def __getitem__(self, item): + for obj in self._attacker_list: + if(obj.key == item): + return obj + + def recover(self): + for _instance in self._attacker_list: + _instance.recover() + + class BaseAttacker(object): attacker_cfgs = {} @@ -45,3 +70,6 @@ class BaseAttacker(object): def get_script_fullpath(self, path): base_path = os.path.dirname(attacker_conf_path) return os.path.join(base_path, path) + + def recover(self): + pass |