Answers:
您可以使用copy
带有content
参数的模块:
- copy: content="{{ your_json_feed }}" dest=/path/to/destination/file
此处的文档:复制模块
template:
模块,并在运行时注册变量。
shahash /path/to/file
(注意之间有2个空格),然后从命令行(通过sha256sum -c shafile
)验证通过Ansible生成的内容时,这样做会更好。
除非编写的文件非常小,否则可能应该使用模板。
例:
- name: copy upstart script
template:
src: myCompany-service.conf.j2
dest: "/etc/init/myCompany-service.conf"
现在,我们可以使用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