Score:0

เปลี่ยนรูปแบบ / เอาต์พุต diff ใน Ansible หรือไม่ คำสั่ง diff ภายนอก?

ธง bg

เมื่อใช้ --ความแตกต่าง ใน Ansible (ที่นี่ v2.11) มันแสดงให้ฉันเห็นความแตกต่างของการเปลี่ยนแปลง ฉันต้องการเปลี่ยนรูปแบบผลลัพธ์ของสิ่งนั้น เป็นไปได้ไหมที่จะบอกให้ใช้คำสั่งภายนอกเพื่อสร้าง diff string/output?

Score:1
ธง cn

การแก้ไขเมธอด diff ของ Ansible ต้องมีการเปลี่ยนแปลงโค้ด

ค่าสำหรับ ความแตกต่าง คำสั่ง การส่งคืนเป็นความรับผิดชอบของแต่ละโมดูล อีเธอร์ ก่อน และ หลังจาก คีย์ที่มีการแสดงข้อความแบบเต็มของรัฐ ไลน์อินไฟล์ คือตัวอย่างนี้ หรือ เตรียมไว้ คีย์ที่โมดูลทำ diff เอง เช่น what the คอมไพล์ โมดูลไม่

ไม่มีวิธีวัตถุประสงค์ทั่วไปในการเปลี่ยนวิธี diff ที่เตรียมไว้สำหรับโมดูล เป็นสคริปต์ diffutils หรือ Python difflib หรืออะไรก็ตาม พิจารณาการเขียน diff wrapper ทั่วไปเป็น module_utils รหัสหากคุณต้องการให้สิ่งนี้เป็นตัวเลือกทุกที่

ปลั๊กอินการโทรกลับทำบางอย่างกับเอาต์พุตส่วนต่างนี้ การโทรกลับเริ่มต้นจะพิมพ์ส่วนต่าง การเรียกกลับเกือบทั้งหมดที่อ้างถึงส่วนต่างที่ใช้ CallbackBase._get_diffซึ่งจะใช้ประโยชน์จาก Python difflib เพื่อเปรียบเทียบ ก่อน และ หลังจาก.

หากต้องการเปลี่ยน stdout ให้เขียนปลั๊กอินการเรียกกลับ ซึ่งอาจจัดประเภทย่อยของปลั๊กอินเริ่มต้นและแทนที่เมธอด v2_on_file_diff.


สิ่งที่แตกต่างสำหรับฉันคือการบริโภคของมนุษย์ พิมพ์สีและสวยงามภายในเอาต์พุตอื่นๆ จำนวนมาก ส่วนต่างที่แยกวิเคราะห์ได้ของเครื่องอาจง่ายกว่าที่จะได้รับจากฐานข้อมูลเมื่อเวลาผ่านไป เช่น Ansible playbooks ของคุณในการควบคุมเวอร์ชัน

โพสต์คำตอบ

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