创建作业(App类型)

CreateJob

描述

创建一个使用 App 的 job 资源。

请求方法

说明

POST /jobs

请求消息体

{
    "Name": string,
    "Description": string,
    "Type": "App",
    "App": {
        "AppName": string,
        "Inputs": {
            string: Any
        },
        "Outputs": {
            string: string
        },
        "Logging": {
            "StdoutPath": string,
            "StderrPath": string
        },
        "Config": {
            "ResourceType": string,
            "InstanceType": string,
            "InstanceCount": number,
            "MinDiskSize": number,
            "DiskType": string,
            "MinDataDiskSize":number,
            "DataDiskType": string,
            "DataDiskMountPoint": string,
            "MaxRetryCount": number,
            "Timeout": number,
            "ReserveOnFail": boolean
        }
    }
}

请求参数

参数

参数名称

类型

必选

描述

Name

string

作业名称。允许的字符集为[a-zA-Z0-9_-],长度不能大于100,不能为空

Description

string

作业的详细描述。长度不能大于1000。默认值:空

Type

string

作业类型。App 类型的作业其值必须为:App

AppName

string

app name。允许的字符集为[a-zA-Z0-9_-:],长度不能大于1024。App 名 Name 有两种格式,分别用于访问公共的 App 和自己私有的 App。比如,要访问公共 App 名字是 App1,则可以设置为 Public:App1,其中的 Public 可以省略,变为:App1。如果 App1 是自己的私有 App,则直接设置为 App1。

Inputs

map<string, Any>

作业输入参数。Map 大小不能大于50,不能小于0。Key 应为 App 中 InputParameters 定义的参数名,Value 应当与 App 中参数定义的类型相同。

outputs

map<string, string>

作业输出参数。Map 大小不能大于50,不能小于0。Key 应为 App 中 OutputParameters 定义的 LocalPath 不为空的参数名,Value 应当为某个 OSS 路径。默认值:{}

Logging

object(Logging)

日志配置

Config

object(Config)

作业运行时配置

Logging

参数名称

类型

必选

描述

StdoutPath

string

标准输出重定向到 OSS 的目录。长度不能大于1000。默认值:空

StderrPath

string

标准错误重定向到 OSS 的目录。长度不能大于1000。默认值:空

Config

参数名称

类型

必选

描述

ResourceType

string

资源类型。可以取值为:OnDemand,Spot。默认值为 App 中定义的值。

InstanceType

string

ECS 实例类型。默认值为 App 中定义的值。

InstanceCount

number

并发执行实例个数。默认值为 App 中定义的值。

MinDiskSize

number

最小系统盘大小(单位 GB)。默认值为 App 中定义的值。

DiskType

string

系统盘类型。默认值为 App 中定义的值。

MinDataDiskSize

number

最小数据盘大小(单位 GB)。默认值为 App 中定义的值。

DataDiskType

string

数据盘类型。默认值为 App 中定义的值。

DataDiskMountPoint

string

数据盘挂载点。默认值为 App 中定义的值。

MaxRetryCount

number

某个 Instance 失败后,最大重试次数。默认值为 App 中定义的值。

Timeout

number

Instance 的运行时超时时间,单位为秒。默认值为 App 中定义的值。

ReserveOnFail

boolean

作业失败后,是否保留虚拟机,以待调查问题。默认值为 false。

响应

响应状态码

说明

201

响应消息体

{
    "Id": string
}

响应参数

参数名称

类型

描述

Id

string

资源Id

示例

请求示例

POST /jobs
{
    "Name": "job_name",
    "Description": "job description",
    "Type": "App",
    "App": {
        "AppName": "myapp",
        "Inputs": {
            "inputFile": "oss://bucket/a"
        },
        "Outputs": {
            "outputFile": "oss://bucket/b"
        },
        "Config": {
            "InstanceType": "ecs.s3.large"
        },
        "Logging": {
            "StdoutPath": "oss://bucket/logging/",
            "StderrPath": "oss://bucket/logging/"
        }
    }
}

返回示例

HTTP/1.1 201 Created
{
    "Id": "job-0000123"
}