GitHub Actions เบื้องต้น
CI/CD สำหรับ Machine Learning
Ravi Bhadauria
Machine Learning Engineer
GitHub Actions คืออะไร?
GitHub Actions (GHA)
: แพลตฟอร์ม CI/CD สำหรับทำให้
pipeline
ทำงานอัตโนมัติ
Pipeline
: ลำดับขั้นตอนที่แสดงการไหลของงานและข้อมูล
GitHub Actions คืออะไร?
GitHub Actions คืออะไร?
1
https://medium.com/empathyco/applying-ci-cd-using-github-actions-for-android-1231e40cc52f
องค์ประกอบของ GHA: Event
Event
: กิจกรรมเฉพาะใน repository ที่ทริกเกอร์การรัน workflow
Push
Pull Request
การเปิด issue
องค์ประกอบของ GHA: Workflow
Workflow
: กระบวนการอัตโนมัติที่รัน job ตั้งแต่หนึ่งรายการขึ้นไป
กำหนดในไฟล์ YAML
ทริกเกอร์อัตโนมัติด้วย
event
รันด้วยตนเองได้เช่นกัน
เก็บไว้ในไดเรกทอรี
.github/workflows
ใน repository
กำหนด workflow ได้หลายรายการ
องค์ประกอบของ GHA: Steps และ Actions
Steps
: หน่วยงานย่อยแต่ละชิ้น
ทำงานตามลำดับ โดยขึ้นอยู่กับขั้นตอนก่อนหน้า
รันบนเครื่องเดียวกัน จึงแชร์ข้อมูลได้
ตัวอย่างหน่วยงาน
แอปพลิเคชัน compiled code, shell script
Action
: แอปพลิเคชันเฉพาะของแพลตฟอร์ม GHA
เช่น checkout repo, comment on PR
องค์ประกอบของ GHA: Jobs และ Runners
Job
: ชุดของ
steps
แต่ละ job ทำงานอิสระจากกัน
รันแบบขนานได้
ทำงานบนเครื่องคอมพิวต์ที่เรียกว่า
runners
ตัวอย่าง GHA workflow อย่างง่าย
Event
: Push
Job
: รันบน
runner
แบบ
Ubuntu
มีสอง
steps
Action
: Checkout Repo
รันโค้ด Python
ภาพรวมทั้งหมด
มาฝึกกันเถอะ!
CI/CD สำหรับ Machine Learning
Preparing Video For Download...