如何停止在 home 目录中创建. retry 文件?

当安赛尔在与主机对抗时出现问题时,它会将主机的名称输出到用户主目录中的一个文件中,该文件以’结尾。重试。它们通常不会被使用,只会造成混乱,有没有办法将它们关闭或放到不同的目录中?

50007 次浏览

您可以将两个选项添加到 ansible.cfg 文件的[ default ]部分,以控制是否。重试文件的创建位置。

[defaults]
...
retry_files_enabled = True  # Create them - the default
retry_files_enabled = False # Do not create them


retry_files_save_path = "~/" # The directory they will go into
# (home directory by default)

您可以通过修改可变配置文件来禁用在可变中创建重试文件。

[defaults]
...
retry_files_enabled = False

可视化查找配置文件如下所示

  1. ./ansible.cfg
  2. ~/. ansible.cfg
  3. /etc/anable/ansible.cfg

确保将更改添加到适当的配置文件中。

有趣的是,我在重试文件中也遇到过类似的问题,但是由于我和整个团队一起工作,所以我宁愿不碰这个配置。

相反,我决定从剧本中删除重试文件,将其作为运行的一部分:

#Clean up the admin node - basic housekeeping
- hosts:
- admin
gather_facts: no


tasks:
- name: remove retry file
file:
path: "\{\{ item }}"
state: absent
with_fileglob:
- "\{\{playbook_dir}}/*.retry"

你也可以把重试文件的环境变量设置为 0:

$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-playbook ...

取消注释默认 ansible.cfg文件中的行 到

retry_files_enabled = True
retry_files_save_path = ~/.ansible-retry