continuous-delivery Archive

สรุปสิ่งที่น่าสนใจจากงาน Dev Tools @Scale London 2017

อ่านบทความสรุปสิ่งที่น่าสนใจจากงาน Dev Tools @Scale 2017 ที่ London จากบทความเรื่อง Dev Tools @Scale Recap เป็นงานที่มี speaker จากบริษัทใหญ่ ๆ ทั้งนั้น มาพูดเกี่ยวกับเครื่องมือในการพัฒนาสำหรับระบบงานขนาดใหญ่ ไม่ว่าจะเป็น Facebook, Amazon, ARM, GitHub, Google, Microsoft และ Spotify เริ่มกันตั้งแต่การจัดการ source code, code quality, การ build, การทดสอบ ตลอกจนการ deploy เลยนำมาแบ่งปันกันหน่อย ซึ่งน่าจะมีประโยชน์สำหรับการพัฒนา software บ้าง

Read More…

อะไรคือตัวการสำคัญที่ขัดขวางการทำ CI/CD

แนวคิด Continuous Integration และ Continuous Delivery/Deployment นั้น เป็นสิ่งที่สำคัญมาก ๆ สำหรับการพัฒนา software มันไม่ใช่เรื่องของ process เพียงอย่างเดียว มันไม่ใช่เรื่องของ tool เพียงอย่างเดียว มันไม่ใช่เรื่องของ culture เพียงอย่างเดียว มันไม่ใช่เรื่องของทีมพัฒนาเพียงอย่างเดียว แต่มันคือเรื่องของการเปลี่ยนจาก requirement มาเป็นสิ่งที่อยู่ในคนใช้หรือสร้างคุณค่าให้กับลูกค้าและบริษัทนั้น ๆ อย่างต่อเนื่องและมีคุณภาพ

Read More…

เราควรสร้าง Environment ต่าง ๆ ของระบบงานตอนไหนกัน ?

สิ่งที่น่าสนใจในการพัฒนา software คือ เราทำการเตรียม environment ต่าง ๆ เช่น ทั้ง Dev, Test/QA, UAT, Staging, Pre-Prod และ Prod กันตอนไหน ? ที่สำคัญคือ แต่ละ environment นั้นเหมือนหรือต่างกัน ? ซึ่งสิ่งต่าง ๆ เหล่านี้มันสะท้อนความสัมพันธ์ระหว่าง Development team และ Pre/Production team ว่าเป็นอย่างไร

Read More…

ปัญหาที่มักพบเจอกับระบบ Continuous Delivery ของ Mobile app

ในการสร้างระบบ Continuous Integration และ Continuous Delivery สำหรับ Mobile นั้น มีหลายสิ่งอย่างที่ควรคำนึงถึง ไม่ว่าจะเป็น จำนวนของ device ที่แตกต่าง การออกแบบของแต่ละ platform การพัฒนา โครงสร้างของ code การทดสอบ การ deploy การ release โดยสิ่งที่เราต้องการคือ feedback loop ที่รวดเร็ว แน่นอนว่ามันย่อมรวดเร็วกว่าระบบอื่น ๆ อย่างมาก ดังนั้นสิ่งที่เราควรต้องทำการวางแผนงาน จากนั้นลงมือทำและสร้างมันขึ้นมาดังนี้

Read More…

[แปล] DevOps in Practice

กระบวนการส่งมอบ Software (Delivery) ไปยัง Production server นั้น มันเป็นสิ่งที่มีความท้าทายและความเสี่ยงอย่างมาก ทั้งฝ่าย business ต้องคิดและวางแผนของ product ทั้งฝ่าย architect ต้องวางโครงสร้างและ technical solution ทั้งฝ่าย development ต้องสร้าง product ที่มีคุณภาพออกมา แน่นอนว่าต้องผ่านการทดสอบในรูปแบบต่าง ๆ มาอย่างหนักหน่วง ถึงแม้จะมีการเตรียมการและลงมือทำดีอย่างไรก็ตาม กระบวนการส่งมอบ Software ยังคงยากและอันตรายอย่างมาก

