Auto-Deploy Overview

เพื่อเพิ่มประสิทธิภาพการผลิตในฐานะนักพัฒนา Ruk-Com Cloud จัดเตรียมการตั้งค่าการ deploy โดยอัตโนมัติซึ่งเกิดขึ้นเป็นระยะเวลาของโปรเจกต์โดยอัตโนมัติ ในลักษณะดังกล่าวควรตรวจสอบให้แน่ใจว่ามีการฝสานรวมอย่างต่อเนื่องกับแอปพลิเคชันเซิร์ฟเวอร์ที่เกี่ยวข้อง การ deploy ซ้ำเกิดขึ้นตามการเปลี่ยนแปลงที่ใช้กับที่เก็บระยะไกลที่เหมาะสม ดังนั้นคุณจึงทำงานได้ง่ายผ่านบริการ Git/SVN

เพียงอัปเดตโค้ดของคุณและทำการ commit การเปลี่ยนแปลงทั้งหมดในโปรเจกต์ VCS จะถูก push ไปยัง production environment โดยอัตโนมัติหลังจากช่วงเวลาที่กำหนดและเพื่อให้แตกต่างจาก Git hooks, ฟีเจอร์ auto-deploy ไม่จำเป็นต้องกำหนดค่าใดๆเพิ่มเติม
ในส่วนของ Git repository และการทำงานร่วมกับ SVN ดูขั้นตอนการทำงานด้านล่าง

การเตรียมโปรเจ็กต์

1. เริ่มต้นด้วยการเตรียม Ruk-Com Cloud Environment เพื่อเพิ่มเติมโปรเจกต์ที่ต้องการด้วยโค้ดจาก Git/SVN

เพิ่มเติม:
-สำหรับ Java environments นั้นจำเป็นต้องเพิ่ม marven node สำหรับการสร้างและการพุชโค้ดไปยังแอปพลิเคชันเซิร์ฟเวอร์ที่เหมาะสม

-สำหรับภาษาอื่นๆจะได้รับการจัดการโดย compute nodes ที่เกี่ยวข้องกันด้วยตัวเอง

เราจะยกตัวอย่างของ Maven build node สำหรับ Java อย่างไรก็ตามแอปพลิเคชันเซิร์ฟเวอร์อื่นๆก็สามารถกำหนดค่าได้เช่นเดียวกัน

2. เมื่อ environment ของคุณถูกสร้างขึ้นแล้ว คลิกปุ่ม Add Project ถัดจาก node ที่เหมาะสม (เช่น Marven สำหรับ Java หรือแอปพลิเคชันเซิร์ฟเวอร์สำหรับภาษาอื่น)

3. ในหน้าต่างที่เปิดขึ้น สลับไปที่แท็บ VCS ที่ใช้และกรอกข้อมูลในฟิลด์ที่จำเป็น: แทรก URL ไปยังที่เก็บที่จำเป็น, ระบุรายละเอียดรับรองความถูกต้องและกำหนดชื่อสำหรับ context ที่แอปพลิเคชันที่คุณจะวางไว้

นอกจากนี้ ในกรณีของการใช้งาน Maven build node คุณต้องระบุชื่อเพิ่มเติมสำหรับโปรเจ็กต์และ environment ที่คุณต้องการdeploy เพิ่มเติม

เคล็ดลับ: หากคุณต้องการรายละเอียดเพิ่มเติมเกี่ยวกับตัวเลือกเหล่านี้ โปรดอ่านคำแนะนำที่เกี่ยวข้องจากรายการด้านล่างตามแอปพลิเคชันที่คุณใช้งานอยู่

Maven สำหรับ Deploy ผ่าน Git/SVN

Deploy PHP Projects ผ่าน Git/SVN

Deploy Ruby Project ผ่าน Git/SVN

Deploy Python Projects ผ่าน Git/SVN

Deploy Node.js Project ผ่าน Git/SVN

การตั้งค่าการอัปเดตโปรเจ็กต์อัตโนมัติ

ตอนนี้ตามที่คุณระบุข้อมูลสำคัญทั้งหมดสำหรับการ deploy คุณอาจดำเนินการกำหนดค่าการอัปเดตโปรเจกต์ของคุณอัตโนมัติ

1. ทำเครื่องหมายถูกที่บรรทัด Check and auto-deploy updates เพื่อเปิดใช้งานและขยายส่วนที่เกี่ยวข้อง

ตัวเลือก Check ตรวจสอบทุก (นาที) โดยจะแสดงให้เห็นเพื่อกำหนดความถี่ของการตรวจสอบที่จัดเก็บสำหรับ commit ใหม่ซึ่งถูก push ตั้งแต่การตรวจสอบครั้งล่าสุด

คุณสามารถคาดการณ์ได้ง่ายจากชื่อตัวเลือกโดยจะระบุเป็นนาที ตัวอย่างเช่น หากคุณตั้งค่าช่วงเวลา 1 นาทีการตรวจสอบจะทำทุกนาทีและหากคุณระบุช่วงเวลา 1440 นาทีการตรวจสอบจะทำวันละครั้ง

