web-dev-qa-db-ja.com

Ansibleがホームディレクトリに.retryファイルを作成しないようにするにはどうすればよいですか?

Ansibleがホストに対するプレイの実行に問題がある場合、ホストの名前をユーザーのホームディレクトリ内の「.retry」で終わるファイルに出力します。これらはしばしば使用されず、単に混乱を招くだけですが、それらをオフにしたり、別のディレクトリに置いたりする方法はありますか?

140
Asfand Qazi

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)
173
Asfand Qazi

Ansible構成ファイルを変更することにより、ansibleでの再試行ファイルの作成を無効にできます。

[defaults]
...
retry_files_enabled = False

Ansibleは次のように設定ファイルを探します

  1. ./ansible.cfg
  2. 〜/ .ansible.cfg
  3. /etc/ansible/ansible.cfg

適切な構成ファイルに変更を追加してください。

56
AnshBikram

環境変数ANSIBLE_RETRY_FILES_ENABLED0に設定して、再試行ファイルをオフにすることもできます。

$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-playbook ...
4
SummerBreeze

おもしろいことに、再試行ファイルでも同様の問題がありましたが、チーム全体で作業しているので、構成には触れないほうがいいでしょう。

その代わりに、プレイブック内から実行の一部として再試行ファイルを削除することにしました。

#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"
2
Lefty G Balogh