Read More…

แปลเรื่อง Infrastructure as Code

หลังจากอ่านบทความเรื่อง Infrastructure as Code ที่ bliki ของคุณ Martin Fowler เป็นอีกหนึ่งแนวคิด และ เทคนิคที่น่าสนใจอย่างมาก สำหรับจัดการ infrastructure ของระบบ ทั้ง server และ network ยิ่งในยุคของ Cloud computing ด้วยแล้วยิ่งน่าสนใจขึ้นมาอีก จึงนำมาแปล และ สรุปไว้นิดหน่อย

Read More…

ทำการ Deploy Android app ขึ้น Google Play แบบอัตโนมัติด้วย Fastlane Supply

วันนี้นั่งสรุปการนำ Fastlane มาใช้กับการพัฒนา Android application โดยในตอนนี้จะมีชุดเครื่องมืออยู่ 2 ตัวคือ Supply สำหรับการแก้ไข Android app บน Google Play เช่น APK และ metadata ต่าง ๆ Screengrab สำหรับการบันทึกรูป screenshot การทำงานของ app ซึ่งทำงานร่วมกับ Espresso หรือ UI Testing ดังนั้น เราลองนำเครื่องมือทั้งสองมาใช้งานร่วมกันดีกว่า

Read More…

ความเข้าใจผิดเกี่ยวกับ Continuous Integration และ Continuous Delivery

เมื่อมีการพูดถึงคำว่า Continuous Integration (CI) และ Continuous Delivery (CD) แล้ว คนส่วนใหญ่มักจะคิดถึง หรือ พูดถึงเครื่องมือต่าง ๆ ก่อน ไม่ว่าจะเป็น Jenkins บ้างล่ะ ไม่ว่าจะเป็น Bamboo บ้างล่ะ ไม่ว่าจะเป็น Travis CI บ้างล่ะ ไม่ว่าจะเป็น Circle CI บ้างล่ะ ไม่ว่าจะเป็น Docker บ้างล่ะ ไม่ว่าจะเป็น Ansible บ้างล่ะ

Read More…

ทำอย่างไร ถึงจะได้ feedback ที่รวดเร็ว ?

เรามักจะได้ยินคำว่า Fail Fast Lea[r]n Fast ในการพัฒนา software แบบ incremental และ interactive นั้นเราต้องการ feedback ที่รวดเร็วที่สุดเท่าที่จะทำได้ เพื่อทำให้เรารู้ว่า สิ่งที่ทำอยู่นั้นมันถูกต้อง และ เป็นสิ่งที่ต้องการ ในการพัฒนา software เราต้องการรู้สิ่งต่าง ๆ เหล่านี้อย่างรวดเร็ว สิ่งที่เราสร้างทำงานได้อย่างถูกต้อง ? สิ่งที่คนอื่นสร้างทำงานได้อย่างถูกต้อง ? เมื่อ deploy ระบบงานแล้วยังทำงานได้ ? สิ่งที่พัฒนานั้นมันตรงกับความต้องการของลูกค้า ? ทำให้ business มันดีขึ้น ? ดังนั้นเรามาตอบคำถามต่าง ๆ เหล่านี้กันดีกว่า

Read More…

สวัสดีกับ Jenkins 2.0 Preview กันหน่อย

ตอนนี้ Jenkins 2.0 Preview ถูกปล่อยออกมาเพื่อให้ทดสอบใช้งานกันแล้ว โดยใน version ใหม่นี้ทำการปรับปรุงความสามารถหลายอย่าง ทั้งเรื่องของ Delivery pipeline ซึ่งจัดการด้วย code กันเลย การติดตั้งแบบใหม่ มีให้เลือก plugin ก่อนด้วย ทำการปรับปรุง User Interface และ Usability ต่าง ๆ อีกด้วย ยังทำงานกับ version เก่า ๆ ได้ ดังนั้นมาดูรายละเอียดในแต่ละข้อกันดีกว่า

Read More…