启动作业
功能介绍
启动作业。
URI
POST /v1/{project_id}/eihealth-projects/{eihealth_project_id}/jobs
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
eihealth_project_id |
是 |
String |
参数解释: 空间ID。 约束限制: 不涉及 取值范围: 仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。 默认取值: 不涉及 |
|
project_id |
是 |
String |
参数解释: 项目ID,您可以从获取项目ID中获取。 约束限制: 不涉及 取值范围: 仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。 默认取值: 不涉及 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
X-Auth-Token |
是 |
String |
参数解释: 用户Token。 Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限,获取Token接口响应消息头中X-Subject-Token的值即为Token。 约束限制: 不涉及 取值范围: 长度为[1-32768]个字符。 默认取值: 不涉及 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
name |
是 |
String |
参数解释: 作业的名称。 约束限制: 取值范围:[1,63],允许大小写字母、数字、以及特殊字符中划线(-)。 取值范围: 长度[1,63],以小写字母、大写字母或数字开头,允许出现中划线。 默认取值: 不涉及 |
|
description |
否 |
String |
参数解释: 作业的描述。 约束限制: 不涉及 取值范围: 长度最大为255个字符。 默认取值: 不涉及 |
|
labels |
否 |
Array of strings |
参数解释: 作业标签。 约束限制: 单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。最多设置5个标签。 取值范围: 不涉及 默认取值: 不涉及 |
|
priority |
否 |
Integer |
参数解释: 作业的优先级。 约束限制: 取值范围[0,9],0最低,默认数值0。 取值范围: 长度[0,9],0最低,默认数值0。 默认取值: 0 |
|
timeout |
否 |
Integer |
参数解释: 作业执行超时时长。 约束限制: 取值范围: [1,144000],单位:分钟,默认数值1440。 取值范围: 长度[1,144000],单位:分钟,默认数值1440。 默认取值: 1440 |
|
output_dir |
否 |
String |
参数解释: 作业结果存储目录,默认为空,表示使用自身项目桶的根目录。 约束限制: 不涉及 取值范围: 长度[0,128]。 默认取值: 不涉及 |
|
tool_id |
是 |
String |
参数解释: 作业依赖的组件ID,组件当前仅支持流程,取值范围[1,135],支持大小写字母和数字。目前支持两种格式,特殊ID:{流程名称}::{流程版本}::{源项目名称};正常ID:流程ID。 约束限制: 取值范围[1,135],支持大小写字母和数字。 取值范围: 长度[1,135],支持大小写字母和数字。 默认取值: 不涉及 |
|
tool_type |
是 |
String |
参数解释: 作业依赖的组件类型,支持app和workflow。 约束限制: 不涉及 取值范围:
默认取值: 不涉及 |
|
tasks |
否 |
Array of JobTaskDto objects |
参数解释: 作业子任务列表。 约束限制: 最多支持设置64个子任务。 取值范围: 不涉及 默认取值: 不涉及 |
|
io_acc_id |
否 |
String |
参数解释: 作业使用的IO加速实例ID,不填表示不使用。 约束限制: 不涉及 取值范围: 长度[0,128],支持字母、数字、下划线和中划线。 默认取值: 不涉及 |
|
io_acc_expected_usage |
否 |
Integer |
参数解释: 作业使用的SFS-Turbo实例预期占用存储量,单位G,用于投递作业时评估当前加速实例余量是否充足。 约束限制: 不涉及 取值范围: 长度[0,327680]。 默认取值: 不涉及 |
|
node_labels |
否 |
Array of strings |
参数解释: 节点标签。 约束限制: 取值范围[0,1],单个标签最大长度63字符。 取值范围: 不涉及 默认取值: 不涉及 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
task_name |
是 |
String |
参数解释: 子任务实际名称。 约束限制: 不涉及 取值范围: 长度[1,32],只能以大小写字母开头,由大小写字母、数字、中划线(-)、下划线(_)组成,以大小写字符或数字结尾。 默认取值: 不涉及 |
|
inputs |
否 |
Array of TaskParameterDto objects |
参数解释: 任务的输入参数信息。 约束限制: 最多支持128个参数。 取值范围: 不涉及 默认取值: 不涉及 |
|
outputs |
否 |
Array of TaskParameterDto objects |
参数解释: 任务的输出参数信息。 约束限制: 最多支持128个参数。 取值范围: 不涉及 默认取值: 不涉及 |
|
resources |
否 |
TaskResourceDto object |
参数解释: 应用申请资源。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
output_dir |
否 |
String |
参数解释: 子任务结果存储目录,默认为空。 约束限制: 不涉及 取值范围: 长度[0,128]。 默认取值: 不涉及 |
|
io_acc_type |
否 |
String |
参数解释: 子任务使用的IO加速实例类型,不填表示不使用。 约束限制: 不涉及 取值范围:
默认取值: 不涉及 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
name |
是 |
String |
参数解释: 子任务的参数名称。 约束限制: 不涉及 取值范围: 长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。 默认取值: 不涉及 |
|
source |
否 |
String |
参数解释: 子任务的参数类型。 约束限制: 不涉及 取值范围:
默认取值: MANUAL |
|
values |
否 |
Array of strings |
参数解释: 子任务的参数数值。 约束限制: 每个参数取值范围[0,2048],最多支持设置128个参数。 取值范围: 不涉及 默认取值: 不涉及 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
cpu |
否 |
String |
参数解释: cpu申请使用量。 约束限制: 不涉及 取值范围: 取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
|
cpu_type |
否 |
String |
参数解释: cpu架构类型。 约束限制: 不涉及 取值范围: 取值范围,支持X86|ARM。 默认取值: X86。 |
|
memory |
否 |
String |
参数解释: 内存申请使用量。 约束限制: 不涉及 取值范围: 取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
|
gpu_type |
否 |
String |
参数解释: gpu架构类型。 约束限制: 不涉及 取值范围: gpu架构类型,支持GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
|
gpu |
否 |
String |
参数解释: gpu申请使用量。 约束限制: 不涉及 取值范围: 取值范围[0-16],仅支持整数。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
响应参数
状态码:201
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
参数解释: 作业ID。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
max_platform_flavor |
TaskResourceDto object |
参数解释: 平台节点最大规格。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
app_infos |
Array of AppFilterDto objects |
参数解释: 不满足节点规格约束的应用列表信息。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
job_info |
JobFilterDto object |
参数解释: 不满足节点标签约束的作业信息。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
app_id |
String |
参数解释: 应用ID。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
app_name |
String |
参数解释: 应用名称。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
app_version |
String |
参数解释: 应用版本。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
app_resource |
TaskResourceDto object |
参数解释: 应用资源。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
app_node_labels |
Array of strings |
参数解释: 计算节点标签。 约束限制: 不涉及 取值范围: 不涉及 默认取值: 不涉及 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
cpu |
String |
参数解释: cpu申请使用量。 约束限制: 不涉及 取值范围: 取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
|
cpu_type |
String |
参数解释: cpu架构类型。 约束限制: 不涉及 取值范围: 取值范围,支持X86|ARM。 默认取值: X86。 |
|
memory |
String |
参数解释: 内存申请使用量。 约束限制: 不涉及 取值范围: 取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
|
gpu_type |
String |
参数解释: gpu架构类型。 约束限制: 不涉及 取值范围: gpu架构类型,支持GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
|
gpu |
String |
参数解释: gpu申请使用量。 约束限制: 不涉及 取值范围: 取值范围[0-16],仅支持整数。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。 默认取值: 不涉及 |
请求示例
启动作业,其中作业的名称为demo-job,作业使用IO加速类型为SFS。
https://{endpoint}/v1/{project_id}/eihealth-projects/{eihealth_project_id}/jobs
{
"name" : "demo-job",
"description" : "description",
"labels" : [ "labelA", "labelB" ],
"priority" : 0,
"timeout" : 1440,
"output_dir" : "/job",
"tool_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
"tool_type" : "workflow",
"tasks" : [ {
"task_name" : "app1-1",
"inputs" : [ {
"name" : "dir-parameter",
"values" : [ "test-project:/300M_NA12878_clean_1.fastq" ]
} ],
"outputs" : [ {
"name" : "dir-parameter",
"values" : [ "test-project:/output-dir/" ]
} ],
"io_acc_type" : "SFS",
"resources" : {
"cpu_type" : "X86",
"cpu" : "1C",
"memory" : "1G",
"gpu_type" : "GPU",
"gpu" : 0
}
} ]
}
响应示例
状态码:201
CREATED
{
"id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
"app_infos" : [ {
"app_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
"app_name" : "demo-app",
"app_version" : "1.0.0",
"app_node_labels" : [ "health.node" ]
} ],
"job_info" : {
"job_name" : "demo-job",
"job_node_labels" : [ "health.node" ]
}
}
状态码
|
状态码 |
描述 |
|---|---|
|
201 |
CREATED |
错误码
请参见错误码。