ansible.builtin.debug 模块 - 执行期间打印语句

注意

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

摘要

  • 此模块在执行期间打印语句,可用于调试变量或表达式,而无需一定停止剧本。

  • when: 指令一起使用,非常适合调试。

  • 此模块还支持 Windows 目标。

注意

此模块有一个对应的 操作插件

参数

参数

注释

msg

字符串

打印的自定义消息。如果省略,则打印通用消息。

默认值: "Hello world!"

var

字符串

要调试的变量名。

msg 选项互斥。

请注意,此选项已在 Jinja2 上下文中运行,并具有隐式 {{ }} 包裹,因此您不应该使用 Jinja2 分隔符,除非您希望进行双重插值。

verbosity

整数

控制调试运行时间的数字,如果设置为 3,它只会在 -vvv 或更高版本时运行调试。

默认值: 0

属性

属性

支持

描述

action

支持: 完全支持

表示它有一个对应的操作插件,因此某些选项部分可以在控制器上执行。

async

支持: 不支持

支持与 async 关键字一起使用。

become

支持: 不支持

可与 become 关键字一起使用。

bypass_host_loop

支持: 不支持

强制执行不按主机执行的“全局”任务,这将绕过按主机进行的模板化和串行、节流和其他循环考虑因素。

条件将像使用 run_once 一样工作,使用的变量将来自第一个可用主机。

此操作在锁步策略之外将无法正常工作。

check_mode

支持: 完全支持

可以在 check_mode 下运行并返回更改状态预测,而不会修改目标,如果不受支持,则操作将被跳过。

connection

支持: 不支持

使用目标的配置连接信息在其上执行代码。

delegation

支持: 部分支持

除了 register 和/或与 delegate_facts 结合使用之外,它几乎没有效果。

可与 delegate_to 和相关关键字结合使用。

diff_mode

支持: 不支持

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

platform

平台: 所有

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

另请参阅

另请参阅

ansible.builtin.assert

断言给定的表达式为真。

ansible.builtin.fail

使用自定义消息失败。

示例

- name: Print the gateway for each host when defined
  ansible.builtin.debug:
    msg: System {{ inventory_hostname }} has gateway {{ ansible_default_ipv4.gateway }}
  when: ansible_default_ipv4.gateway is defined

- name: Get uptime information
  ansible.builtin.shell: /usr/bin/uptime
  register: result

- name: Print return information from the previous task
  ansible.builtin.debug:
    var: result
    verbosity: 2

- name: Display all variables/facts known for a host
  ansible.builtin.debug:
    var: hostvars[inventory_hostname]
    verbosity: 4

- name: Prints two lines of messages, but only if there is an environment value set
  ansible.builtin.debug:
    msg:
    - "Provisioning based on YOUR_KEY which is: {{ lookup('ansible.builtin.env', 'YOUR_KEY') }}"
    - "These servers were built using the password of '{{ password_used }}'. Please retain this for later use."

作者

  • Dag Wieers (@dagwieers)

  • Michael DeHaan