ข้ามไปยังเนื้อหาหลัก

แคตตาล็อกขั้นตอน (Catalog)

แคตตาล็อกนี้แสดง task ทั้งหมด 13 รายการจาก registry ปัจจุบัน สามารถอ้างอิงในไฟล์ .loha.yml ด้วย uses: loha/<task>@<major-version> ทั้งนี้ ความพร้อมใช้งานจริงขึ้นกับเวอร์ชันของแพลตฟอร์มและการตั้งค่าของแต่ละ workspace

สร้างอัตโนมัติ

ข้อมูลพารามิเตอร์และสภาพแวดล้อมรันไทม์ในแคตตาล็อกนี้สร้างขึ้นจาก registry ขณะ build โปรดตรวจสอบความพร้อมใช้งานกับเวอร์ชันของแพลตฟอร์มและการตั้งค่า workspace ของคุณก่อนนำไปใช้งานจริง

Source Control (การจัดการซอร์สโค้ด)​

ขั้นตอนสำหรับนำซอร์สโค้ดเข้าสู่ workspace และส่งการเปลี่ยนแปลงกลับไปยัง Git repository

Taskวัตถุประสงค์
loha/git-clone@v1โคลน repository ที่เป็นจุดเริ่มต้นของ build หรือจาก Git URL อื่นลงใน workspace

Build (การสร้างอิมเมจและแคช)​

ขั้นตอนการสร้าง container image และการบริหารจัดการ dependency cache

Taskวัตถุประสงค์
loha/buildah-build@v1สร้างและ push OCI container image แบบ rootless ด้วย Buildah
loha/docker-build@v1สร้างและ push container image จาก Dockerfile ด้วย Kaniko แบบไม่ต้องพึ่งพา Docker daemon
loha/cache@v2บันทึกและกู้คืนแคชของ dependency ระหว่างการรัน pipeline เพื่อเร่งความเร็ว

Test & Lint (การทดสอบและตรวจโค้ด)​

ขั้นตอนการตรวจ lint, การตรวจสอบ static type และการรันชุดทดสอบ

Taskวัตถุประสงค์
loha/run-tests@v1รันชุดทดสอบ (test suite) รองรับทุกภาษาและเฟรมเวิร์ก เช่น npm, pytest, go test และ make
loha/run-lint@v1รันคำสั่ง lint เช่น ESLint, ruff, golangci-lint หรือ rubocop บนซอร์สโค้ด
loha/type-check@v1รันคำสั่งตรวจ type เช่น tsc --noEmit, mypy, pyright หรือ flow โดยไม่รันชุดทดสอบ

Deploy (การส่งมอบและติดตั้ง)​

ขั้นตอนการ deploy manifest, อัปเดตเซิร์ฟเวอร์ และเวิร์กโฟลว์ GitOps

Taskวัตถุประสงค์
loha/git-update-manifest@v1อัปเดต image tag ในไฟล์ GitOps manifest แล้ว commit กลับไปยัง repository

Security (ความปลอดภัยและการสแกน)​

ขั้นตอนการสแกนหาช่องโหว่ความปลอดภัย และตรวจความปลอดภัยของ dependency หรืออิมเมจ

Taskวัตถุประสงค์
loha/trivy-scan@v2สแกนหาช่องโหว่ในซอร์สโค้ดหรือ container image ด้วย Trivy scanner พร้อมอัปโหลดหลักฐานผลสแกน

Utilities (เครื่องมือและยูทิลิตี้ทั่วไป)​

คำสั่ง shell ทั่วไป, การจัดเก็บ artifact และการส่งข้อความแจ้งเตือน

Taskวัตถุประสงค์
loha/run-command@v1ทางเลือกยืดหยุ่นสำหรับรันคำสั่ง shell ใดก็ได้ภายใน container image ที่กำหนด
loha/notify-line@v1ส่งข้อความแจ้งเตือนสถานะ build ไปยังผู้ใช้หรือกลุ่ม LINE ผ่าน LINE Messaging API
loha/notify-webhook@v1ส่งการแจ้งเตือนไปยัง Slack, Discord, Microsoft Teams หรือปลายทาง Webhook อื่นๆ
loha/upload-artifact@v1เผยแพร่ผลลัพธ์ build ขึ้นสู่ระบบจัดเก็บ Artifact ของ Loha เป็นไฟล์ให้ผู้คนดาวน์โหลด

การระบุเวอร์ชัน​

ตัวอ้างอิงใน pipeline จะต้องระบุ major version เช่น v1 หรือ v2 โดยโปรดตรวจสอบพารามิเตอร์ รันไทม์ และความเข้ากันได้จาก registry ของเวอร์ชันที่กำลังใช้งานอยู่เสมอ