我的剧本的输出总是被关于哪些任务被跳过的无用输出完全淹没,这使得浏览和查找我正在寻找的特定信息变得烦人且耗时。
这是一个剧本的例子
- name: Stopping Puppet Agent
service: name=pe-puppet state=stopped
ignore_errors: true
register: result
- include: rollback/restart-pe-puppet.yml
when: result|failed
Run Code Online (Sandbox Code Playgroud)
以及相关的输出:
TASK: [name | Stopping Puppet Agent] **************************************
<server.name> REMOTE_MODULE service name=pe-puppet state=stopped
changed: [server.name] => {"changed": true, "name": "pe-puppet", "state":"stopped"}
TASK: [name | judge_log msg='Restarting pe-puppet'] ***********************
skipping: [server.name]
TASK: [name | starting pe-puppet] *****************************************
skipping: [server.name]
TASK: [name | judge_log msg='pe-puppet restart successful'] ***************
skipping: [sserver.name]
TASK: [name | judge_log msg='pe-puppet restart failed' sec=FATAL] *********
skipping: [server.name]
TASK: [name | fail msg="Failed to start pe-puppet."] **********************
skipping: [server.name]
TASK: [name | judge_log msg='{{APP_NAME | capitalize}} deployment failed.'] ***
skipping: [server.name]
TASK: [name | fail msg="The {{APP_NAME | capitalize}} deployment failed."] ***
skipping: [server.name]
Run Code Online (Sandbox Code Playgroud)
几乎所有这些输出对我来说都是无用的。该display_skipped_hosts说,它还是引起了任务标题出现。有没有办法完全省略跳过的任务?
小智 13
我使用另一种方式而不更改任何代码:
Ansible 使用 'default' 回调插件来显示输出,但您可以使用 'skippy' 回调插件代替 'default'。'skippy' 使用 'default' 除了跳过的任务。
要使用“跳过”插件,请在您的 ansible.cfg 文件中添加以下行(或取消注释):
stdout_callback = skippy
Run Code Online (Sandbox Code Playgroud)
要本地化 ansible.cfg,请使用命令:
ansible --version
Run Code Online (Sandbox Code Playgroud)
如果您没有此文件,请从 ansible 源获取示例文件并将其复制到您调用 ansible 的工作文件夹中。
小智 7
现在,该skippy模块已弃用。
ansible.cfg在项目的根目录下创建,并添加以下说明:
[defaults]
display_skipped_hosts = no
Run Code Online (Sandbox Code Playgroud)
您还可以编辑您的全局配置文件/etc/ansible/ansible.cfg。
| 归档时间: |
|
| 查看次数: |
18810 次 |
| 最近记录: |