LEVEL 4 · ระดับเทพ
เทียบแพลตฟอร์ม & บทสรุป
ตลอดเล่มเราใช้ GitHub Actions เป็นตัวอย่าง แต่ย้ำมาตลอดว่าแนวคิดข้ามแพลตฟอร์มได้ บทสุดท้ายนี้พิสูจน์คำกล่าวนั้น แล้วม้วนทุกอย่างกลับมาเป็นแก่นที่ถือกลับไปใช้ได้จริง
14.1 คำเดียวกัน คนละชื่อ
ทุกแพลตฟอร์มมีลำดับชั้นเดียวกับบทที่ 2 เปลี่ยนแค่คำศัพท์และรูปแบบไฟล์:
| แนวคิด | GitHub Actions | GitLab CI | Jenkins |
|---|---|---|---|
| ไฟล์นิยาม | .github/workflows/*.yml | .gitlab-ci.yml | Jenkinsfile |
| หน่วยรวม | workflow | pipeline | pipeline |
| กลุ่มงาน | job | job (จัดกลุ่มด้วย stage) | stage |
| เครื่องรัน | runner | runner | agent / node |
| ของสำเร็จรูป | action | template / include | plugin / shared library |
นี่คือเหตุผลที่เล่มนี้เน้น "แนวคิด" — เรียนกลไกหนึ่งครั้ง ย้ายแพลตฟอร์มเมื่อไรก็แค่เรียนคำศัพท์ใหม่ ไม่ต้องเรียนวิธีคิดใหม่ CircleCI, Azure Pipelines, Travis และอื่น ๆ ก็เข้าแม่พิมพ์เดียวกันนี้
14.2 หลักปฏิบัติที่ดี — รวมทั้งเล่ม
- เก็บ pipeline ไว้กับโค้ด (pipeline-as-code) เวอร์ชันคู่กัน รีวิวคู่กัน
- เร็วและล้มเร็ว — ด่านถูกอยู่หน้า ขนานงานให้มาก cache ให้พอ
- บังคับด้วยระบบ ไม่ใช่วินัย — branch protection ทำให้ "CI ไม่เขียว = merge ไม่ได้"
- เริ่มที่ Delivery คงปุ่มมนุษย์ไว้ก่อน แล้วค่อยขยับสู่ Deployment เมื่อความเชื่อมั่นพิสูจน์แล้ว
- ถอยได้เสมอ — ไม่ deploy สิ่งที่ rollback ไม่ได้ migration เข้ากันได้สองทาง
- ความปลอดภัยไม่ใช่ของเสริม — pin SHA, least privilege, OIDC, กันโค้ด fork แตะ secret
14.3 บทสรุปทั้งเล่ม — แก่นที่ถือกลับไป
ถ้าจำได้แค่ไม่กี่อย่างจากเล่มนี้ ขอให้เป็นสิ่งเหล่านี้ เพราะทุกเทคนิคงอกออกมาจากมัน:
- CI/CD มีค่าเพราะมัน ย่นวงจรป้อนกลับ — จับปัญหายิ่งเร็ว ยิ่งถูก
- ทุก pipeline คือ event → workflow → job (ขนาน) → step (เรียง) บน runner — โครงเดียวข้ามทุกเครื่องมือ
- CI/CD คือ สามชั้นซ้อนกัน Integration ⊂ Delivery ⊂ Deployment เส้นแบ่งคือ "มีคนกดปุ่มไหม"
- ความปลอดภัยและ ความสามารถถอยกลับ คือสิ่งที่ทำให้ "ปล่อยบ่อย" เป็นเรื่องกล้าทำ ไม่ใช่เรื่องเสี่ยง
- pipeline คือ โค้ด — เวอร์ชัน รีวิว และดูแลมันด้วยมาตรฐานเดียวกับโค้ด production
🧭 เส้นทางต่อจากนี้ — วิธีเก่งขึ้นจริงคือลงมือ: เอา repo ทดลองใส่
ci.ymlง่าย ๆ จากบทที่ 3 แล้วค่อย ๆ เติมทีละชั้น — เพิ่ม matrix, cache, แล้ว deploy ขึ้น environment ฟรีสักที่ จากนั้นลองพังมันดู (ทำเทสต์ให้ตก, ทำ deploy ให้ล้ม) เพื่อเห็นว่า fail loud กับ rollback ทำงานอย่างไร — pipeline ที่คุณเคยทำพังและกู้คืนเอง สอนได้ลึกกว่าทุกคู่มือ
✅ สรุปบทที่ 14 — ทุกแพลตฟอร์มใช้ลำดับชั้นเดียวกัน ต่างแค่คำศัพท์/ไฟล์ — เรียนแนวคิดครั้งเดียวย้ายได้หมด · หลักปฏิบัติ: pipeline-as-code, เร็ว+ล้มเร็ว, บังคับด้วยระบบ, เริ่มที่ Delivery, ถอยได้เสมอ, ความปลอดภัยมาก่อน · แก่น: ย่นวงจรป้อนกลับ · โครง event→job→step · สามชั้น CI/CD · ถอยได้+ปลอดภัย · pipeline คือโค้ด — เท่านี้คุณก็จาก 0 ถึง Hero ของ CI/CD แล้ว
— จบหลักสูตร —
CI/CD 0 → Hero — จาก commit สู่ production อัตโนมัติ · เล่มต่อจาก Git 0 → Hero · เขียนเป็นภาษาไทย พร้อมไดอะแกรมทุกหัวข้อ
วิธีใช้ให้คุ้ม: อ่านไล่ระดับ Level 0–1 ก่อนเพื่อจับแบบจำลองความคิด แล้วลงมือสร้าง pipeline จริงควบคู่ไปทีละบท · ตัวอย่างยึด GitHub Actions แต่ทุกแนวคิดย้ายไป GitLab CI / Jenkins / CircleCI ได้ (บทที่ 14)
ถ้าเนื้อหานี้มีประโยชน์ —เลี้ยงกาแฟสักแก้ว