将 NONE 显示为缺少 ansible_facts 的值

问题描述

我执行了一个剧本来从多个服务器收集 Dollars::operator Cents() const { return Cents(m_dollars / 100); } Cents::operator Dollars() const { return Dollars(m_cents / 100); } int main() { /* ... */ } ,因此创建了一个硬件报告,一些 ansible_facts 不存在(ansible_factsdevices...),我想要将 net_adapters 显示为这些不可用的 NONE 的值,而不是收到阻止我的剧本不停止运行的错误。

解决方法

您可以为此使用 default Jinja 过滤器。

鉴于我没有 net_adapters 的主机上的此剧本

- hosts: localhost

  tasks:  
    - debug: 
        msg: "{{ ansible_facts.net_adapters | default('NONE') }}"

这产生了回顾


TASK [Gathering Facts] *******************************************************************************************
ok: [localhost]

TASK [debug] *****************************************************************************************************
ok: [localhost] => {
    "msg": "NONE"
}

PLAY RECAP *******************************************************************************************************
localhost                  : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...