Woodpecker CI 3.19 อัปเกรดระบบบังคับใช้ Agent Labels

· By: NatapolK

Woodpecker CI แพลตฟอร์ม CI/CD แบบ self-hosted ขนาดเบาที่รองรับการทำงานร่วมกับ GitHub, GitLab, Gitea และ Forgejo ได้ประกาศเปิดตัวเวอร์ชัน 3.19 อย่างเป็นทางการ โดยเน้นการยกระดับความปลอดภัยและการจัดการทรัพยากรที่มีประสิทธิภาพกว่าเดิม

การเปลี่ยนแปลงที่สำคัญที่สุดในรุ่นนี้คือการปิดช่องโหว่ความปลอดภัยที่อาจยอมให้มีการแทรกตัวแปรสภาพแวดล้อมแบบ matrix เข้าไปในขั้นตอนการ clone repository เริ่มต้น นอกจากนี้ทีมพัฒนายังได้ปรับปรุงระบบการล้างข้อมูลลับ (secret sanitization) ระหว่างการรัน pipeline ผ่าน CLI เพื่อป้องกันไม่ให้ข้อมูลสำคัญหลุดไปปรากฏใน log

ในด้านฟีเจอร์ใหม่ Woodpecker เพิ่มการรองรับ server-enforced agent labels ซึ่งช่วยให้ผู้ดูแลระบบควบคุมการระบุตัวตนและมอบหมายงานให้ build agent ได้แม่นยำขึ้น พร้อมเพิ่มตัวแปรสภาพแวดล้อมรันไทม์ใหม่อย่าง CI_AGENT_ID และ CI_AGENT_LABELS เพื่อดึงข้อมูลของ agent มาใช้ระหว่างรัน pipeline ได้ทันที

นอกจากนี้ยังมีการเพิ่มความยืดหยุ่นด้วยการรองรับเส้นทาง shell แบบกำหนดเอง (custom shell paths) ใน local backend สำหรับการรัน pipeline บน host โดยตรง รวมถึงการแนะนำระบบ user namespace เริ่มต้นที่รองรับการตั้งค่า override แบบ non-root เพื่อความปลอดภัยในการใช้งานที่สูงขึ้น

ระบบจัดการ Pipeline ได้รับการปรับปรุงหลายจุด โดยเฉพาะการจัดเก็บความสัมพันธ์ระหว่าง workflow และ step ไว้ในฐานข้อมูลเพื่อให้เรียกใช้ผ่าน API ได้สะดวกขึ้น ขณะที่ส่วนแสดงรายการ agent ได้เพิ่มระบบแบ่งหน้า (pagination) เพื่อรองรับการจัดการ agent จำนวนมาก

สำหรับการแก้ไขบั๊ก Woodpecker CI 3.19 ได้แก้ปัญหา log ของ step หายเมื่อมี workflow ที่ถูกข้าม (skipped workflows) รวมถึงแก้ไขปัญหา race conditions และป้องกันการแครชในกรณีต่างๆ เช่น เมื่อแสดง workflow ที่ไม่มี step หรือเมื่อยกเลิก workflow ใน local backend ก่อนเริ่มทำงาน

การเชื่อมต่อกับ Git hosting ได้รับการปรับปรุงให้เสถียรขึ้น โดย Bitbucket Cloud จะไม่มีปัญหา infinite loop ระหว่างแบ่งหน้า hooks อีกต่อไป ส่วน GitLab ได้รับการแก้ไขการจัดการสถานะ commit และปรับปรุงระบบการรีเฟรช OAuth token ให้มีความถูกต้องแม่นยำยิ่งขึ้น

สำหรับผู้ใช้ Kubernetes ได้มีการแก้ไขปัญหา workspace volume ไม่ตรงกันเมื่อรันผ่าน CLI และปรับปรุงการทำงานของ informer cache ส่วนการเปลี่ยนแปลงอื่นๆ ได้แก่ การปิดคำสั่ง AutoRun ของ Windows cmd.exe ระหว่างรันแบบ local, การอัปเดตไปใช้ Go 1.27 และการอัปเดต dependencies ต่างๆ ให้เป็นปัจจุบัน

ผู้ที่สนใจสามารถตรวจสอบรายละเอียดการเปลี่ยนแปลงทั้งหมดได้ที่ release notes

Source: Linuxiac
ดูแลงานแปลและเรียบเรียงโดย NatapolK
Woodpecker CI 3.19 อัปเกรดระบบบังคับใช้ Agent Labels

ความคิดเห็น (0)

เข้าสู่ระบบเพื่อร่วมแสดงความเห็น

สมัครสมาชิก

มาเป็นคนแรกที่แสดงความเห็นกันเลยโบร