Score:1

จะแทนที่ตัวแปร playbook ansible ได้อย่างไร

ธง br

ฉันมี playbook คล้ายกับด้านล่างซึ่งใช้ ฐาน_acl ตัวแปร. มาแกล้งกันเถอะ base_acl: "default_acl.j2. ฉันมีโฮสต์ที่ฉันต้องการใช้ที่แตกต่างกัน ฐาน_acl ค่าสำหรับ. ฉันได้มองข้าม ลำดับความสำคัญที่ชัดเจน เอกสารและไม่เห็นวิธีการทำเช่นนี้นอกจากการใช้ --extra-วาร์ บนบรรทัดคำสั่งที่ฉันไม่ต้องการทำ

ฉันได้ลองกำหนด ฐาน_acl ใน host_vars ไฟล์ (ควรมีความสำคัญสูงกว่าตามลิงค์ด้านบนหรือไม่) สำหรับโฮสต์ที่เป็นปัญหา อย่างไรก็ตาม play ยังคงพิมพ์ "playbook" สำหรับค่าตัวแปรเมื่อเรียกใช้

มีวิธีบอก ansible ให้ host_vars มีความสำคัญเหนือตัวแปร playbook หรือไม่

---
- โฮสต์: ทั้งหมด
  Gather_facts: ไม่
  วาร์:
    base_acl : "เพลย์บุ๊ค"
    
  งาน:
  - แก้ปัญหา: msg="ตัวแปรคือ {{ base_acl }}"
Score:1
ธง fr

ฉันได้ลองกำหนด base_acl ในไฟล์ host_vars (ควรมีลำดับความสำคัญสูงกว่าตามลิงก์ด้านบนหรือไม่) สำหรับโฮสต์ที่เป็นปัญหา แต่การเล่นยังคงพิมพ์ "playbook" สำหรับค่าตัวแปรเมื่อเรียกใช้

จากลิงค์ที่คุณอ้างถึงในคำถามของคุณ:

...
8Â Â - ไฟล์สินค้าคงคลังหรือ vars โฮสต์สคริปต์
9Â Â - สินค้าคงคลัง host_vars/*
10Â - เพลย์บุ๊ก host_vars/*
11Â - ข้อมูลโฮสต์ / แคช set_facts
12Â - เล่น vars
...
22 - vars พิเศษ (เช่น -e "user=my_user")(ชนะเสมอ)

ดังนั้น เนื่องจากหมายเลขสูงสุดจะเป็นผู้ชนะ และรายการที่เกี่ยวข้องกับโฮสต์ทั้งหมด (8 ถึง 11) มีจำนวนน้อยกว่า 12 ข้อความของคุณจึงไม่ถูกต้อง การประเมินที่ถูกต้องเพียงอย่างเดียวคือ var พิเศษจะแทนที่ทุกอย่างเสมอ

มีหลายวิธีในการบรรลุสิ่งที่คุณกำลังมองหา แต่ในสถานการณ์ของคุณ นี่คือสิ่งที่ฉันจะทำ

  1. ลบรายการ play var ใน playbook ของคุณ
  2. ใส่ค่าเริ่มต้นใน group_vars/all.yml (ทั้งในระดับสินค้าคงคลังหรือ playbook):
    base_acl: "คู่มือการเล่น"
    
  3. แทนที่ค่าเริ่มต้นสำหรับทุกโฮสต์ที่เกี่ยวข้องใน host_vars/<your_host>.yml (ทั้งในระดับสินค้าคงคลังหรือ playbook):
    base_acl: "แทนที่ค่า"
    

โปรดทราบว่าวิธีข้างต้นจะใช้แทนค่าดีฟอลต์สำหรับกลุ่มใดกลุ่มหนึ่งได้เช่นกัน group_vars/<your_group>.yml (ทั้งในระดับสินค้าคงคลังหรือ playbook)

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา