0Pricing
DevOps Bootcamp · บทเรียน

เรียกใช้งานเฉพาะเมื่อเป็น True

กำหนดให้งานทำงานตามเงื่อนไขบูลีน

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

งานที่ตัดสินใจได้

บางครั้งงานควรทำงานเฉพาะในบางกรณีเท่านั้น คีย์เวิร์ด when จะกำหนดให้งานทำงานตามเงื่อนไขที่คุณเลือก 🚦

คีย์เวิร์ด when

เพิ่ม when ให้กับงานใดก็ได้ หากนิพจน์เป็นจริง งานจะทำงาน หากเป็นเท็จ Ansible จะข้ามงานนั้นและทำงานต่อ

- name: Reboot the box
  ansible.builtin.reboot:
  when: reboot_required

ไม่ต้องใช้เครื่องหมายปีกกาคู่

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

when: ansible_distribution == "Ubuntu"

ตัวแปรที่มีค่าเป็นจริง

ตัวแปรบูลีนแบบง่ายสามารถใช้งานได้โดยตรง หาก install_extras เป็น true งานจะทำงาน มิฉะนั้นจะถูกข้ามไปอย่างเงียบ ๆ

- name: Add extra tools
  ansible.builtin.package:
    name: htop
  when: install_extras

การเปรียบเทียบ

เงื่อนไขสามารถเปรียบเทียบค่าได้ ตัวดำเนินการอย่าง ==, !=, < และ > ช่วยกำหนดให้งานทำงานตามตัวเลขและสตริงได้ ⚖️

when: app_version == "2.0"

ถูกข้ามกับทำงานล้มเหลว

งานที่ถูกข้ามไม่ถือว่าเป็นความล้มเหลว ในผลลัพธ์การทำงาน คุณจะเห็น skipping แทน ok หรือ changed และเพลย์จะทำงานต่อ

การปฏิเสธเงื่อนไข

ใช้ not เพื่อกลับค่าการทดสอบ งานนี้จะทำงานเฉพาะเมื่อบริการยังไม่ได้ติดตั้งอยู่แล้ว

when: not service_installed

มีการกำหนดไว้หรือไม่

คุณสามารถตรวจสอบได้ว่ามีตัวแปรอยู่หรือไม่ การทดสอบ is defined ช่วยป้องกันข้อผิดพลาดจากตัวแปรที่ไม่ได้กำหนด

when: custom_port is defined

when ทำงานแยกตามโฮสต์

แต่ละโฮสต์จะได้รับการประเมินแยกกัน เงื่อนไขหนึ่งอาจเป็นจริงบนเซิร์ฟเวอร์หนึ่งและเป็นเท็จบนอีกเซิร์ฟเวอร์หนึ่งภายใน play เดียวกัน

รักษาเงื่อนไขให้เรียบง่าย

เงื่อนไขที่อ่านง่ายมักเชื่อถือได้ หาก when ยาวเกินไป ให้แยกตรรกะออกเป็นส่วน ๆ หรือใช้ตัวแปรเพื่อสื่อเจตนา

มีเงื่อนไข ไม่ใช่คำสั่งเชิงขั้นตอน

when ช่วยให้เพลย์บุ๊กยังคงเป็นการประกาศเชิงพรรณนา คุณอธิบายกรณีที่ต้องการ แล้ว Ansible จะตัดสินใจแยกตามโฮสต์ ไม่จำเป็นต้องใช้บล็อก if หรือสคริปต์ที่มีการแตกแขนง 🎯

ตรวจสอบความเข้าใจ

มาทบทวนกันว่า when ทำงานอย่างไร

สรุป

คีย์เวิร์ด when จะทำให้งานทำงานก็ต่อเมื่อนิพจน์เป็นจริง หากเป็นเท็จ งานจะถูกข้าม ไม่ใช่ทำงานล้มเหลว และการประเมินจะทำแยกตามโฮสต์ ✅

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

บทเรียน “เรียกใช้งานเฉพาะเมื่อเป็น True” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “เรียกใช้งานเฉพาะเมื่อเป็น True”

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

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

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

บทเรียน “เรียกใช้งานเฉพาะเมื่อเป็น True” ใช้เวลานานแค่ไหน

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

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

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

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

  1. เรียกใช้งานเฉพาะเมื่อเป็น True
  2. แยกแขนงตามข้อเท็จจริงของตระกูล OS
  3. รวมเงื่อนไขด้วย and / or
  4. ลงทะเบียนผลลัพธ์ แล้วจึงตัดสินใจ
← กลับไปที่ DevOps Bootcamp