JIRA: YARDSTICK-693
Apart from API to upload pod yaml file, we also need API to update pod
file.
API: /yardstick/env/action
method: POST
param:
{
'action': 'update_pod_file',
'args': {
'pod': { pod content }
}
}
Change-Id: I0ba168612ccc2e43c531e4b9253cf72e5c745297
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
return result_handler(consts.API_SUCCESS, {'pod_info': data})
return result_handler(consts.API_SUCCESS, {'pod_info': data})
+def update_pod_file(args):
+ try:
+ pod_dic = args['pod']
+ except KeyError:
+ return result_handler(consts.API_ERROR, 'pod must be provided')
+ else:
+ if not isinstance(pod_dic, collections.Mapping):
+ return result_handler(consts.API_ERROR, 'pod should be a dict')
+
+ logger.info('Writing file')
+ with open(consts.POD_FILE, 'w') as f:
+ yaml.dump(pod_dic, f, default_flow_style=False)
+ logger.info('Writing finished')
+
+ return result_handler(consts.API_SUCCESS, {'pod_info': pod_dic})
+
+
def update_hosts(hosts_ip):
if not isinstance(hosts_ip, dict):
return result_handler(consts.API_ERROR, 'Error, args should be a dict')
def update_hosts(hosts_ip):
if not isinstance(hosts_ip, dict):
return result_handler(consts.API_ERROR, 'Error, args should be a dict')