ansible.builtin.async_status 模块 - 获取异步任务状态

注意

此模块是 ansible-core 的一部分,包含在所有 Ansible 安装中。在大多数情况下,您甚至可以在不指定 collections 关键字 的情况下使用简短的模块名称 async_status。但是,我们建议您使用 完全限定的集合名称 (FQCN) ansible.builtin.async_status,以便轻松链接到模块文档,并避免与可能具有相同模块名称的其他集合发生冲突。

概述

  • 此模块获取异步任务的状态。

  • 此模块也支持 Windows 目标。

注意

此模块具有相应的 动作插件

参数

参数

注释

jid

字符串 / 必需

作业或任务标识符

模式

字符串

如果为 status,则获取状态。

如果为 cleanup,则清理指定作业 jid 的异步作业缓存(默认情况下位于 ~/.ansible_async/ 中),而无需等待其完成。

选择

  • "cleanup"

  • "status" ← (默认)

属性

属性

支持

描述

动作

支持: 完全支持

指示它具有相应的动作插件,因此某些选项部分可以在控制器上执行

异步

支持: 不支持

支持与 async 关键字一起使用

bypass_host_loop

支持: 不支持

强制执行不会按主机执行的“全局”任务,这将绕过按主机进行的模板化以及串行、节流和其他循环注意事项

条件将按使用 run_once 的方式工作,使用的变量将来自第一个可用主机

此动作在非锁步策略之外无法正常工作

check_mode

支持: 完全支持

在 ansible-core 2.17 中添加

可以在 check_mode 中运行并返回更改状态预测而无需修改目标,如果不受支持,则将跳过该动作。

diff_mode

支持: 不支持

将在 diff 模式下返回有关更改内容(或可能在 check_mode 中需要更改的内容)的详细信息

平台

平台: posix, windows

可以针对其操作的目标操作系统/系列

另请参见

另请参见

异步动作和轮询

有关如何使用异步动作和轮询的详细信息。

示例

---
- name: Asynchronous dnf task
  ansible.builtin.dnf:
    name: docker-io
    state: present
  async: 1000
  poll: 0
  register: dnf_sleeper

- name: Wait for asynchronous job to end
  ansible.builtin.async_status:
    jid: '{{ dnf_sleeper.ansible_job_id }}'
  register: job_result
  until: job_result.finished
  retries: 100
  delay: 10

- name: Clean up async file
  ansible.builtin.async_status:
    jid: '{{ dnf_sleeper.ansible_job_id }}'
    mode: cleanup

返回值

常见返回值在 此处 有记录,以下字段是此模块特有的

描述

ansible_job_id

字符串

异步作业 ID

返回: 成功

示例: "360874038559.4169"

erased

字符串

已删除作业文件的路径

返回: 当文件被删除时

finished

整数

异步作业是否已完成 (1) 或未完成 (0)

返回: 始终

示例: 1

started

整数

异步作业是否已启动 (1) 或未启动 (0)

返回: 始终

示例: 1

stderr

字符串

async_wrapper 返回的任何错误

返回: 始终

stdout

字符串

async_wrapper 返回的任何输出

返回: 始终

作者

  • Ansible Core 团队

  • Michael DeHaan