diff options
author | Yang (Gabriel) Yu <Gabriel.yuyang@huawei.com> | 2018-09-04 21:02:27 +0800 |
---|---|---|
committer | Yang (Gabriel) Yu <Gabriel.yuyang@huawei.com> | 2018-09-06 14:58:45 +0800 |
commit | e32043f58a2450b6a5986dc2a01f64f8b22c3992 (patch) | |
tree | 650f6ce0381e53c3ca935025e9121f06725efd5d /test-scheduler/server/src/step/monitor.py | |
parent | a09bbea983aca3e437e254566da98196177748d9 (diff) |
Change naming and veriy test-scheduler function
Changes:
1. Testing-scheduler -> Test-scheduler
2. lots of windows breaks '\r' and '^M' in files,
batch changes to unix breaks '$'
3. Add ui/build
Change-Id: I1f2c98ab9348460d4e68bfbfab664dae82b761ba
Signed-off-by: Yang (Gabriel) Yu <Gabriel.yuyang@huawei.com>
Diffstat (limited to 'test-scheduler/server/src/step/monitor.py')
-rw-r--r-- | test-scheduler/server/src/step/monitor.py | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/test-scheduler/server/src/step/monitor.py b/test-scheduler/server/src/step/monitor.py new file mode 100644 index 00000000..7322e5f7 --- /dev/null +++ b/test-scheduler/server/src/step/monitor.py @@ -0,0 +1,57 @@ +############################################################################## +# Copyright (c) 2018 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +import json +import os +from src.step.test_step import TestStep + + +class MonitorStep(TestStep): + __step_type__ = 'monitor' + + def __init__(self, name, service, action, args): + super(MonitorStep, self).__init__(name, service, action, args) + self._argsParse() + self.action() + + def _argsParse(self): + if self._call == "REST": + currentDirPath = os.path.dirname(os.path.abspath(__file__)) + envDirPath = os.path.abspath(os.path.join( + currentDirPath, os.pardir, os.pardir, 'env')) + envFilePath = os.path.join( + envDirPath, "%s.json" % self._service['name']) + with open(envFilePath) as f: + propDict = json.load(f) + self._args['ip'] = propDict['ip'] + self._args['port'] = propDict['port'] + self._args['api'] = "%s/%s" % ( + propDict['api_map']['workload'], self._args['command']) + exclude = {'ip', 'port', 'api', 'command', 'method'} + self._args['req_body'] = { + key: value for key, value in + self._args.items() if key not in exclude} + + def setUp(self): + print "monitor setUp" + + def uninstall(self): + print "monitor uninstall" + + def start(self): + print "monitor start...." + + def stop(self): + print "monitor stop" + + +if __name__ == "__main__": + service = {"name": "ansible", "call": "REST"} + monitor = MonitorStep( + "monitor_cpu", service, "start", **{"target": "abc:qq"}) |