ceuser@deyu:~/ansible_pb$ wget http://dy.csie.cyut.edu.tw/materials/report.orig
ceuser@deyu:~/ansible_pb$ cat report.orig # Variables report HOST=inventoryhostname MEMORY=memory_in_MB VDA_SIZE=disk_vda_size KERNEL=kernel_version
ceuser@deyu:~/ansible_pb$ vi report.yml
ceuser@deyu:~/ansible_pb$ cat report.yml
- name: Report variables
hosts: test
tasks:
- ansible.builtin.copy:
src: report.orig
dest: /root/report.txt
- ansible.builtin.lineinfile:
path: /root/report.txt
regexp: "^{{item.key}}="
line: "{{item.key}}={{item.value}}"
loop:
- { key: "HOST", value: "{{inventory_hostname}}" }
- { key: "MEMORY", value: "{{ansible_memtotal_mb}}" }
- { key: "VDA_SIZE", value: "{{ansible_devices.vda.size}}" }
- { key: "KERNEL", value: "{{ansible_kernel}}" }
ceuser@deyu:~/ansible_pb$ ansible-playbook report.yml
PLAY [Report variables] ********************************************************
TASK [Gathering Facts] *********************************************************
ok: [kvm12]
TASK [ansible.builtin.copy] ****************************************************
changed: [kvm12]
TASK [ansible.builtin.lineinfile] **********************************************
changed: [kvm12] => (item={'key': 'HOST', 'value': 'kvm12'})
changed: [kvm12] => (item={'key': 'MEMORY', 'value': 1705})
changed: [kvm12] => (item={'key': 'VDA_SIZE', 'value': '6.00 GB'})
changed: [kvm12] => (item={'key': 'KERNEL', 'value': '6.12.0-124.8.1.el10_1.x86_64'})
PLAY RECAP *********************************************************************
kvm12 : ok=3 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
ceuser@deyu:~/ansible_pb$ ansible test -m shell -a "cat /root/report.txt" kvm12 | CHANGED | rc=0 >> # Variables report HOST=kvm12 MEMORY=1705 VDA_SIZE=6.00 GB KERNEL=6.12.0-124.8.1.el10_1.x86_64