Wie verhindern Sie, dass Ansible .retry-Dateien im Home-Verzeichnis erstellt?


150

Wenn Ansible Probleme beim Ausführen von Spielen gegen einen Host hat, gibt es 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 stellen?

Antworten:


190

Es gibt zwei Optionen, die Sie dem Abschnitt [Standardeinstellungen] der Datei ansible.cfg hinzufügen können, um zu steuern, ob .retry-Dateien erstellt werden und wo sie erstellt werden.

[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)

7
Beachten Sie, dass dies nur für Ansible 1.9 und neuer funktioniert: github.com/ansible/ansible/commit/…
hudolejev

3
Beachten Sie, dass Wiederholungsdateien nicht standardmäßig ab Ansible 2.8 erstellt werden: docs.ansible.com/ansible/latest/porting_guides/…
Slava Semushin

60

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

[defaults]
...
retry_files_enabled = False

Ansible sucht wie folgt nach einer Konfigurationsdatei

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

Stellen Sie sicher, dass Sie Ihre Änderungen zur entsprechenden Konfigurationsdatei hinzufügen.


8

Sie können auch die Wiederholungs Dateien deaktivieren , indem Sie eine Umgebungsvariable ANSIBLE_RETRY_FILES_ENABLEDzu 0:

$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-playbook ...

2

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

Stattdessen habe ich beschlossen, 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"

0

Kommentar- der Zeilen in der ansible.cfgStandarddatei

retry_files_enabled = True
retry_files_save_path = ~/.ansible-retry
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.