Score:0

จะลงทะเบียนตัวแปรในบทบาทหนึ่งและใช้ในอีกบทบาทหนึ่งใน Ansible ได้อย่างไร

ธง np

ฉันกำลังพยายามลงทะเบียนตัวแปรในบทบาทหนึ่งแล้วนำไปใช้ในอีกบทบาทหนึ่ง

นี่คือไฟล์ต่าง ๆ ที่ฉันใช้:

playbook.yml

---
- โฮสต์: hostsgroup1
  [...]
  บทบาท:
    - บทบาทที่ 1
- โฮสต์: 127.0.0.1
  การเชื่อมต่อ: ท้องถิ่น
  บทบาท:
    - หน้าที่ 2

บทบาท1/งาน/main.yml

- ชื่อ: ตัวอย่างที่ 1
  [...]
- ชื่อ: ตัวอย่างที่ 2
  เปลือก:
    ตัวแทน qm {{ VM_id }} เครือข่ายรับอินเทอร์เฟซ |grep ที่อยู่ IP |grep '172.20' |grep -oE '((1?[0-9][0-9]?|2[0-4][ 0-9]|25[0-5])\.){3}(1?[0-9][0-9]?|2[0-4][0-9]|25[0-5 ])'
  ลงทะเบียน: var_role1

บทบาท2/งาน/main.yml

- ชื่อ: การเพิ่มเซิร์ฟเวอร์ไปยังป้อมปราการ
  ansible.buildin.debug:
    msg : ทดสอบ {{ var_role1.stdout }}

สำหรับข้อมูล คำสั่งตัวแทน qm ให้ที่อยู่ IP แก่ฉัน และฉันต้องการใช้ในบทบาทที่สอง แต่เห็นได้ชัดว่าตอนนี้มันแสดงข้อผิดพลาดเมื่อฉันเรียกใช้ playbook :

ร้ายแรง: [127.0.0.1]: ล้มเหลว! => {"msg": "งานมีตัวเลือกที่มีตัวแปรที่ไม่ได้กำหนด ข้อผิดพลาดคือ: \"hostvars['proxmoxhosts']\" is undefined\n\nข้อผิดพลาดดูเหมือนจะอยู่ใน '/root/ansible/roles /bastion_add/tasks/main.yml': บรรทัดที่ 3, คอลัมน์ 3 แต่อาจ\nอยู่ที่อื่นในไฟล์ ขึ้นอยู่กับปัญหาทางไวยากรณ์ที่แน่นอน\n\nบรรทัดที่ไม่เหมาะสมคือ:\n\n# ไฟล์งานสำหรับ bastion_add \n- ชื่อ: กำลังเพิ่มเซิร์ฟเวอร์ในป้อมปราการ\n ^ ที่นี่\n"}

โดยสรุป ฉันต้องการใช้ var_role1 ซึ่งลงทะเบียนใน role1 ใน role2

Score:1
ธง in

set_fact ควรทำเคล็ดลับ

- ชื่อ: ตัวอย่างที่ 2
  เปลือก:
    ตัวแทน qm {{ VM_id }} เครือข่ายรับอินเทอร์เฟซ |grep ที่อยู่ IP |grep '172.20' |grep -oE '((1?[0-9][0-9]?|2[0-4][ 0-9]|25[0-5])\.){3}(1?[0-9][0-9]?|2[0-4][0-9]|25[0-5 ])'
  ลงทะเบียน: var_role1
- set_fact:
    var_role1: "{{ var_role1.stdout }}"
Milos Vé avatar
np flag
ฉันต้องเรียกตัวแปรแตกต่างจาก "{{ var_role1.stdout }}" ในบทบาทที่สองหรือไม่ เนื่องจากยังใช้งานไม่ได้กับเคล็ดลับของคุณ
in flag
TBH ฉันไม่ได้ทดสอบจริงๆ แน่นอนว่า `var_role1` ไม่ถูกต้อง `var_role1.stdout` ควรถูกต้อง

โพสต์คำตอบ

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