Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

มาสร้าง Build caching server ของ Gradle กันหน่อย

$
0
0

สำหรับการใช้งาน Gradle ทั้ง Android, Backend และ Frontend นั้น ในแต่ละ task นั้นสร้าง cache data ไว้เสมอ ทำให้ทำงานได้เร็วขึ้น แต่ความเร็วของแต่ละเครื่องที่ build ขึ้นอยู่กับการสร้าง cache data นี่แหละ ดังนั้นถ้าแต่ละเครื่องทำการ share cache data ก็น่าจะดีนะ ดังนั้นมาใช้งาน Caching server กันหน่อยดีกว่า
เป้าหมายเพื่อความเร็วในการ build นั่นคือทำให้ชีวิตนักพัฒนาดีขึ้น

เริ่มด้วยการสร้าง Caching server ของการ build

ซึ่งทางทีม Gradle ได้เตรียม Docker Image ชื่อว่า build cache node ไว้ให้แล้ว ดังนั้นก็สร้าง container ใช้งานได้ทันที [code] $docker container run -d -p 80:80 gradle/build-cache-node:3.2 [/code] เข้าใช้งานผ่าน browser url http://localhost สำหรับใครที่ชื่อชอบ security ก็มีให้กำหนด user/password และ role ต่าง ๆ อยู่ในส่วนของ seeting ของ Build cache

เมื่อทุกอย่างพร้อมก็มาใช้งานกัน

ตัวอย่างการใช้งานเป็น Android app แบบง่าย ๆ เปิดใช้งาน build cache ก่อนนะ ทำได้ทั้ง
  • ใส่ผ่าน command line ด้วย --build-cache
  • ใส่ในไฟล์ gradle.properties ด้วยค่า org.gradle.caching=true
ต่อมาทำการเชื่อมต่อไปยัง Caching server ที่สร้างไว้ ด้วยการแก้ไข configuration ในไฟล์ settings.gradle ดังนี้ [gist id="69bbc959f19a673a02643cd801dbacf3" file="settings.gradle"] เมื่อทุกอย่างพร้อมก็ใช้งานสิ [gist id="69bbc959f19a673a02643cd801dbacf3" file="run.txt"] ตรวจสอบขนาดของ cache data ผ่าน browser ได้นะ ดังนั้นเราสามารถใช้ cache data ของการ build ร่วมกันแบบข้ามเครื่องได้แล้ว น่าจะทำให้การพัฒนารวมไปถึงการ setup และการทำงานของ CI server ง่ายและเร็วขึ้น ลองนำไปใช้กันดูนะ

Viewing all articles
Browse latest Browse all 1997

Trending Articles