เพิ่มเติม:
-หากช่วงเวลาการตรวจสอบน้อยกว่าเวลาที่จำเป็นในการสร้างหรือ deploy โปรเจกต์ task ต่อไปจะรออยู่ในคิวจนกว่าการดำเนินการเหล่านี้จะเสร็จสิ้น

-ในกรณีที่ application server layer มีหลาย nodes โปรดพิจารณารายละเอียดเกี่ยวกับลำดับการอัปเดต

2. ผลของการกำหนดค่าเหล่านี้ (ซึ่งแม้จะใช้คำอธิบายยาวแต่ก็ใช้เวลาน้อยกว่าหนึ่งนาทีในการระบุ) หากมีการเปลี่ยนแปลงใดๆที่ source ของแอปพลิเคชันการเปลี่ยนแปลงเหล่านั้นจะถูกสร้างขึ้นและ deploy โดยอัตโนมัติ (สำหรับโปรเจ็กต์ Java) หรือเพียงแค่ใช้การอัปเดตโปรเจกต์ (สำหรับภาษาที่เหลือ) หนึ่งครั้งตามระยะเวลาที่กำหนด

คลิก Add เพื่อยืนยัน

เคล็ดลับ: เฟรมนี้ยังรวมถึงการตั้งค่าเพิ่มเติมซึ่งอาจมีประโยชน์สำหรับการจัดการ การทำงานร่วมกันที่เหมาะสมของระบบกับที่จัดเก็ยระยะไกลของคุณ


– ตัวเลือก Checkout now (นำเสนอสำหรับภาษาที่ไม่ใช่ Java) เพื่อระบุว่าคุณต้องการ deploy project ของคุณทันทีหลังจากเพิ่มหรือเลื่อนการดำเนินการนี้ (สำหรับการเริ่มด้วยตนเองในภายหลังหรือดำเนินการโดยอัตโนมัติระหว่างการชำระเงินเพิ่มเติมครั้งแรกโดยฟีเจอร์การ deploy อัตโนมัติที่เปิดใช้งาน)


– ตัวเลือก Auto resolve conflict ยังคงเปิดใช้งานตามค่าเริ่มต้นและแสดงถึงความคล้ายคลึงของคำสั่ง git reset –hard เพื่อป้องกันไม่ให้เกิดข้อขัดแย้งในการผสานระหว่างการอัปเดตโปรเจ็กต์ครั้งต่อๆไป ซึ่งอาจเกิดขึ้นได้หากมีการแก้ไขไฟล์เดียวกันทั้งในที่จัดเก็บระยะไกลและโปรเจ็กต์ของคุณ หาก Ruk-Com Cloud เกิดปัญหาดังกล่าวไฟล์ที่ขัดแย้งจะได้รับการอัปเดตตามเวอร์ชันที่จัดเก็บ (ซึ่งถือว่าเป็นไฟล์ที่ถูกต้อง) โดยจะละทิ้งการเปลี่ยนแปลงที่ทำในเครื่อง เราขอแนะนำว่าอย่าปิดการใช้งานตัวเลือกนี้เว้นแต่คุณจะรู้ว่าคุณกำลังทำอะไรอยู่


– ตัวเลือก Enable zero-downtime deployment (ปัจจุบันใช้ได้สำหรับ PHP เท่านั้น) อนุญาตให้ deploy การอัปเดตแอปพลิเคชันอย่างต่อเนื่องซึ่งอยู่ที่ ROOT context โดยการทำงานของแอปพลิเคชันจะไม่หยุดชะงัก หากเปิดใช้งานกรณีนี้ตัวเลือกของคุณจะถูกจดจำและใช้ในระหว่างการอัปเดตอัตโนมัติที่ตามมาทั้งหมด

Tracking Auto-Updates

ในการตรวจสอบการประมวลผลการ deploy อัตโนมัติและผลลัพธ์คุณสามารถดูไฟล์บันทึก log ที่เหมาะสม (ชื่อ vcs_update) สำหรับแอปเซิร์ฟเวอร์หรือ Maven node

หมายเหตุ: คุณยังสามารถกำหนดค่าการ deploy ของคุณใหม่ผ่านการตั้งค่าแอป Git/SVN โดยไปที่ environment ของคุณและเลือกปุ่ม Edit ถัดจากโปรเจกต์ที่เหมาะสมคุณจะเห็นเฟรมที่เปิดอยู่คล้ายกับเฟรมที่ใช้สำหรับการเพิ่มโปรเจกต์โดยคุณสามารถเปลี่ยนสถานะสำหรับตัวเลือกใดๆที่อธิบายไว้ข้างต้นได้ (เพียงคลิกที่ Apply เพื่อยืนยันการตั้งค่าใหม่)

นั่นคือทั้งหมด! เพียงทำการกำหนดค่าง่ายๆเหล่านี้ในขณะที่เพิ่มโปรเจกต์ไปยัง Ruk-Com Cloud และอย่าลังเลที่จะทำงานกับโค้ดของคุณต่อไปผ่านที่เก็บ Git/SVN โดยไม่ต้องกลับมาที่แดชบอร์ดอีกครั้ง คุณสามารถวางใจได้ว่าทุกอย่างจะทันสมัยอยู่เสมอในการผลิตของคุณโดยอัตโนมัติ