Làm thế nào để bạn ngăn Ansible tạo các tệp .retry trong thư mục chính?


152

Khi Ansible gặp sự cố khi chạy đối với máy chủ, nó sẽ xuất tên của máy chủ thành tệp trong thư mục chính của người dùng kết thúc bằng '.retry'. Chúng thường không được sử dụng và chỉ gây ra sự lộn xộn, có cách nào để tắt hoặc đặt chúng vào một thư mục khác không?

Câu trả lời:


192

Có hai tùy chọn mà bạn có thể thêm vào phần [mặc định] của tệp ansible.cfg sẽ kiểm soát xem các tệp .retry có được tạo hay không và chúng được tạo ở đâu.

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

8
Lưu ý rằng điều này chỉ hoạt động cho Ansible 1.9 và mới hơn: github.com/ansible/ansible/commit/
mẹo

4
Lưu ý rằng các tệp thử lại không được tạo theo mặc định bắt đầu từ Ansible 2.8: docs.ansible.com/ansible/latest/porting_guides/ Kẻ
Slava Semushin

62

Bạn có thể vô hiệu hóa việc tạo tệp thử lại trong ansible bằng cách sửa đổi tệp cấu hình ansible.

[defaults]
...
retry_files_enabled = False

Ansible tìm tệp cấu hình như sau

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

Đảm bảo thêm các thay đổi của bạn vào tệp cấu hình phù hợp.


9

Bạn cũng có thể tắt các tệp thử lại bằng cách đặt biến môi trường ANSIBLE_RETRY_FILES_ENABLEDthành 0:

$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-playbook ...

1

Hài hước lắm, tôi gặp vấn đề tương tự với tệp thử lại, nhưng khi tôi làm việc với cả nhóm, tôi không muốn chạm vào cấu hình.

Thay vào đó, điều tôi quyết định làm là xóa (các) tệp thử lại như một phần của hoạt động từ trong 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"

Tôi nghĩ đặc biệt là trong một nhóm, sử dụng một cấu hình chung và lành mạnh sẽ tốt hơn nhiều so với làm việc theo cách này, đây cũng là một cấu hình khá tốt, nhưng ít rõ ràng hơn.
Axel Beckert

1
Bạn đúng rồi. Điều này chắc chắn không dành cho những lúc bạn có thể làm điều đó đúng cách. Nó trở nên tuyệt vọng khi bạn có 27 người khác trong đội trong 7 đội khác nhau dưới 10 người quản lý khác nhau ...
Lefty G Balogh

-1

Bỏ ghi chú các dòng trong ansible.cfgtệp mặc định thành

retry_files_enabled = True
retry_files_save_path = ~/.ansible-retry

Điều này chỉ di chuyển sự lộn xộn ở nơi khác.
Axel Beckert
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.