创建执行接口
更新时间:2024-08-16
接口描述
可以通过如下两种方式创建任务执行:
- 引用一个已存在的模板(参考请求示例1)
- 在创建执行时动态创建一个模板(参考请求示例2)
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
template | TemplateModel | 要执行的模板 | 是 | Body体参数 |
properties | Map<String, Object> | 模板执行所需参数 | 否 | Body体参数 |
description | String | 执行描述 | 否 | Body体参数 |
tags | List< TagModel > | 执行绑定标签列表 | 否 | Body体参数 |
TemplateModel参数
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
name | String | 是 | 模板名称 |
ref | String | 否,引用模板创建执行时必填 | 模板ID |
operators | List< OperatorModel > | 是,引用模板创建执行时可不填 | 模板包含任务列表 |
OperatorModel参数
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
name | String | 是 | 任务名称 |
operator | String | 是 | 任务类型 |
properties | Map<String, Object> | 是 | 任务执行所需参数 |
retries | int | 否 | 重试次数,默认不重试 |
retry_interval | int | 否 | 重试时间间隔,单位:毫秒,默认间隔60秒 |
timeout | int | 否 | 任务执行超时时间,单位:毫秒,默认超时时间1小时 |
description | String | 否 | 任务描述 |
TagModel参数
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
key | String | 是 | 标签key |
value | String | 是 | 标签value |
响应参数
名称 | 类型 | 描述 |
---|---|---|
id | String | 任务执行ID |
请求示例1
Python
1 # params definition
2 template1 = oos_model.TemplateModel("fake_template", ref="tpl-0YIvgR**")
3
4 # create a oos client
5 oos_client = OosClient(oos_sample_conf.config)
6
7 # create execution
8 response = oos_client.create_execution(template1)
9 print response
请求示例2
Python
1 # params definition
2 property1 = {
3 "content": "ls /",
4 "user": "root",
5 "workDir": "/",
6 "__workerSelectors__": [
7 {
8 "instanceId": "i-VZIunE**"
9 }
10 ]
11 }
12 operator1 = oos_model.OperatorModel("run_script", "BCE::Agent::ExecuteShell", property1)
13 template1 = oos_model.TemplateModel("test1", [operator1])
14
15 # create a oos client
16 oos_client = OosClient(oos_sample_conf.config)
17
18 # create execution
19 response = oos_client.create_execution(template1)
20 print response