Score:1

Ansible เรียกใช้งานบนโฮสต์อื่นที่ไม่ใช่ในเครื่อง

ธง kr

ฉันมี playbook ที่ใช้งานได้ซึ่งทำงานบน localhost ฉันต้องเรียกใช้งานบางอย่างซึ่งเรียกใช้ภายใน playbook ของฉันบนโฮสต์อื่น (กลุ่มอื่น) เป็นไปได้หรือไม่ที่จะระบุในงานว่างานนี้ควรใช้การเชื่อมต่ออื่นซึ่งตรงข้ามกับโลคัลซึ่งใช้งานโดยงานและบทบาทอื่นทั้งหมด

role1: (ทำงานบน localhost)
- งาน 1
- งานที่ 2
- include_role:role2
  task_from: task4 (ควรทำงานบนกลุ่มคอนโทรลเลอร์)
บทบาทที่ 2:
- งานที่ 4
- งาน 5

เป็นไปได้ไหมที่จะบรรลุสถานการณ์นี้โดยไม่ต้องเรียกใช้ playbooks สองเล่ม

นี่เป็นส่วนหนึ่งของงานเจนกินส์ และฉันทำสองทริกเกอร์เพื่อเรียกใช้ ansible playbooks แยกกัน ซึ่งฉันต้องการทำภายในบทบาทที่ 1

Score:1
ธง br

ถาม: "เป็นไปได้ไหมที่จะบรรลุสถานการณ์นี้โดยไม่ต้องเรียกใช้ playbooks สองเล่ม"

ก. ใช่. มันเป็นไปได้. แบ่ง playbook ออกเป็นบทละคร เช่น

- โฮสต์: localhost
  งาน:
    - include_role:
        ชื่อ: หน้าที่1
        งาน_จาก: งาน1
    - include_role:
        ชื่อ: หน้าที่1
        งาน_จาก: งาน2
- โฮสต์: กลุ่มควบคุม
  งาน:
    - include_role:
        ชื่อ:บทบาท2
        งาน_จาก: งาน4
- โฮสต์: localhost
  งาน:
    - include_role:
        ชื่อ:บทบาท2
        งาน_จาก: งาน4
    - include_role:
        ชื่อ:บทบาท2
        งาน_จาก: งาน5
br flag
ดู [อะไรคือความคิดเห็น และเมื่อใดที่ฉันไม่ควรแสดงความคิดเห็น](https://meta.stackexchange.com/questions/19756/how-do-comments-work)
Score:0
ธง bo

ฉันขอแนะนำให้คุณดูคำถามก่อนหน้านี้ https://stackoverflow.com/questions/32627624/ansible-how-to-run-task-on-other-host-inside-one-playbook

https://medium.com/opsops/ansible-2-5-delegate-to-and-include-role-20cd7e67008e อาจช่วยคุณได้เช่นกัน

โพสต์คำตอบ

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