作业任务¶
说明¶
- 查看已执行过的作业,可以完成再次执行,查看历史执行内容的操作
1、作业任务列表、新增作业任务、批量删除作业任务 API¶
请求方式: GET(查询) POST(新增) DELETE(批量删除)
请求地址: /api/job/job/
Content-Type:
新增数据的时候需要指定Content-Type,以下对Content-Type进行说明:
application/x-www-form-urlencoded —— 表示通过表单方式提交
application/json —— 表示传入数据为json格式字符串
查询参数:
参数 | 数据类型 | 是否必须 | 说明 |
offset | int | 否 | 数据起始位置 |
limit | int | 否 | 查询条数 |
template | int | 否 | 模板id |
inventory | int | 否 | 主机清单 |
credential | int | 否 | 凭据id |
state | string | 否 | 状态 |
kind | string | 否 | 作业类型 |
schedule | string | 否 | 计划任务 |
输入参数(新增):
参数 | 数据类型 | 是否必须 | 说明 |
cuser | string | 是 | 执行人 |
last_name | string | 是 | 执行人姓名 |
template | int | 是 | 模板id |
template_name | string | 是 | 模板id中文名称 |
inventory | int | 否 | 主机清单 |
inventory_name | string | 否 | 主机清单中文名称 |
credential | int | 是 | 凭据id |
credential_name | string | 是 | 凭据id中文名称 |
start_time | long | 是 | 开始时间(秒级时间戳) |
finish_time | long | 是 | 完成时间(秒级时间戳) |
state | string | 是 | 状态(new-新建;waiting-等待中;running-运行中;successful-成功;failed-失败) |
job_type | string | 是 | 运行模式(run-Run;check-Check) |
project | int | 是 | 项目id |
project_name | string | 否 | 项目id中文名称 |
forks | int | 是 | 并发数 |
limit | string | 否 | limit |
tags | string | 否 | tags |
skip_tags | string | 否 | skip_tags |
verbosity | int | 否 | Debug级别(0-Normal;1-Verbose;2-More Verbose;3-Debug;4-Connection Debug) |
variables | string | 否 | 参数 |
inventory_str | int | 否 | 主机列表 |
become_enabled | int | 是 | 是否允许切换用户(0-否;1-是) |
become_enabled_name | int | 是 | 是否允许切换用户中文名称(0-否;1-是) |
diff_mode | int | 是 | 是否使用diff模块(0-否;1-是) |
diff_mode_name | int | 是 | 是否使用diff模块中文名称(0-否;1-是) |
force_handlers | int | 是 | 是否强制允许handlers任务(0-否;1-是) |
force_handlers_name | int | 是 | 是否强制允许handlers任务中文名称(0-否;1-是) |
start_at_task | string | 否 | 开始任务 |
module | string | 否 | 模块 |
arguments | string | 否 | 命令参数 |
node | int | 否 | 工作流节点 |
schedule | int | 否 | 计划任务 |
schedule_name | string | 否 | 计划任务中文名称 |
ctime | long | 是 | 创建时间 |
输出参数:
参数 | 数据类型 | 是否必须 | 说明 |
id | int | 是 | 作业任务 id |
cuser | string | 是 | 执行人 |
last_name | string | 是 | 执行人姓名 |
template | int | 是 | 模板id |
template_name | string | 是 | 模板id中文名称 |
inventory | int | 否 | 主机清单 |
inventory_name | string | 否 | 主机清单中文名称 |
credential | int | 是 | 凭据id |
credential_name | string | 是 | 凭据id中文名称 |
start_time | long | 是 | 开始时间(秒级时间戳) |
finish_time | long | 是 | 完成时间(秒级时间戳) |
state | string | 是 | 状态(new-新建;waiting-等待中;running-运行中;successful-成功;failed-失败) |
job_type | string | 是 | 运行模式(run-Run;check-Check) |
project | int | 是 | 项目id |
project_name | string | 否 | 项目id中文名称 |
forks | int | 是 | 并发数 |
limit | string | 否 | limit |
tags | string | 否 | tags |
skip_tags | string | 否 | skip_tags |
verbosity | int | 否 | Debug级别(0-Normal;1-Verbose;2-More Verbose;3-Debug;4-Connection Debug) |
variables | string | 否 | 参数 |
inventory_str | int | 否 | 主机列表 |
become_enabled | int | 是 | 是否允许切换用户(0-否;1-是) |
become_enabled_name | int | 是 | 是否允许切换用户中文名称(0-否;1-是) |
diff_mode | int | 是 | 是否使用diff模块(0-否;1-是) |
diff_mode_name | int | 是 | 是否使用diff模块中文名称(0-否;1-是) |
force_handlers | int | 是 | 是否强制允许handlers任务(0-否;1-是) |
force_handlers_name | int | 是 | 是否强制允许handlers任务中文名称(0-否;1-是) |
start_at_task | string | 否 | 开始任务 |
module | string | 否 | 模块 |
arguments | string | 否 | 命令参数 |
node | int | 否 | 工作流节点 |
schedule | int | 否 | 计划任务 |
schedule_name | string | 否 | 计划任务中文名称 |
ctime | long | 是 | 创建时间 |
批量删除参数:
参数 | 数据类型 | 是否必须 | 说明 |
pk | string | 与pk[]不能都为空 | 主键,多个主键用半角逗号隔开。通过http body传入 |
pk[] | array | 与pk不能都为空 | 主键数组。通过http body传入 |
排序:
参数 | 数据类型 | 是否必须 | 说明 |
ordering | string | 否 |
|
GET返回数据例子:
{
"count": 9,
"next": null,
"previous": null,
"results": [
{
"id": 1718,
"template": null,
"cuser": 18,
"user": "fly yao",
"job_type": "run",
"inventory": 15,
"credential": 30,
"forks": 0,
"limit": "",
"tags": "",
"skip_tags": "",
"verbosity": 0,
"variables": "",
"start_time": 1561705739,
"finish_time": 1561705740,
"state": "failed",
"inventory_str": "",
"become_enabled": 0,
"diff_mode": 0,
"force_handlers": 0,
"start_at_task": "",
"inventory_name": "测试tomcat",
"credential_name": "测试",
"state_name": "失败",
"playbook": "main.yml",
"kind": "job",
"arguments": "",
"module": "",
"verbosity_name": "Normal",
"kind_name": "自动化作业",
"job": null,
"node": null,
"force_handlers_name": "否",
"diff_mode_name": "否",
"become_enabled_name": "否",
"schedule": null,
"schedule_name": null,
"ctime": 1561705739,
"project_name": "测试tomcat",
"project": 15
},
{
"id": 1716,
"template": 28,
"cuser": 18,
"user": "fly yao",
"job_type": "run",
"inventory": 15,
"credential": 30,
"forks": 0,
"limit": "",
"tags": "",
"skip_tags": "",
"verbosity": 0,
"variables": "",
"start_time": 1561689956,
"finish_time": 1561689957,
"state": "failed",
"inventory_str": "",
"become_enabled": 0,
"diff_mode": 0,
"force_handlers": 0,
"start_at_task": "",
"inventory_name": "测试tomcat",
"credential_name": "测试",
"template_name": "tomcat",
"state_name": "失败",
"playbook": "main.yml",
"kind": "job",
"arguments": "",
"module": "",
"verbosity_name": "Normal",
"kind_name": "自动化作业",
"job": null,
"node": null,
"force_handlers_name": "否",
"diff_mode_name": "否",
"become_enabled_name": "否",
"schedule": null,
"schedule_name": null,
"ctime": 1561689956,
"project_name": "测试tomcat",
"project": 15
},
{
"id": 1715,
"template": 28,
"cuser": 18,
"user": "fly yao",
"job_type": "run",
"inventory": 15,
"credential": 30,
"forks": 0,
"limit": "",
"tags": "",
"skip_tags": "",
"verbosity": 0,
"variables": "",
"start_time": 1561688923,
"finish_time": 1561688924,
"state": "failed",
"inventory_str": "",
"become_enabled": 0,
"diff_mode": 0,
"force_handlers": 0,
"start_at_task": "",
"inventory_name": "测试tomcat",
"credential_name": "测试",
"template_name": "tomcat",
"state_name": "失败",
"playbook": "main.yml",
"kind": "job",
"arguments": "",
"module": "",
"verbosity_name": "Normal",
"kind_name": "自动化作业",
"job": null,
"node": null,
"force_handlers_name": "否",
"diff_mode_name": "否",
"become_enabled_name": "否",
"schedule": null,
"schedule_name": null,
"ctime": 1561688923,
"project_name": "测试tomcat",
"project": 15
}
]
}
新增作业任务返回数据例子:
{
"id": 1715,
"template": 28,
"cuser": 18,
"user": "fly yao",
"job_type": "run",
"inventory": 15,
"credential": 30,
"forks": 0,
"limit": "",
"tags": "",
"skip_tags": "",
"verbosity": 0,
"variables": "",
"start_time": 1561688923,
"finish_time": 1561688924,
"state": "failed",
"inventory_str": "",
"become_enabled": 0,
"diff_mode": 0,
"force_handlers": 0,
"start_at_task": "",
"inventory_name": "测试tomcat",
"credential_name": "测试",
"template_name": "tomcat",
"state_name": "失败",
"playbook": "main.yml",
"kind": "job",
"arguments": "",
"module": "",
"verbosity_name": "Normal",
"kind_name": "自动化作业",
"job": null,
"node": null,
"force_handlers_name": "否",
"diff_mode_name": "否",
"become_enabled_name": "否",
"schedule": null,
"schedule_name": null,
"ctime": 1561688923,
"project_name": "测试tomcat",
"project": 15
}
2、获取单个作业任务,修改作业任务、删除作业任务 API¶
请求方式: GET(查询) PUT(修改) PATCH(修改) DELETE(删除)
请求地址: /api/job/job/1715/
请求地址中1715为作业任务的id
输入/输出参数: 见章节1中输入和输出参数说明,修改数据时输入参数均为非必须
返回数据例子:
{
"id": 1715,
"template": 28,
"cuser": 18,
"user": "fly yao",
"job_type": "run",
"inventory": 15,
"credential": 30,
"forks": 0,
"limit": "",
"tags": "",
"skip_tags": "",
"verbosity": 0,
"variables": "",
"start_time": 1561688923,
"finish_time": 1561688924,
"state": "failed",
"inventory_str": "",
"become_enabled": 0,
"diff_mode": 0,
"force_handlers": 0,
"start_at_task": "",
"inventory_name": "测试tomcat",
"credential_name": "测试",
"template_name": "tomcat",
"state_name": "失败",
"playbook": "main.yml",
"kind": "job",
"arguments": "",
"module": "",
"verbosity_name": "Normal",
"kind_name": "自动化作业",
"job": null,
"node": null,
"force_handlers_name": "否",
"diff_mode_name": "否",
"become_enabled_name": "否",
"schedule": null,
"schedule_name": null,
"ctime": 1561688923,
"project_name": "测试tomcat",
"project": 15
}