Ansibleがホストに対するプレイの実行に問題がある場合、ホストの名前をユーザーのホームディレクトリ内の「.retry」で終わるファイルに出力します。これらはしばしば使用されず、単に混乱を招くだけですが、それらをオフにしたり、別のディレクトリに置いたりする方法はありますか?
Ansible.cfgファイルの[defaults]セクションに追加できる2つのオプションがあり、.retryファイルを作成するかどうか、作成する場所を制御します。
[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)
Ansible構成ファイルを変更することにより、ansibleでの再試行ファイルの作成を無効にできます。
[defaults]
...
retry_files_enabled = False
Ansibleは次のように設定ファイルを探します
適切な構成ファイルに変更を追加してください。
環境変数ANSIBLE_RETRY_FILES_ENABLED
を0
に設定して、再試行ファイルをオフにすることもできます。
$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-playbook ...
おもしろいことに、再試行ファイルでも同様の問題がありましたが、チーム全体で作業しているので、構成には触れないほうがいいでしょう。
その代わりに、プレイブック内から実行の一部として再試行ファイルを削除することにしました。
#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"