it-swarm.com.de

Wie können Sie verhindern, dass Ansible .retry-Dateien im Basisverzeichnis erstellt?

Wenn Ansible Probleme hat, Spiele gegen einen Host auszuführen, gibt er den Namen des Hosts in eine Datei im Home-Verzeichnis des Benutzers aus, die auf ".retry" endet. Diese werden oft nicht verwendet und verursachen nur Unordnung, gibt es eine Möglichkeit, sie auszuschalten oder in ein anderes Verzeichnis zu legen?

133
Asfand Qazi

Es gibt zwei Optionen, die Sie zum Abschnitt [Defaults] der Datei ansible.cfg hinzufügen können, mit denen festgelegt wird, ob .retry-Dateien erstellt werden oder nicht.

[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)
160
Asfand Qazi

Sie können die Erstellung einer Wiederholungsdatei in ansible deaktivieren, indem Sie die einstellbare Konfigurationsdatei ändern.

[defaults]
...
retry_files_enabled = False

Ansible sucht die Konfigurationsdatei wie folgt

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

Stellen Sie sicher, dass Sie Ihre Änderungen in die entsprechende Konfigurationsdatei einfügen.

49
AnshBikram

Witzigerweise hatte ich ein ähnliches Problem mit der Wiederholungsdatei, aber da ich mit einem ganzen Team arbeite, möchte ich die Konfiguration lieber nicht berühren. 

Ich entschied mich stattdessen dafür, die Wiederholungsdatei (en) als Teil des Laufs aus dem Playbook zu entfernen:

#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

Sie können die Wiederholungsdateien auch deaktivieren, indem Sie eine Umgebungsvariable ANSIBLE_RETRY_FILES_ENABLED auf 0 setzen:

$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-plybook ...
0
SummerBreeze