जवाबों:
आप पैरामीटर के copy
साथ मॉड्यूल का उपयोग कर सकते हैं content
:
- copy: content="{{ your_json_feed }}" dest=/path/to/destination/file
यहां डॉक्स: कॉपी मॉड्यूल
template:
मॉड्यूल का उपयोग कर सकते हैं और इसे रनटाइम में पंजीकृत चर के साथ भर सकते हैं।
shahash /path/to/file
(नोट 2 रिक्त स्थान के बीच) उत्पन्न करना चाहते हैं और फिर कमांड लाइन ( sha256sum -c shafile
जिससे) के माध्यम से आप क्या उत्पन्न करते हैं, से सत्यापित करें।
जब तक आप बहुत छोटी फाइलें नहीं लिख रहे हैं, आपको शायद टेम्प्लेट का उपयोग करना चाहिए ।
उदाहरण:
- name: copy upstart script
template:
src: myCompany-service.conf.j2
dest: "/etc/init/myCompany-service.conf"
रेमन के उत्तर के आधार पर मैं एक त्रुटि में भागता हूं। JSON में जिन जगहों पर मैंने लिखने की कोशिश की, उन्हें देखने के लिए प्लेबुक में कार्य को बदलकर मुझे इसे ठीक करने की कोशिश की:
- copy:
content: "{{ your_json_feed }}"
dest: "/path/to/destination/file"
अब तक मुझे यकीन नहीं है कि इसकी आवश्यकता क्यों थी। मेरा सबसे अच्छा अनुमान यह है कि इसका कुछ करना था कि कैसे अंसिबल में चर को प्रतिस्थापित किया जाता है और परिणामस्वरूप फ़ाइल को पार्स किया जाता है।
हम सीधे गंतव्य फ़ाइल को dest
अब विकल्प के साथ निर्दिष्ट कर सकते हैं। नीचे दिए गए उदाहरण में, आउटपुट json में संग्रहीत किया गया है/tmp/repo_version_file
- name: Get repository file repo_version model to set ambari_managed_repositories=false
uri:
url: 'http://<server IP>:8080/api/v1/stacks/HDP/versions/3.1/repository_versions/1?fields=operating_systems/*'
method: GET
force_basic_auth: yes
user: xxxxx
password: xxxxx
headers:
"X-Requested-By": "ambari"
"Content-type": "Application/json"
status_code: 200
dest: /tmp/repo_version_file