提交作业
请求方式:POST
https://www.bkunyun.com/c3ce/cloud-bursting/job
Body Attributes(Body属性)
| Parameter | Required | Type | Description | 
|---|---|---|---|
| envs | 否 | object | 自定义环境变量 | 
| jobName | 否 | String | 作业名称 | 
| masterId | 是 | String | 主节点id | 
| requestId | 否 | String | 请求Id可以被用来查询提交作业结果。若请求Id为空,则本次请求会提交新的作业。 | 
| slurmCommand | 是 | String | 经过Base64编码后的提交作业命令 | 
| pre-hook.script | 否 | String | 预处理脚本路径 | 
| pre-hook.args | 否 | array | 预处理脚本参数 | 
| lifecycle-hook.script | 否 | String | 作业lifecycle脚本路径 | 
| lifecycle-hook.args | 否 | String | 作业lifecycle脚本参数 | 
| lifecycle-hook.condition | 否 | array | 作业lifecycle脚本执行条件,默认为ONCOMPLETE。可选值: ALWAYS-总是执行 ONRUNNING-作业开始执行 ONCANCELLED-作业取消 ONCOMPLETED-作业完成 ONFAILED-作业执行失败 | 
| post-hook.script | 否 | String | 后置处理脚本脚本路径 | 
| post-hook.args | 否 | String | 后置处理脚本参数 | 
| post-hook.condition | 否 | array | 后置处理脚本执行条件,默认为ONCOMPLETE。可选值: ALWAYS-总是执行 ONCANCELLED-作业取消 ONCOMPLETED-作业完成 ONFAILED-作业执行失败 | 
Request(请求)
Headers(HTTP头)
注: 请首先联系Cloudam获取API Token,token相当于密码,请妥善保护。
主要事项:
- 同一个管理节点不能提交多个同样的jobname 作业
- masterId查看方式
 
- slurmCommand bash64编码转换
 
{
    "Authorization": "Bearer ${token}",
    "Content-Type": "application/json"
}
Body(请求体JSON)
{
    "envs": {
        "workDir": "/home/cloudam/yinfo/jobs/123",
        "inputDir": "oss://path/to/input",
        "outputDir": "oss://path/to/output"
    },
    "jobName": "myJob",
    "masterId": "63a91e9a14203f0001461c5f",
    "requestId": "",
    "slurmCommand": "IyEvYmluL2Jhc2gKc2JhdGNoIC1wIGctdjEwMC0xIC1uIDEwIC1jIDEgIC9ob21lL2Nsb3VkYW0vZ3JvbWFjcy5zaA==",
    "pre-hook": {
        "script": "/home/cloudam/yinfo/download-input-files.sh",
        "args": ["arg1", "arg2"]
    },
    "lifecycle-hook": {
        "script": "/home/cloudam/job-status-change.sh",
        "args": ["arg1", "arg2"],
        "condition": ["ONRUNNING"]
    },
    "post-hook": {
        "script": "/home/cloudam/post-execution.sh",
        "args": ["arg1", "arg2"],
        "condition": ["ALWAYS"]
    }
}
Response(响应) - 200
Headers(响应头)
{
    "Content-Type": "application/json"
}
Body(响应体JSON) -- 正确响应
{
    "errorCode": "0",
    "status": "DONE",
    "message": "Success",
    "jobId": "22",
    "requestId": "123"
}
Response Body Attributes(响应Body属性)
| Attribute | Type | Description | 
|---|---|---|
| status | String | 作业提交请求状态,DONE 已完成;RUNNING 执行中 | 
| errorCode | String | 错误代码,0表示成功 | 
| jobId | String | 当status的值为DONE且成功提交作业时返回作业id,否则返回空字符串 | 
| requestId | String | 本次请求id | 
| message | String | 错误信息描述 |