Merge "Various server-side fixes to APIv2"
This commit is contained in:
commit
80eb38629e
|
@ -59,8 +59,9 @@ def cluster_templates_get(cluster_template_id):
|
|||
@v.validate(ct_schema.CLUSTER_TEMPLATE_UPDATE_SCHEMA_V2,
|
||||
v_ct.check_cluster_template_update)
|
||||
def cluster_templates_update(cluster_template_id, data):
|
||||
data['hadoop_version'] = data['plugin_version']
|
||||
del data['plugin_version']
|
||||
if data.get('plugin_version', None):
|
||||
data['hadoop_version'] = data['plugin_version']
|
||||
del data['plugin_version']
|
||||
return u.to_wrapped_dict(
|
||||
api.update_cluster_template, cluster_template_id, data)
|
||||
|
||||
|
|
|
@ -72,7 +72,6 @@ def image_tags_update(image_id, data):
|
|||
@rest.delete('/images/<image_id>/tags')
|
||||
@acl.enforce("data-processing:images:remove_tags")
|
||||
@v.check_exists(api.get_image, id='image_id')
|
||||
@v.validate(v_images.image_tags_schema)
|
||||
def image_tags_delete(image_id):
|
||||
api.remove_image_tags(image_id)
|
||||
return u.render()
|
||||
|
|
|
@ -37,13 +37,12 @@ def jobs_list():
|
|||
# once APIv1 is deprecated this can be
|
||||
# removed
|
||||
for je in result:
|
||||
je['engine_job_id'] = je['oozie_job_id']
|
||||
del je['oozie_job_id']
|
||||
je.pop('oozie_job_id', force=True)
|
||||
return u.render(res=result, name='jobs')
|
||||
|
||||
|
||||
@rest.post('/jobs')
|
||||
@acl.enforce("data-processing:job-executions:execute")
|
||||
@acl.enforce("data-processing:jobs:execute")
|
||||
@v.validate(v_j_e_schema.JOB_EXEC_SCHEMA_V2, v_j_e.check_job_execution)
|
||||
def jobs_execute(data):
|
||||
return u.render(api.execute_job(data).to_wrapped_dict())
|
||||
|
@ -58,8 +57,10 @@ def jobs_get(job_id):
|
|||
data.get('refresh_status', 'false')).lower() == 'true'
|
||||
result = u.to_wrapped_dict_no_render(
|
||||
api.get_job_execution, job_id, refresh_status)
|
||||
result['engine_job_id'] = result['oozie_job_id']
|
||||
del result['oozie_job_id']
|
||||
result['job_execution']['engine_job_id'] = (
|
||||
result['job_execution']['oozie_job_id']
|
||||
)
|
||||
del result['job_execution']['oozie_job_id']
|
||||
return u.render(result)
|
||||
|
||||
|
||||
|
@ -71,8 +72,10 @@ def jobs_get(job_id):
|
|||
def jobs_update(job_id, data):
|
||||
result = u.to_wrapped_dict_no_render(
|
||||
api.update_job_execution, job_id, data)
|
||||
result['engine_job_id'] = result['oozie_job_id']
|
||||
del result['oozie_job_id']
|
||||
result['job_execution']['engine_job_id'] = (
|
||||
result['job_execution']['oozie_job_id']
|
||||
)
|
||||
del result['job_execution']['oozie_job_id']
|
||||
return u.render(result)
|
||||
|
||||
|
||||
|
|
|
@ -61,8 +61,9 @@ def node_group_templates_get(node_group_template_id):
|
|||
@v.validate(ngt_schema.NODE_GROUP_TEMPLATE_UPDATE_SCHEMA_V2,
|
||||
v_ngt.check_node_group_template_update)
|
||||
def node_group_templates_update(node_group_template_id, data):
|
||||
data['hadoop_version'] = data['plugin_version']
|
||||
del data['plugin_version']
|
||||
if data.get('plugin_version', None):
|
||||
data['hadoop_version'] = data['plugin_version']
|
||||
del data['plugin_version']
|
||||
return u.to_wrapped_dict(
|
||||
api.update_node_group_template, node_group_template_id, data)
|
||||
|
||||
|
|
|
@ -67,6 +67,12 @@ images_policies = [
|
|||
'method': 'POST'},
|
||||
{'path': '/v2/images/{image_id}/tags',
|
||||
'method': 'DELETE'}]),
|
||||
policy.DocumentedRuleDefault(
|
||||
name=base.DATA_PROCESSING_IMAGES % 'get_tags',
|
||||
check_str=base.UNPROTECTED,
|
||||
description='List tags on an image.',
|
||||
operations=[{'path': '/v2/images/{image_id}/tags',
|
||||
'method': 'GET'}]),
|
||||
]
|
||||
|
||||
|
||||
|
|
|
@ -113,10 +113,10 @@ def check_job_execution(data, job_templates_id=None):
|
|||
|
||||
jt_err_msg = _("Job template with id '%s' doesn't exist")
|
||||
if job_templates_id is None:
|
||||
job = conductor.job_get(ctx, data['job_templates_id'])
|
||||
job = conductor.job_get(ctx, data['job_template_id'])
|
||||
if not job:
|
||||
raise ex.InvalidReferenceException(
|
||||
jt_err_msg % data['job_templates_id'])
|
||||
jt_err_msg % data['job_template_id'])
|
||||
else:
|
||||
job = conductor.job_get(ctx, job_templates_id)
|
||||
if not job:
|
||||
|
|
|
@ -54,11 +54,11 @@ JOB_EXEC_SCHEMA = {
|
|||
|
||||
JOB_EXEC_SCHEMA_V2 = copy.deepcopy(JOB_EXEC_SCHEMA)
|
||||
JOB_EXEC_SCHEMA_V2['properties'].update({
|
||||
"job_templates_id": {
|
||||
"job_template_id": {
|
||||
"type": "string",
|
||||
"format": "uuid",
|
||||
}})
|
||||
JOB_EXEC_SCHEMA_V2['required'].append('job_templates_id')
|
||||
JOB_EXEC_SCHEMA_V2['required'].append('job_template_id')
|
||||
|
||||
|
||||
JOB_EXEC_UPDATE_SCHEMA = {
|
||||
|
|
|
@ -64,7 +64,9 @@ class FrozenDict(dict):
|
|||
def clear(self):
|
||||
raise ex.FrozenClassError(self)
|
||||
|
||||
def pop(self, k, d=None):
|
||||
def pop(self, k, d=None, force=False):
|
||||
if force:
|
||||
return super(FrozenDict, self).pop(k, d)
|
||||
raise ex.FrozenClassError(self)
|
||||
|
||||
def popitem(self):
|
||||
|
|
Loading…
Reference in New Issue