Screen Shot 2557-07-16 at 1.40.17 PM
ผมเห็นคนพูดถึง Just Yo app เยอะพอสมควร
เมื่อทำการติดตั้ง และ สมัครใช้งานแล้ว
พบว่า app มันไม่มีอะไรจริงๆ
ไม่มีความสามารถอะไรนอกจากส่งเสียงว่า Yo ออกมาแบบน่ารัก

แต่จากเสียง Yo แบบน่ารัก และสามารถส่ง Yo ไปให้เพื่อนของเรา หรือที่ subscribe ไว้ได้ทั้งหมด
จึงคิดว่า ถ้าเอามาทำงานร่วมกับ Jenkins ซึ่งเป็น Continuous Integration Server ของการพัฒนา Software
คงจะสนุกไม่น้อย มาลองกันดู
แนวคิดง่ายๆ
เมื่อผลการทำงานใน Jenkins สำเร็จ (Success) แล้วให้ทำการส่ง Yo ไปยังสมาชิกในทีม

ขั้นตอนการสร้าง
เมื่อไปดูใน Jenkins พบว่ามี plugin ชื่อว่า Post Build Task
สำหรับการทำงานเมื่องานใน Jenkins ทำงานเสร็จแล้ว ซึ่งอยู่ในส่วนของ Post Build Action

เริ่มต้นการใช้งาน ด้วยการติดตั้ง plugin ดังรูป
Screen Shot 2557-07-16 at 7.05.19 AM

ต่อจากนั้นทำการ configuration ในส่วนของ Post Build Action ของ item ดังรูป

Screen Shot 2557-07-16 at 7.06.12 AM

แล้วทำการ configuration ของ Post build task  ดังรูป

Screen Shot 2557-07-16 at 7.24.59 AM

คำอธิบาย

  • สามารถใส่ script หรือชุดคำสั่งการทำงานที่ต้องการ โดยในบทความนี้จะส่ง Yo ไปยังผู้ใช้งานที่เรากำหนด ซึ่งจะอธิบายต่อไป
  • Run script only if all previous steps were successful คือ ทำการ run script เมื่อ item ทำงานสำเร็จ
  • Escalate script execution status to job status คือ ทำการ run script เมื่อ item ทำงานไม่สำเร็จ

สิ่งที่จะทำต่อไป คือ 
ส่ง Yo เมื่อ item ทำงานสำเร็จ โดยสามารถส่งข้อมูลไปยัง Yo app ผ่าน API
โดยหลังจากที่เราสมัครแล้ว ให้เข้าไปที่หน้า dashboard ของ Yo Dev
จะมี api token ของเรา เพื่อใช้งาน ดังรูป

Screen Shot 2557-07-16 at 7.31.49 AM

โดยสามารถส่งข้อมูลผ่าน curl ได้เลย ตามตัวอย่างเป็นการส่ง Yo ไปยัง username ที่กำหนด

$curl --data "api_token={{api_token}}&username={{username}}" http://api.justyo.co/yo

คำอธิบาย

  • {{api_token}} คือ api token ที่ทาง Yo Dev API สร้างไว้ให้
  • {{username}} คือ username ที่เราต้องการส่ง Yo ไปให้

สามารถส่งไปให้คนที่เรา subsbribe ไว้ได้ด้วย โดยยิงข้อมูลไปที่ http://api.justyo.co/yoall

เมื่อทุกอย่างเรียบร้อยแล้ว ก็นำคำสั่งนี้ไปใส่ใน script ของ Post build task ดังรูป
Screen Shot 2557-07-16 at 7.37.17 AM

ทดลองใช้งานง่ายๆ ด้วยการ build item ใน Jenkins แล้วดูผลการทำงานผ่านมือถือเลย
เพียงเท่านี้ก็สามารถใช้งาน Yo ร่วมกับ Jenkins ได้แล้วครับ
มันช่วยทำให้การพัฒนา software สนุกขึ้นไปอีกครับ

รูปผลการทำงานใน Jenkins
Screen Shot 2557-07-16 at 7.45.44 AM

VDO แสดงการทำงานของ Jenkins

ปล. ผมเขียน Yo client แบบง่ายๆ ด้วยภาษา Go lang ไว้ที่ Github :: Yo client

 

Tags:,