ก็เป็นเวลา 1 ปีนิดๆ มาแล้วที่พวกเรา Twin Synergy ได้ย้ายงานของเราทั้งหมดจาก Bitbucket มา Gitlab ซึ่งในตอนนั้นผมต้องการสิ่งที่มันจะสามารถทำ CI/CD ได้ และสามารถทำพวก Scrum board จัดการ Project ต่างๆ ได้ด้วย
หวยเลยมาออกที่เจ้า Gitlab ซึ่งผมว่าแม่งโครตคูล และคุ้มค่ามากๆ สำหรับทีม หรือบริษัทไหนที่พึ่งเริ่มต้นพัฒนาโปรแกรม และยังมีเงินทุนไม่มาก ซึ่งเดียวผมจะขอบอกความดีความชอบของมันให้ฟัง ว่าทำไมพวกเราถึงเลือกใช้งาน
Gitlab นั้นมีสอง 2 แบบให้เลือกในการทำ Git repository คือใช้งานบน Cloud หรือจะติดตั้งที่เครื่อง Server เอง แต่ที่ผมเลือกใช้งานผ่าน Cloud นั้นเพราะผมไม่อยากมายุ่งยากเรื่องดูแล Server
เมื่อเราเริ่มใช้งานก็สามารถเขียน CI/CD ได้เลยใน Project
ซึ่งเราสามารถเขียน Pipeline ของแต่ละ Repo ในรูปแบบ .yml
นั้นหมายความว่าสามารถที่จะเก็บ code นี้ไว้ใน git ได้เลย เดียววิธีการใช้งานผมจะเขียนบทความเพิ่มเติมให้อ่านกัน ใครใจร้อนก็ไปลุยใช้งานได้เลย https://docs.gitlab.com/ee/ci/yaml/README.html
สำหรับใครที่ทำ Docker สามารถทำ Docker image แล้วฝากไว้ที่นี่ได้เลย สะดวกสุดๆ
ใครต้องการเก็บ code หรือค่าการใช้งานต่างๆ สามารถสร้างเป็นแบบ private เก็บไว้ โดยแยกเป็นแต่ละโปรเจคได้ ซึ่งเราสามารถโหลดไฟล์ที่สร้างไว้นำไปใช้อื่นได้ด้วย
แน่นอนว่านอกจากการเขียนโค็ดแล้ว งานเอกสารก็สำคัญเช่นกัน เราสามารถเขียน wiki โดยแยกแต่ละโปรเจคได้ เพื่อเก็บข้อมูลวิธีการต่างๆ ไว้ได้
ในบ้างครั้งเราอาจจะต้องมีการเก็บรหัสผ่านหรือ Token ต่างๆ เพื่อใช้งานในโปรแกรม หากใครเขียนลงในโค็ดตรงๆ ถือว่าผิดบาปมาก วิธีการที่ดีที่สุดคือเก็บมันไว้ใน Secrets management แล้วค่อยนำค่ามันไปใช้ที่หลัง
โดยมันสามารถใช้งานร่วมกับ Piepline ได้ด้วย เช่น ตอนจะ Deploy ไปเซิฟเวอร์นั้นเราก็ให้มันเก็บ sshkey ไว้ แล้วเขียน pipeline ให้มันมาเรียกใช้ เป็นต้น
Issue board ก็เปรียบเทียบได้กับ Kanban board หรือ Scrum board โดยเราสามารถสร้าง issue แล้ว tracking เป็น branch ต่างๆ ได้เลยทำให้เราบริหารจัดการโปรเจคได้ง่ายขึ้น
Milestones นั้นก็คือระบบที่สามารถทำเป็น Agile sprints ซึ่งก็คือการแบ่งกลุ่ม Issue ได้ว่า Issue ไหนทำวันไหนถึงวันไหน เราสามารถดูภาพรวมได้เลยว่าโปรเจคนี้จะจบภายในวันไหน
Features ที่ผมกล่าวมาข้างต้นทั้งหมดคือ ฟรี!!! แค่นี้ผมก็ว่าเพียงพอแล้วสำหรับทีมพัฒนาโปรแกรมจำนวน 1-10 คน ซึ่งผมพึ่งจะยอมเสียเงินให้เมื่อกันยายนปี 2018 เองนะ เพราะต้องการใช้ Feature บ้างอย่างเพิ่ม โดยค่าเสียหายคือ 4$ ต่อผู้ใช้งานต่อเดือน แม่งถูกและคุ้มมากกกกกกกกก
ไปดูเพิ่มเอาเอง https://about.gitlab.com/pricing/
เหมือนขายของปะ? แค่อยากแนะนำว่าเครื่องมือดีๆ ให้ใช้เองนะ…. 🙂
A single application For the entire DevOps lifecycle.
– gitlab.com