2 คะแนน โดย GN⁺ 2023-09-24 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ผู้เขียนเป็นผู้ใช้ GitHub Actions ทุกวันมาตั้งแต่ปี 2019 และชื่นชมฟีเจอร์ใหม่ ๆ เช่น reusable workflows, OpenID Connect, job summaries และการผสานรวมกับ GitHub Mobile
  • อย่างไรก็ตาม ผู้เขียนแสดงความไม่พอใจว่ากระบวนการดีบักใน GitHub Actions ใช้เวลามากและต้องสลับบริบทหลายครั้ง
  • ผู้เขียนเสนอแนวทางปรับปรุง เช่น interactive debugging shell และการตั้งค่าระดับ repository ที่ปฏิเสธ commit ที่มี workflow ซึ่งไม่ถูกต้องอย่างชัดเจน
  • ผู้เขียนยังเน้นปัญหาด้านความปลอดภัยของ GitHub Actions เช่น การเขียน workflow ที่อาจมีช่องโหว่ได้ง่าย และการไม่มีการแยกความแตกต่างระหว่างการอ้างอิง SHA ของ fork กับ non-fork
  • ผู้เขียนเสนอแนวทางแก้ไข เช่น การปฏิเสธตอน push สำหรับ workflow ที่ไม่ปลอดภัย การตรวจสอบ workflow ระหว่างรันไทม์ และการกำหนดขอบเขตสิทธิ์เริ่มต้นของโทเคนให้จำกัดมากขึ้น
  • ผู้เขียนวิจารณ์การขาด type enforcement ใน GitHub Actions ซึ่งนำไปสู่ปัญหาด้านการบำรุงรักษาและความปลอดภัย
  • ผู้เขียนเสนอให้ผู้เขียน action และ workflow สามารถใช้ type: ได้ทุกที่ พร้อมเพิ่มการตรวจสอบชนิดข้อมูลที่เข้มงวดยิ่งขึ้น และรองรับชนิด type: object กับ type: array
  • ผู้เขียนยังต้องการให้ GitHub มี official actions มากขึ้น และร่วมมือกับ action ภายนอกยอดนิยมรายใหญ่เพื่อให้มี quasi-official actions มากขึ้น
  • ผู้เขียนหวังว่าวิศวกรของ GitHub จะรับรู้ปัญหาเหล่านี้ร่วมกันและช่วยกันแก้ไข

1 ความคิดเห็น

 
GN⁺ 2023-09-24
ความคิดเห็นจาก Hacker News
  • บทความกล่าวถึงเวิร์กโฟลว์ GitHub Actions อยู่สองประเภท: การเขียนโปรแกรมด้วย GitHub Actions และการตั้งค่ามันเอง แบบแรกอาจนำไปสู่เวิร์กโฟลว์ที่ซับซ้อนและเข้าใจยาก ส่วนแบบหลังทำให้เวิร์กโฟลว์เรียบง่ายและดูแลรักษาง่ายกว่า
  • ผู้ใช้แสดงความไม่พอใจต่อการขาดแคลนเครื่องมือดีบักที่ Microsoft จัดเตรียมไว้ ซึ่งทำให้เกิดวงจร commit-push-debug ที่ยุ่งยาก พวกเขาเสนอให้ผลักความซับซ้อนของ YAML ไปไว้ในสคริปต์เพื่อให้ดีบักได้ง่ายขึ้น
  • ผู้ใช้บางรายแนะนำให้ใช้เครื่องมืออย่าง Act และ Garden เพื่อแก้ปัญหาการดีบัก และสร้างไปป์ไลน์ที่พกพาได้ซึ่งสามารถรันได้ทุกที่รวมถึงบนเครื่องโลคัล
  • ผู้ใช้วิจารณ์ GitHub Actions เรื่องการทำงานแบบขนานที่ยังไม่ดี การจัดการงานที่อิงคอนเทนเนอร์ได้ไม่ดี และข้อจำกัดด้านขนาดแคช พร้อมทั้งไม่พอใจที่ไม่สามารถรันหลายขั้นตอนแบบขนานบน VM เดียวกันได้
  • ผู้ใช้ชี้ถึงปัญหาด้านความปลอดภัยของ GitHub Actions โดยระบุว่าการไม่สามารถแยกความต่างระหว่างการอ้างอิง SHA ของ fork และ non-fork อาจทำให้ fork เลี่ยงการตั้งค่าความปลอดภัยได้
  • ผู้ใช้บางรายแนะนำให้ใช้ pre-commit.ci เพื่อตรวจสอบและแก้ไขโค้ดก่อนคอมมิต โดยบอกว่ามันทำงานได้รวดเร็วและช่วยแก้ปัญหาการดีบักได้มาก
  • ผู้ใช้ต้องการความสามารถในการแนบรายงาน HTML เข้ากับการรันแอ็กชันโดยไม่ต้องใช้ actions/upload-artifact ในปัจจุบัน และเสนอแอ็กชัน "attach-report" เพื่อวางลิงก์ไปยังรายงาน HTML ในสรุปงาน
  • ผู้ใช้สนับสนุนโปรเจกต์อย่าง Earthly ที่ช่วยให้สามารถรันเวิร์กโฟลว์ CI ทั้งหมดบนเครื่องโลคัลของตนเองได้ และเห็นด้วยว่าสิ่งที่ CI ทำอยู่เป็นส่วนใหญ่ควรถูกทำให้นามธรรมออกไปเป็นสคริปต์หรือเครื่องมืออื่นที่ไม่ใช่ CI