debugging - 如何在调试模块中省略默认消息
问题描述
- name:
debug:
with_items: "{{ result.stdout }}"
TASK [pvc_precheck : check_rpm_versionlock warning message] ********************
skipping: [ip]
{
"msg": "Hello world!"
}
不知何故遇到了这个测试用例。在这里,当我在 Ansible 中运行此代码时,得到了输出但默认消息也在打印"Hello world!"
我如何省略此默认消息,我也不想要任何自定义消息,只需执行它就足够了。
解决方案
问:“也不想要任何自定义消息。执行就足够了。 ”
A:如果“只执行就足够了”,请使用meta:noop例如下面的任务只是默默地什么都不做
- meta: noop
笔记
1.模块调试不需要参数
无法使调试不显示任何内容。这没有任何意义。当您不想看到任何内容时,为什么要运行调试?没有参数是强制性的。msg
默认为"Hello world!"
和var
默认为0
例如
- debug:
给
msg: Hello world!
2.条件
如果您想跳过debug
(消除消息),请使用条件,例如
- debug:
msg: "{{ result.stdout }}"
when: debug_enable|default(false)|bool
3.未定义的变量
如果变量可能未定义,则可以跳过任务,例如
- debug:
msg: "{{ result.stdout }}"
when: result.stdout is defined
,或显示默认值,例如
- debug:
msg: "{{ result.stdout|default('NOT DEFINED') }}"
推荐阅读
- amazon-web-services - 为什么我在尝试将 SNS 触发器添加到我的 AWS Lambda 函数时会收到错误消息?
- python - 在 Python 中使用数组更快的 for 循环
- r - 特定行的 R 平均值
- ios - 在 Realm Swift 对象模型上更改主键属性名称
- javascript - 如何将 AddEventListener 应用于创建的元素?
- c++ - 为什么在使用 boost rtree 最近查询时会出现编译错误?
- javascript - 此 Firebase onAuthStateChanged 如何在此代码中工作
- java - 如何在 AnyLogic 中选择通过网络中另一个代理连接的最近代理?
- javascript - 在 javascript 中从数据库中操作 CQL 参数
- inheritance - Odoo - 视图中的多级继承