आप घर की निर्देशिका में .retry फ़ाइलों को बनाने से Ansible को कैसे रोक सकते हैं?


152

जब Ansible को किसी होस्ट के खिलाफ नाटकों को चलाने में समस्या होती है, तो वह उपयोगकर्ता के होम डायरेक्टरी में फ़ाइल के होस्ट के नाम को '.retry' में समाप्त कर देगा। ये अक्सर उपयोग नहीं किए जाते हैं और सिर्फ अव्यवस्था का कारण बनते हैं, क्या इन्हें बंद करने या अलग निर्देशिका में रखने का कोई तरीका है?

जवाबों:


192

दो विकल्प हैं जिन्हें आप ansible.cfg फ़ाइल के [डिफॉल्ट्स] सेक्शन में जोड़ सकते हैं जो कि .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)

8
ध्यान दें कि यह केवल Ansible 1.9 और नए के लिए काम करता है: github.com/ansible/ansible/commit/…
hudolejev

4
ध्यान दें कि रिट्री फाइल्स Ansible 2.8 से शुरू होने वाली डिफ़ॉल्ट रूप से नहीं बनाई गई हैं: docs.ansible.com/ansible/latest/porting_guides/…
स्लाव सेमुशिन

62

आप ansible कॉन्फ़िगरेशन फ़ाइल को संशोधित करके पुनर्प्राप्ति फ़ाइल की रचना को अक्षम कर सकते हैं।

[defaults]
...
retry_files_enabled = False

निम्नानुसार कॉन्फ़िगरेशन फ़ाइल के लिए Ansible दिखता है

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

अपने परिवर्तनों को उचित कॉन्फिग फ़ाइल में जोड़ना सुनिश्चित करें।


9

तुम भी एक वातावरण चर सेट करके बंद पुन: प्रयास करें फ़ाइलें बदल सकते हैं ANSIBLE_RETRY_FILES_ENABLEDकरने के लिए 0:

$ ANSIBLE_RETRY_FILES_ENABLED=0 ansible-playbook ...

1

काफी मजेदार है, मेरे पास रिट्री फ़ाइल के साथ एक समान मुद्दा था, लेकिन जैसा कि मैं पूरी टीम के साथ काम कर रहा हूं, मैं कॉन्फिग को नहीं छूऊंगा।

इसके बजाय मैंने जो करने का फैसला किया वह प्लेबुक के भीतर से रन के हिस्से के रूप में रिट्री फाइल (एस) को हटाने के लिए था:

#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"

मुझे लगता है कि विशेष रूप से एक टीम में, एक सामान्य और समझदार विन्यास का उपयोग करना इस तरह से काम करने की तुलना में बहुत बेहतर है, जो थोड़े विन्यास भी है, लेकिन कम स्पष्ट है।
एक्सल बेकर्ट

1
तुम सही हो। यह निश्चित रूप से समय के लिए नहीं है जब आप इसे ठीक से कर सकते हैं। जब आप 7 अलग-अलग टीमों में 10 अलग-अलग प्रबंधकों के साथ टीम में 27 अन्य लोग होते हैं, तो यह हताशा से बाहर हो गया ...
लेफ्टी जी बालोघ

-1

डिफॉल्ट ansible.cfgफ़ाइल में लाइनों को अनलॉक करें

retry_files_enabled = True
retry_files_save_path = ~/.ansible-retry

यह केवल अव्यवस्था को कहीं और ले जाता है।
एक्सल बेकर्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.