Continues integration development
-
Upload
prada-hsiung -
Category
Technology
-
view
289 -
download
0
description
Transcript of Continues integration development
![Page 1: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/1.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Continues Integration DevelopmentReporter : PRADA Hsiung
![Page 2: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/2.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Outline
What’s the CI?
Why Jenkins?
CI Environment in iaSolution
Case Study
Conclusion
![Page 3: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/3.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
What’s CI?What’s the Quality of software?
![Page 4: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/4.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Jenkins
JIRA
CORAL
The Joel Test有用原始碼控制系統 ?
能一步驟建出所有結果 ?
有每天都重新編譯建立 (daily builds)?
有問題追蹤資料庫 (bug database)?
你會先把問題都修好之後才寫新的程式 ?
有最新的時程表 ?
有規格書 ?
程式人員有沒有安靜的工作環境 ?
用市面上最好的工具 ?
有測試人員 ?
在面試時要求面試對象寫程式 ?
有做走廊使用性 (hallway usability)測試 ?
Makefile
SVN
![Page 5: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/5.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
The Step for Develop a Software
ConfigVersionControl
Planning Coding Build
CompileIssueTrack
Test Publish
![Page 6: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/6.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
What’s thing Jenkins do?
ConfigVersionControl
Planning Coding Build
CompileIssueTrack
Test Publish
![Page 7: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/7.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Problem 1Always Worst a lot of time for everybody
![Page 8: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/8.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Before ..
GameDB..
JJ>TT :麻煩 build一版新的 warTT >GG:幫我把 war放到 server(過了十分鐘 ):弄好了TT >JJ:GG>TT弄好了JJ>BB :開始測吧(過了三十分鐘 )BB>JJ:Done.
Emulator
JJ -> AA: give me the newest gamedb-bundle emulator (past 30 min)AA-> JJ : give you a emulator.rar on LAINJJ -> RR : 去 angus的 LAIN抓最新的來測試 ISSUE-5786(過了十分鐘 )RR-> JJ : OK, it’s work
![Page 9: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/9.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Worst Case.GameDB..
JJ>TT:麻煩 build最新的 warTT >GG:幫我把 war放到 server(過了十分鐘 )GG>TT:弄好了TT >JJ:弄好了JJ>BB:開始測吧(過了十分鐘 )BB >JJ:有問題JJ>TT:有問題 ,快修(過了十分鐘 )TT >GG:build錯版本了 ,再幫忙放一次(過了十分鐘 )GG>TT:弄好了TT >JJ:弄好了JJ>BB:開始測吧
(過了十分鐘 )BB >JJ:有問題JJ>TT:有問題 ,快修(過了十分鐘 )TT >GG:剛資料庫連錯 ,再幫放一次(過了十分鐘 )GG>TT:弄好了TT >JJ:弄好了JJ>BB:開始測吧BB >JJ:不行 ,我要回家吃飯了 .
![Page 10: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/10.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
After ..
GameDB..JJ >Jenkins: 開始工作吧 .Jenkins>JJ: 環境已替您準備好了JJ >BB : 開始測吧(Past 30 mins)BB >JJ: it’s work
EmulatorJJ -> Jenkins : 夥計開工了Jenkins -> RR : 模擬器替您準備好了(過了十分鐘 )RR -> JJ : OK, it’s work
![Page 11: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/11.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Conclusion
Summary
GameDB..
Member Counting Total
JJ 2m + 5m + 5m 12m
TT 10m + 5m + 5m 20m
GG 10m + 5m 15m
BB 30m + 5 m 35m
Member Counting Total
JJ 2m + 5m 7m
TT 0m
GG 0m
BB 30m + 5 m 35m
Jenkins 10m + 10 m 20m
82min
62min
![Page 12: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/12.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Conclusion
Summary
GameDB Worst Case
Member Counting Total
JJ 2+5+5+5 17m
TT 5+10+5+5+10+5+5+10+5
60m
GG 5+10+5+10+5+10 45m
BB 5+30+5+30+5+30 105m
Member Counting Total
JJ 2+5+5 12m
TT 5+10+5+10 20m
GG 0m
BB 5+30+5+30+5+30 105m
Jenkins 10+10+10+10+10+10
60m
227min
197min
![Page 13: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/13.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Conclusion
Summary
Emulator..Member Counting Total
JJ 2m + 5m + 5m 12m
AA 30m + 5m 35m
RR 10m + 5m 15m
Member Counting Total
JJ 2m + 5m 12m
AA 0m
RR 10m + 5m 15m
Jenkins 30m 30m
62min
57min
![Page 14: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/14.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Problem 2The Magic Machine
![Page 15: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/15.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Before ..
你少裝一個 lib啦
工具的版本錯了阿
昨天明明會動的啊!
你設定寫錯了好嗎
這一定是機器的問題
怎麼可能 !
這兩個版本不相容
在我的機器明明就可以動啊!
環境設定寫錯了
在我電腦就可以你電腦有毒吧?
一定是你的資料有問題
![Page 16: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/16.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
After ..
![Page 17: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/17.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Conclusion
Summary
Jenkins環境純淨 ,保證產出的程式能安全使用
![Page 18: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/18.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Problem 3People Always Make Mistake
![Page 19: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/19.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Before ..
我忘記加一個參數
少 commit一個檔案
資料庫位置錯了
我拿到舊的 code
忘記拿掉那個 Plugin我少做了一步驟
檔案不是最新的 !
有人亂改我的 code
![Page 20: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/20.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
After ..
![Page 21: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/21.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Conclusion
Summary
Jenkins 保證 SVN的 Code一定可用 ,且始終如一
![Page 22: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/22.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Why Jenkins?Hint..
Jenkins並非萬能,主要用來改善程式碼編寫的習慣,以達到高品質軟體,請聽眾不要過分幻想。
![Page 23: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/23.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Why Jenkins?Benefit
Easy to use: java –jar jenkins.warFashion :The web UI
Easy to updateEasy to extend new feature(over 1000 Plugin)
Mobile supportEasy to scale out
https://wiki.jenkins-ci.org/display/JENKINS/Plugins#Plugins-ListViewcolumnplugins
![Page 24: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/24.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Flowchart
CheckoutRun Test CaseBuild ProjectCollect ReportDeployTag JIRA Version
Tag SVN versionSend E-mail
![Page 25: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/25.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
CI Env.SVN
SVNSVN
JIRAJenkins
Windows
Linux
Windows
TestServer
Prod.Server
ICTServer
RD
QA
Manager
![Page 26: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/26.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Conclusion
Conclusion
方便,是為了花更多時間作更有意義的事情
…PRADA Hsiung
![Page 27: Continues integration development](https://reader038.fdocuments.net/reader038/viewer/2022110115/54b6ef2c4a79599e5c8b45ad/html5/thumbnails/27.jpg)
Aplix Confidential and Restricted Copyright 2009 Aplix Corporation. All rights reserved.
Reference
約耳測試: 邁向高品質的12個步驟Android + jenkinsHudson Helper on Androidhttp://blog.vgod.tw/category/divine-code/吊床上的成功學程式設計師常見藉口