ครั้งที่แล้วนำเสนอเรื่อง GitLab ไปมีพาดพิงเรื่อง CI (Continuous Integration) ไปนิดหน่อย ซึ่ง GitLab เองก็มีโครงการ GitLab CI เช่นกัน พูดถึง CI หลายท่านที่ใช้เครื่องมือแบบนี้อยู่แล้วก็คงต้องบอกว่า Jenkins เจ๋งสุด! แหมใช้ GitLab แล้วจะไปทำ CI ใน Jenkins ก็จะดูแปลกๆ มาใช้ GitLab CI กันดีกว่า :) GitLab CI แบ่งโครงการออกเป็น 2 ส่วน คือ
- GitLab CI หน้าเว็บหลักของ GitLab CI
- GitLab CI Runner เป็นส่วน Builder สามารถแยกหรืออยู่ร่วมกับ GitLab CI ได้
ครั้งนี้เราจะมาติดตั้ง GitLab + GitLab CI กัน โดยใช้วิธีที่ง่ายมากมากมาก โดยใช้ตัวติดตั้งของ Bitnami สำหรับวิธีปกติดูได้ที่เว็บโครงการ GitLab CI ครับ
ขั้นแรกดาวน์โหลด GitLab มาก่อน
wget http://downloads.bitnami.com/files/stacks/gitlab/6.9.2-1/bitnami-gitlab-6.9.2-1-linux-x64-installer.run
จากนั้น chmod ให้ execute ได้
chmod +x bitnami-gitlab-6.9.2-1-linux-x64-installer.run
ติดตั้งด้วยคำสั่ง
./bitnami-gitlab-6.9.2-1-linux-x64-installer.run
ตอบคำถามไปเรื่อยๆ คุณก็จะได้ GitLab และ GitLab CI มาใช้งานกันแล้ว วิธีการใช้งานก็เข้าไปที่ URL ของเว็บเราครับ ตัวอย่างเช่น
- GitLab - http://redgitlabci.cloudapp.net
- GitLab CI - http://redgitlabci.cloudapp.net/gitlabci
ตัวอย่างเป็น โครงการ OpenStack Cheat Sheetเขียนเป็นไฟล์ Markdown แล้วใช้ GitLab CI Build ออกมาเป็นไฟล์ EPUB ประมาณนี้
สร้าง Project ใน GitLab ขึ้นมาก่อนครับ
จากนั้นเข้าไปที่ GitLab CI สั่ง Sync Project เข้ามาและ Add เข้า Build
เข้าไปที่ Project > Settings เขียน Build Script เพิ่มลงไป เพราะเราจะใช้ make ช่วยในการ build ครับ
จากนั้น Commit ไฟล์เข้าไปที่ Git Repository
เข้าไปที่หน้าโครงการใน GitLab คุณจะพบ Badge แสดงสถานะ Build อยู่ตรงมุมขวา พอเรา Commit ไฟล์ CI ก็จะเริ่มทำงานตาม Build Script ที่เราเขียนเพิ่มลงไป
ดูสถานะและรายละเอียดการ Build เพิ่มได้ใน GitLab CI
GitLab CI จะ Build ให้เราทุกครั้งที่เรา Commit File เข้าไปที่ Repository คุณสามารถตั้งค่าการ Build เพิ่มเติมได้ในหน้า CI Settings ครับ