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"
}