0Pricing
Ansible Academy · บทเรียน

รองรับโหมดตรวจสอบในโมดูลของคุณ

ทำให้โค้ดแบบกำหนดเองปลอดภัยเมื่อทดลองเรียกใช้

รองรับโหมดตรวจสอบในโมดูลของคุณ เป็นบทเรียน Ansible Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ansible Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน

โหมดตรวจสอบคืออะไร

เมื่อใช้ โหมดตรวจสอบ ผู้ใช้จะเรียกใช้เพลย์บุ๊กด้วย --check เพื่อดูตัวอย่างการเปลี่ยนแปลงล่วงหน้า โดยจะไม่มีการแก้ไขใดเกิดขึ้นจริงบนเครื่องโฮสต์

ansible-playbook site.yml --check

โมดูลของคุณต้องเลือกเปิดใช้

โหมดตรวจสอบไม่ได้ทำงานโดยอัตโนมัติ คุณต้องประกาศว่ารองรับโหมดนี้ เพื่อให้ Ansible ทราบว่าโมดูลของคุณรับรองว่าจะ ไม่มีการเปลี่ยนแปลง ในโหมดนี้

ประกาศบน AnsibleModule

กำหนดค่า supports_check_mode=True เมื่อสร้างโมดูล แฟล็กนี้บอก Ansible ว่าโค้ดของคุณเคารพคำขอให้ทำงานแบบจำลอง

module = AnsibleModule(
  argument_spec=spec,
  supports_check_mode=True)

อ่านค่า module.check_mode

ขณะทำงาน ให้ตรวจสอบ module.check_mode ค่านี้จะเป็น True เมื่อผู้ใช้ส่ง --check และคุณจะเลือกเส้นทางการทำงานตามค่านี้

if module.check_mode:
    module.exit_json(changed=True)

คำนวณ แต่อย่านำไปใช้

ในโหมดตรวจสอบ คุณยังคง คำนวณ ได้ว่าจำเป็นต้องเปลี่ยนแปลงหรือไม่ เพียงหยุดก่อนเขียนสิ่งใดลงในระบบ

รายงานการเปลี่ยนแปลงที่อาจเกิดขึ้น

จบการทำงานก่อนกำหนดพร้อมค่า changed ที่ถูกต้อง เพื่อให้ตัวอย่างการทำงานแบบจำลองตรงตามความเป็นจริง แม้ว่าจะยังไม่มีอะไรเกิดขึ้น

if module.check_mode:
    module.exit_json(changed=needs_change)

การอ่านปลอดภัยเสมอ

การรวบรวมสถานะปัจจุบันทำได้ในโหมดตรวจสอบ เพราะการอ่านไม่ทำให้เกิดการเปลี่ยนแปลง มีเพียงขั้นตอน การเขียน เท่านั้นที่ต้องข้ามไป

การลืมเรื่องนี้เป็นอันตราย

หากคุณไม่รองรับโหมดตรวจสอบ โมดูลของคุณอาจ ยังคงแก้ไข เครื่องโฮสต์ระหว่างการทำงานแบบจำลอง ซึ่งขัดกับความคาดหวังของผู้ใช้

จำลองตรรกะของการทำงานจริง

การตรวจจับการเปลี่ยนแปลงในโหมดตรวจสอบควรตรงกับการทำงานปกติทุกประการ ตัวอย่างที่ไม่ถูกต้องย่อมแย่กว่า ไม่มีตัวอย่าง เสียอีก

ทดสอบทั้งสองเส้นทาง

เรียกใช้โมดูลทั้งแบบมีและไม่มี --check ยืนยันว่าการทำงานแบบจำลองรายงานผล changed เดียวกัน แต่ไม่แตะต้องระบบ

โหมดตรวจสอบสร้างความไว้วางใจ

โมดูลที่รองรับ โหมดตรวจสอบ ช่วยให้ทีมดูตัวอย่างได้อย่างปลอดภัยก่อนนำไปใช้ ความประณีตนี้เองที่แยกโมดูลสำหรับทดลองเล่นออกจากโมดูลที่พร้อมใช้งานจริง

ตรวจสอบอย่างรวดเร็ว

ลองนึกย้อนกลับไปว่าโมดูลของคุณต้องทำสองสิ่งใดเพื่อรองรับโหมดตรวจสอบ

ทบทวน

ส่งผ่าน supports_check_mode=True เลือกเส้นทางตาม module.check_mode คำนวณการเปลี่ยนแปลงแต่ข้ามการเขียน และรายงานค่า changed ตามจริง ตอนนี้โมดูลของคุณก็ปลอดภัยสำหรับการทำงานแบบจำลองแล้ว 🔍

คำถามที่พบบ่อย

บทเรียน “รองรับโหมดตรวจสอบในโมดูลของคุณ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “รองรับโหมดตรวจสอบในโมดูลของคุณ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ansible Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “รองรับโหมดตรวจสอบในโมดูลของคุณ”

ทำให้โค้ดแบบกำหนดเองปลอดภัยเมื่อทดลองเรียกใช้ คุณปฏิบัติ Ansible Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ansible Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ansible Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “รองรับโหมดตรวจสอบในโมดูลของคุณ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Ansible Academy นี้ได้ไหม

ได้ บทเรียน Ansible Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เมื่อใดควรสร้างโมดูลแบบกำหนดเอง
  2. AnsibleModule และข้อกำหนดอาร์กิวเมนต์
  3. คืนค่า JSON และรองรับ changed
  4. รองรับโหมดตรวจสอบในโมดูลของคุณ
← กลับไปที่ Ansible Academy