ถาม: "ระบุสองรายการโดยใช้ with_nested"
ตอบ: ตัวอย่างเช่น
- แก้ปัญหา:
ข้อความ: "{{ item.0 }} {{ item.1 }}"
with_nested:
- "{{ ค้นหา ('ไฟล์', 'user.yml').splitlines() }}"
- "{{ ค้นหา ('ไฟล์', 'group.yml').splitlines() }}"
ให้
ข้อความ: user1 group1
ข้อความ: user1 group2
ข้อความ: user1 group3
ข้อความ: user2 group1
ข้อความ: user2 group2
ข้อความ: user2 group3
ข้อความ: user3 group1
ข้อความ: user3 group2
ข้อความ: user3 group3
ผลลัพธ์เดียวกันให้ ท่อ ปลั๊กอินการค้นหา เช่น
- แก้ปัญหา:
ข้อความ: "{{ item.0 }} {{ item.1 }}"
with_nested:
- "{{ lookup('pipe', 'cat user.yml').splitlines() }}"
- "{{ lookup('pipe', 'cat group.yml').splitlines() }}"
ค้นหาปลั๊กอิน "... เช่นเดียวกับเทมเพลตทั้งหมด การค้นหาดำเนินการและได้รับการประเมินในเครื่องควบคุม Ansible"
หากไฟล์ถูกจัดเก็บไว้ในรีโมตโฮสต์ เช่น
เชลล์> ssh admin@test_11 cat user.yml
ผู้ใช้1
ผู้ใช้2
ผู้ใช้3
เชลล์> ssh admin@test_11 cat group.yml
กลุ่ม1
กลุ่ม2
กลุ่มที่ 3
อ่านไฟล์จากรีโมตโฮสต์ก่อน เช่น
- โฮสต์: test_11
งาน:
- คำสั่ง: cat user.yml
ลงทะเบียน: result_user
- คำสั่ง: cat group.yml
ลงทะเบียน: result_group
- แก้ปัญหา:
ข้อความ: "{{ item.0 }} {{ item.1 }}"
with_nested:
- "{{ result_user.stdout_lines }}"
- "{{ result_group.stdout_lines }}"
ให้ผลลัพธ์เหมือนกัน
ข้อความ: user1 group1
ข้อความ: user1 group2
ข้อความ: user1 group3
ข้อความ: user2 group1
ข้อความ: user2 group2
ข้อความ: user2 group3
ข้อความ: user3 group1
ข้อความ: user3 group2
ข้อความ: user3 group3