2015-09-09 6 views
10

कुछ उत्तरदायी आदेश जेसन आउटपुट उत्पन्न करते हैं जो मनुष्यों के लिए मुश्किल से पठनीय है। यह लोगों को परेशान करता है जब उन्हें यह जांचने की आवश्यकता होती है कि प्लेबुक सही तरीके से निष्पादित है या भ्रम का कारण बनता है।विशिष्ट उत्तरदायी आदेशों से जेसन आउटपुट को कैसे अक्षम करें?

उदाहरण कमांड shell और replace - वे बहुत बेकार शोर उत्पन्न करते हैं। मेरे द्वारा इसे कैसे रोका जा सकता है? सरल ठीक है बदल गया असफल पर्याप्त है। मुझे पूरे JSON की आवश्यकता नहीं है।

उत्तर

15

उन कार्यों पर no_log: True का उपयोग करें जहां आप सभी आगे के आउटपुट को दबाना चाहते हैं।

- shell: whatever 
    no_log: True 

मेरा मानना ​​है कि इस सुविधा का ही उल्लेख FAQ के भीतर है।

उदाहरण प्लेबुक:

- hosts: 
    - localhost 
    gather_facts: no 
    vars: 
    test_list: 
     - a 
     - b 
     - c 

    tasks: 
    - name: Test with output 
     shell: echo "{{ item }}" 
     with_items: test_list 

    - name: Test w/o outout 
     shell: echo "{{ item }}" 
     no_log: True 
     with_items: test_list 

उदाहरण आउटपुट:

TASK: [Test with output] ****************************************************** 
changed: [localhost] => (item=a) 
changed: [localhost] => (item=b) 
changed: [localhost] => (item=c) 

TASK: [Test w/o outout] ******************************************************* 
changed: [localhost] 
changed: [localhost] 
changed: [localhost] 
+0

काम करने के लिए प्रतीत नहीं होता। मैं 'ansible-playbook 2.0.0' और' no_log का उपयोग कर रहा हूं: True' का 'shell', 'copy' और' replace' आदेशों पर कोई प्रभाव नहीं पड़ता है। संकेत यह हो सकता है कि मैं इन सभी आदेशों के लिए 'with_items' का उपयोग करता हूं। – SiliconMind

+0

खैर, 2.0.0 एक अल्फा रिलीज है। मैंने उपरोक्त एक उदाहरण जोड़ा और यह Ansible 1.9.2 – udondan

+0

के साथ काम करता है ऐसा लगता है कि v 2.0.0-0.3.beta1 संदेश आउटपुट की बात करते समय अधिक मानव अनुकूल तरीके से व्यवहार करता है। – SiliconMind

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