Ansible正在跳过debug行。

14

我在一个角色中有这个任务,并且在它下面有一行调试代码:

- name: Restore bootstrap DB
  command: "mongorestore -v --host localhost:{{ mongodb_net.port }} -d {{ item.dbname }} --dir {{ item.clone_dir }}"
  register: restore_result
  with_items:
    - { dbname: "{{ mongodb_db1_dbname }}", clone_dir: "/var/tmp/db_bootstrap/DB1_CLONE" }
    - { dbname: "{{ mongodb_db2_dbname }}", clone_dir: "/var/tmp/db_bootstrap/DB2_CLONE" }

- debug: var=restore_result verbosity=2

但它跳过了调试任务。

TASK [mongodb : Restore bootstrap DB] ***************************************************
changed: [xx.xx.xx.167] => (item={u'dbname': u'DB1', u'clone_dir': u'/var/tmp/db_bootstrap/DB1'})
changed: [xx.xx.xx.167] => (item={u'dbname': u'DB2', u'clone_dir': u'/var/tmp/db_bootstrap/DB2'})

TASK [mongodb : debug] ******************************************************************
skipping: [xx.xx.xx.167]
当我启用详细模式 -vv 时,它会显示已注册变量的内容。
我正在使用 Ansible 版本 2.4.3
1个回答

24

2.4.3版本缺少一个功能,无法显示跳过原因。此功能已在2.6.1中添加;我将版本升级到2.6.1,并查看了该原因:

TASK [mongodb : debug] ********************************************************************************
skipping: [xx.xx.xx.167] => {"skipped_reason": "Verbosity threshold not met."}

所以我从任务中删除了 verbosity=2 ,现在它按预期工作。


1
把我逼疯了。遇到了完全相同的问题。删掉冗长的代码行后,问题得以解决。 - samba2
对我来说,verbosity=2也是个问题。我把它移除后,就不再跳过任务了。 - trouble_bucket

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接