Jenkins คือ Tools ประเภท Server-Based Application สำหรับการทำ Deployment แบบอัตโนมัติโดยทำงานตามหลักการของ CI/CD(Continuous Integration/Continuous Delivery) เพื่อแก้ปัญหากระบวนการรวม Code เข้าด้วยกันของ Developer สามารถลดระยะเวลาทำงานและส่งมอบซอฟต์แวร์ได้อย่างมีประสิทธิภาพ Jenkins นั้นถูกสร้างขึ้นจากภาษา Java เป็นซอฟต์แวร์ Open Source หรือสามารถใช้งานได้ฟรีและสามารถติดตั้งผ่าน Docker ได้ การทำงานแบบอัตโนมัติของ Jenkins นั้นสามารถทำงานได้ตั้งแต่ Build, Test และ Deploy ซอฟต์แวร์ นั้นหมายความว่าทุกๆครั้งที่เรามีการ Commit Code เกิดขึ้น Jenkins จะทำการ Build และ Test ให้โดยอัตโนมัติจากรวมถึงแก้ผลไปยัง Developer ทำให้เราได้รับการแจ้งเตือนทันทีว่า Code ที่เรา Commit ไปนั้นมีปัญหาหรือไม่
จากภาพสภาพสถาปัตยกรรมของ Jenkins จะพบว่า Developer แต่ละคนต้องการ Commit Code ไปยัง Repository เช่น GitHub จากนั้น Jenkins Server จะเริ่มทำการ Build Code หาก Build Fail ก็จะแจ้งเตือนไปยัง Developer นอกจากการ Build แล้ว Jenkins เรายังสามารถเขียน Scripts ขึ้นมาทดสอบโดยเชื่อมผ่าน Jenkins ได้อีกด้วยเช่นเขียน Selenium ขึ้นมาเพื่อทดสอบ หากทดสอบ Fail ก็จะมีการแจ้งเตือนแต่หากทุกอย่างผ่านหมดก็สามารถ Deploy ไปยัง Production ได้เลย
Jenkins Architecture |
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install java
brew install jenkins-lts
Step4: Start Jenkins Service ขึ้นมา
brew services start jenkins-lts
จะแสดงหน้าเว็บดังนี้
cat /Users/YOUR_USER_NAME/.jenkins/secrets/initialAdminPassword
Step5: เลือก Install suggested plugins จากนั้นโปรแกรมจะเริ่มติดตั้ง Plugins ต่างๆให้
Step2: ตั้งชื่อ item name จากนั้นเลือก Freestyle project
Step3: โดยทั่วไปแล้วหากเรา Dev เสร็จแล้ว Source Code จะถูกเก็บไว้ใน Repository ซึ่ง Github ก็เป็น Repository ตัวหนึ่ง ในขั้นตอนนี้จะเป็นการเชื่อมต่อ Jenkins กับ Github ส่วนของ Source Code Management คลิ๊กที่ Git แล้ว Copy Source Code จาก Github มาวาง หลังจากนั้นกด Save
Step4: ทดลองกด Build Now เมื่อกดแล้ว Jenkins จะ Run Project ที่อยู่ใน Github เมื่อ Run ผ่าน Build แต่ละรอบจะถูกเก็บไว้ตรง Build History และหน้า Dashboard จะแสดงสถานะล่าสุดของการ Build