Skip to content

Commit c172c38

Browse files
committed
support lebesgue insert job v2 api
1 parent f07446e commit c172c38

File tree

1 file changed

+47
-0
lines changed
  • dpdispatcher/dpcloudserver

1 file changed

+47
-0
lines changed

dpdispatcher/dpcloudserver/api.py

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from .retcode import RETCODE
1515
from .config import HTTP_TIME_OUT, API_HOST
1616
token = ''
17+
group_id = None
1718
def get(url, params):
1819
global token
1920
headers = {'Authorization': "jwt " + token}
@@ -107,6 +108,9 @@ def upload(oss_task_zip, zip_task_file, endpoint, bucket_name):
107108

108109

109110
def job_create(job_type, oss_path, input_data, program_id=None):
111+
api_version = input_data.get('api_version',1)
112+
if api_version == 2:
113+
return job_create_v2(job_type,oss_path,input_data, program_id=program_id)
110114
post_data = {
111115
'job_type': job_type,
112116
'oss_path': oss_path,
@@ -118,6 +122,49 @@ def job_create(job_type, oss_path, input_data, program_id=None):
118122
return ret['job_id']
119123

120124

125+
def job_create_v2(job_type, oss_path, input_data, program_id=None):
126+
global group_id
127+
post_data = {
128+
'job_type': job_type,
129+
'oss_path': oss_path,
130+
}
131+
if program_id is not None:
132+
post_data["program_id"] = program_id
133+
if input_data.get('job_group_id') is not None:
134+
post_data["job_group_id"] = input_data.get('job_group_id')
135+
elif input_data.get('grouped') is not None and input_data.get('grouped'):
136+
if group_id is not None:
137+
post_data["job_group_id"] = group_id
138+
if input_data.get('job_name') is not None:
139+
post_data["job_name"] = input_data.get('job_name')
140+
if input_data.get('image_name') is not None:
141+
post_data["image_name"] = input_data.get('image_name')
142+
if input_data.get('disk_size') is not None:
143+
post_data["disk_size"] = input_data.get('disk_size')
144+
if input_data.get('scass_type') is not None:
145+
post_data["scass_type"] = input_data.get('scass_type')
146+
if input_data.get('scass_type') is not None:
147+
post_data["scass_type"] = input_data.get('scass_type')
148+
if input_data.get('instance_group_id') is not None:
149+
post_data["instance_group_id"] = input_data.get('instance_group_id')
150+
if input_data.get('command') is not None:
151+
post_data["cmd"] = input_data.get('command')
152+
if input_data.get('log_file') is not None:
153+
post_data["log_file"] = input_data.get('log_file')
154+
if input_data.get('backward_files') is not None:
155+
post_data["out_files"] = input_data.get('backward_files')
156+
if input_data.get('platform') is not None:
157+
post_data["platform"] = input_data.get('platform')
158+
if input_data.get('region') is not None:
159+
post_data["region"] = input_data.get('region')
160+
if input_data.get('zone') is not None:
161+
post_data["zone"] = input_data.get('zone')
162+
if input_data.get('on_demand') is not None:
163+
post_data["on_demand"] = input_data.get('on_demand')
164+
ret = post('/data/v2/insert_job', post_data)
165+
group_id = ret.get('job_group_id')
166+
return ret['job_id']
167+
121168
def get_jobs(page=1, per_page=10):
122169
ret = get(
123170
'/data/jobs',

0 commit comments

Comments
 (0)