แนะนำการทำ auto deployment ด้วย deployhq

เว็บไซต์ deployhq.com เป็นเว็บที่ให้บริการการทำ auto deploy ซึ่งจะพูดง่ายๆก็คือให้บริการเอาโค้ดขึ้น server อัตโนมัติ แต่ขอบอกไว้ก่อนนะครับว่า บริการนี้สำหรับคนที่ใช้ git ในการทำงานเท่านั้น 

ก่อนอื่นลองมาดูหน้าเว็บ หน้าตาดูดีมีสกุล และมีคำอธิบายว่าเขาทำอะไรให้เราได้บ้าง จากนั้นเราลองคลิกที่เมนู Pricing ดู

ถ้าจะว่าไปราคาก็ไม่ได้แพงเท่าไร เดือนนึงตกก็ประมาณ 300 กว่าบาท สำหรับแพกเกจต่ำสุด Basic plan 

แต่เดี๋ยวก่อน เขาก็มีฟรีให้ใช้นะครับ ลิ้งก์มันจะอยู่ใต้ Basic plan คลิกเข้าไป ข้อจำกัดเท่าที่ผมลองเล่นคือ เขาจำกัดการใช้งานไว้ที่ 1 โปรเจ็กและ deploy ไม่เกิน 10 ครั้งต่อวัน ซึ่งถ้าเราเอามาใช้งานส่วนตัวก็ถือว่า ได้ 

เรามาเข้าสู่กระบวนการสมัครใช้งานฟรีกัน หลกังจากคลิกลิ้งก์จากภาพด้านบนแล้ว ก็จะมาหน้าให้เรากรอกอีเมล์  ก็ป้อนอีเมล์เข้าไปแล้วกดปุ่ม Continue

ป้อนรายละเอียดต่างๆ รหัสผ่าน, ชื่อ, นามสุกล, ชื่อบริษัท, ติ๊กเครื่องหมายถูกยอมรับเงื่อนไขการใช้งาน จากนั้นคลิกปุ่ม Create account

ทางเว็บไซต์จะส่งอีเมล์มาให้เรา เพื่อทำการ activate แอคเค้า เราก็เข้าไปในอีเมล์แล้วคลิกลิ้งก์ที่เขาส่งให้มา

ระบบจะพาเรากลับมายังเว็บ deployhq.com อีกครั้ง พร้อมทั้งบอกเราว่า account เรานั้นได้ activate เรียบร้อยแล้ว  จากนั้นให้เราคลิกที่ปุ่ม New Project หรือปุ่ม Create your first project ก็ได้ 

ในหน้า New Project ให้เรา 

  • ป้อนชื่อในช่อง Name 
  • เลือกสถานที่ที่ท่านใช้เก็บโค้ดในช่อง Where is your repository hosted? อย่างของผมผมเก็บโค้ดไว้ที่ Bitbucket

จากนั้นคลิกปุ่ม Create Project

เราจะถูกนำพาไปยังหน้าเว็บไซต์ bitbucket.com ถ้าโฮสต์ที่เก็บโค้ดเป็น bitbucket ตามที่เลือกไว้ในข้อด้านบน เพื่อให้เราอนุญาติสิทธิ์การเข้าจัดการบางอย่าง  คลิกปุ่ม Grant access ครับ  

*** ก่อนจะถึงหน้า Grant access นี้ ถ้าหากท่านไม่ได้ล้อกอิน bitbucket เขาจะให้ท่านลอกอินก่อนนะครับ 

และหลังจากคลิกปุ่ม Grant access เราจะถูกพัดพามายัง deployhq.com อีกครั้งเพื่อทำงานของเราต่อ  หน้า Repositories for Bitbucket  ให้เลือก repository ที่จะทำงานด้วย  

หลังจากเลือก repository แล้ว ทางระบบของ deployhq เขาจะทำอะไรบางอย่างกับ repository ของเรา ซึ่งก็ไม่ใช่เรื่องน่าเป็นห่วงอะไร เราแค่นั่งรอก็พอ

หลังจากนั้น เราจะถูกพามายังหน้า New Server เพื่อให้เราตั้งค่า Ftp หรือ Sftp (หรืออย่างอื่นที่ใช้สำหรับเอาโค้ดขึ้นเซิฟเวอร์  ตัวผมเองเคยใช้มาแต่ Ftp กับ Sftp เท่านั้น )

  • ป้อนชื่อในช่อง Name 
  • เลือก SSH/SFTP เป็นตัวเอาโค้ดขึ้นเซิฟเวอร์ ถ้าท่านใช้ FTP ก็เลือก FTP นะครับ
  • ป้อนรายละเอียด SSH Configuration

คลิกปุ่ม Create Server

เสร็จ พอมาถึงหน้านี้ก็คือเสร็จ  แต่ยังมีขั้นตอนอีกเล็กน้อยเพื่อกำหนด action การ deploy โค้ด

คลิกที่ Automatic Deployment จากนั้นคลิกเปิดตรง deploy when master is pushed เป็นการบอกว่าเมื่อมีการ push โค้ดเข้าไปที่ branch master ก็ให้เอาขึ้นเซิฟเวอร์อัตโนมัติ ส่วนจะเป็นการเอาขึ้น production หรือ staging ก็ขึ้นอยู่กับตอนที่ท่านตั้งค่า Server ในขั้นตอนก่อนหน้านี้ 

หลังจากนี้คุณก็ไม่ต้องมานั่งสนใจเรื่องจะต้องเอาโค้ดขึ้น staging หรือ production อีกแล้ว แค่ทำงานไปกับ git ตามปกติ

นอกจากจะกำหนด auto deploy ตรงนี้ได้แล้ว ยังมีของเล่นเจ๋งอีก ให้คลิกที่ปุ่ม Deploy Project

ในหน้านี้เราสามารถกำหนดลึกลงไปได้ว่า จะให้ deploy เลยทันทีหรือว่า จะให้ deploy วันละครั้งตอนเที่ยงคืน หรือว่า จะให้ deploy เมื่อโค้ด push ไปที่ branch develop 

เขามีโควต้าให้เรา deploy ได้ตั้งวันละ 10 ครั้ง เหลือแหล่