2017-11-29 49 views
5

मेरे पास कई मशीनों पर ansible प्लेबुक चल रहा है। कि प्लेबुक में मैं कुछ संकुल मैं apt का उपयोग कर स्थापित करने के लिए कोशिश कर रहा हूँ है, लेकिन कभी-कभी वे असफल हो, क्योंकि या तो अन्य playbooks चल रहे हैं, एक आवधिक अद्यतन या किसी अन्य apt उदाहरण समानांतर में चल रहा है और ताला हथियाने।अगर यह विफल रहता है तो 'apt' कार्य को पुनः प्रयास करने के लिए मैं उत्तरदायी कैसे बल दूं?

मैं मूल रूप से देने से पहले एक पुनः प्रयास पाश जोड़ना चाहते हैं, लेकिन जैसा कि पुनर्प्रयास apt लिए समर्थित नहीं है ऐसा करने में विफल, जाहिरा तौर पर: मैं ansible's documentation में apt module पेज में देखा, और यहां तक ​​कि भले ही यह है वास्तव में इसका इस्तेमाल करने की कोशिश की वहां नहीं (जो स्पष्ट रूप से असफल रहा)।

वैसे भी - मैं कैसे के 30 सेकंड देरी के साथ 3 बार, मान लीजिए के लिए फिर से प्रयास करना ansible पाने के लिए पर एक विचार की जरूरत है, लेकिन केवल विफलताओं पर पैकेज स्थापित करने के लिए।

+0

जोड़ना डेटा: मैं उपयुक्त (खरोज में याद किया 2 रिक्त स्थान) पर पुनः और देरी करने के लिए एक रास्ता मिल गया, लेकिन अभी भी याद आ रही है यह जानने के लिए कि एपीटी कैसे सफल हुआ। मैंने सोचा कि आरसी की जांच 0 पर्याप्त होगी, यह नहीं है। क्या मैं खाली होने के लिए stderr पर भरोसा कर सकते हैं? –

उत्तर

6

सार्वभौमिक task results tests रहे हैं, तो आप उपयोग कर सकते हैं:

- apt: 
    name: build-essential 
    state: present 
    register: apt_res 
    retries: 5 
    until: apt_res | success 
संबंधित मुद्दे

 संबंधित मुद्दे