ããç¯å¢é
ç½®
ããå¯å¨Jenkins
ãã1ã å®è£
jdk
ããä»ç¥ï¼å»ºè®®1.6æ以ä¸çæ¬ï¼é
置好ç¯å¢åéã
ãã2ã å®è£
tomcat
ããä»ç¥ï¼å®è£
å®è°è¯ä¸tomcatæ¯å¦æ£å¸¸ã
ãã3ã å®è£
ant
ããä¸è½½zipå
ï¼è§£ååé
置好ç¯å¢åéã
ãã4ã å®è£
jenkins
ããä¸è½½warå
ï¼å½å为Jenkinsï¼æ·è´å°tomcat/webappsç®å½ä¸ã
ãã5ã å®è£
Android SDK
ããä¸è½½å®è£
,å®æåé
置好Android_SDK_HOMEç¯å¢åéãæ¤æ¥éª¤ä¸»è¦ç¨äºè¿è¡androidèªå¨åæµè¯ï¼è¥ä¸è¿è¡æ¤é¡¹å¯ç¥è¿ã
ããå®è£
å®æåå¯å¨tomcat/bin/startup.batæ件(linuxä¸æ¯startup.sh)ï¼å¨æµè§å¨è¾å
¥
http://localhost:8080/jenkinsï¼8080为tomcat端å£ï¼å³å¯è®¿é®jenkinsæå¡å¨ã
ããé
ç½®Jenkins
ãã1ã JDKé
ç½®
ããæ°å¢JDKï¼æå®JDKåååJAVA_HOME
ãã2ã ANTé
ç½®
ããæ°å¢ANTï¼æå®ANTåååANT_HOME
ãã3ã Mavené
ç½®
ããä»ç¥ï¼æ¬ææªä½¿ç¨å°Mavenï¼å
·ä½é
ç½®æ¹æ³åèGoogleã
ãã4ã Subversion
ããéæ©1.6çæ¬SVNï¼å¾éUpdate default Subversion credentials cache after successful authentication
ãã5ã é®ä»¶éç¥
ããå¡«åSMTP serverãDefault user E-mail suffixãSystem Admin E-mail AddressãJenkins URLãå¾éUse SMTP Authenticationï¼å¡«åUser NameãPasswordãUse SSLãSMTP portãChareset(UTF-8) ãDefault Content Type(é»è®¤)ãDefault Recipients(é»è®¤æ¶ä»¶äºº)ï¼é
ç½®å®æåå¯è¿è¡æµè¯é®ä»¶ã
ãã6ã Jenkins URL
ããé
置该URLï¼ç¨äºå«äººè®¿é®ã
ããæ件管ç
ãã1ã Hudson Subversion Plug-inï¼jenkinsçsvnæ件ã
ãã2ã Android Emulator Pluginï¼android模æå¨æ件ã
ãã3ã JUnit Attachments Pluginï¼junitæµè¯æ¥åé件æ件ã
ãã4ã Email-ext pluginï¼é®ä»¶æ©å±æ件ãæ¤å¤è¯´æä¸ï¼é»è®¤Jenkinsåªä¼åéæ建失败çé®ä»¶ï¼æ们éå®è£
æ¤æ件æè½èªå®ä¹ä¸ååºæ¯ã
ãã5ã Deploy to container Pluginè¿ç¨åå¸æ件ã
ããèªå¨åæµè¯
ããæå
æºå·¥ç¨
ããAndroidç¨åº
ããæ¬å°è讲è¯å¦ä½æå
ä¸ä¸ªAndroidå·¥ç¨ï¼å½å使ç¨çæ¯antè¿è¡ç¼è¯æºç ã
ãã1ã é¦å
æ建ä¸ä¸ªèªç±é£æ ¼çJobã
ãã2ã æ·»å æºç è·¯å¾ï¼éæ©æ使ç¨ççæ¬æ§å¶å¨ï¼è¾å
¥æºç è·¯å¾ã
ãã3ã æ建触åå¨å¯æ ¹æ®éè¦éæ©æ¯å¦å®æ¶æ建ã
ãã4ã æ建ç¯å¢ï¼æ¤å¤Jenkinså®è£
äºAndroid Emulator Pluginæ件ï¼å¯ä»¥å¯å¨å·²æ模æå¨ææ·»å æ°ç模æå¨ï¼æ¬ææ¡ä¾ä¸ä½¿ç¨çæºè°è¯ã
ãã5ã æ建ï¼å¸è½½ææºä¸åç¨åº adb âs uninstall com.XXXXXX
ãã6ã çæbulid.xmlæ件ï¼-påé¢è·å·¥ç¨æå¨çæ¬å°jenkinsä¸è·¯å¾
ããandroid update project -n *** c:\被æµå·¥ç¨Jobè·¯å¾\workspace
ãã7ã Antè¿è¡ç¼è¯ç¨åºï¼å¹¶å®è£
å°å½åææºä¸
ããant debug install -f c:\被æµå·¥ç¨Jobè·¯å¾\workspace\build.xml
ãã8ã æ建åæä½ï¼æ¬æ¡ä¾ä¸æ建å®æåèªå¨å¯å¨æ建ä¸ä¸ä¸ªæµè¯Job
ããBulid other projectsï¼éæ©æµè¯å·¥ç¨çJob.
ããæå
æµè¯å·¥ç¨
ããAndroidç¨åº
ããæ¬å°è讲è¯å¦ä½æ建ä¸ä¸ªAndroidæµè¯å·¥ç¨ï¼å
æ¬é®ä»¶åéåæµè¯æ¥åå±ç¤ºã
ãã1ã æ建æ¥éª¤1-7åAndroidç¨åºç« èä¸æ ·ï¼ä»ç¥ã
ãã2ã æ¬ææ¡ä¾ä¸æµè¯ç¨åºæ¯éè¿å½ä»¤è¡å¯å¨è¿è¡çï¼æ以å¨æ¤å¤å¢å ä¸ä¸ªæ¹å¤çè¿è¡ãP.S. adb shell am instrument -w -e class com.megafon.test.MegafonTest#testDeleteContact com.megafon.test/android.test.InstrumentationTestRunner ï¼æ¤å¤æ¯éè¿æ¹å¤çæ¥åç¬è¿è¡ä¸ä¸ªä¸ªçæµè¯ç¨ä¾ãé¿å
äºJunit3çæ åºæ§è¡çé®é¢ã
ãã3ã å é¤Workspaceä¸åæ¥åå¨çæµè¯æ¥åæ件ï¼ä¸è¬ä¸å é¤ä¹ä¼è¦çã
ããå¦ä½è®©æµè¯ç¨åºçæxmlæ ¼å¼çæµè¯æ¥åï¼å
¶ä»æç« ä¼éç¹ä»ç»ã
ãã4ã ä»ææºä¸æ·è´æµè¯æ¥åï¼æç»æµè¯æ¯å¨ææºä¸è¿è¡ï¼æ以æ¥åä¹çæå¨ææºä¸ï¼ä½¿ç¨adb pullå½ä»¤ææµè¯æ¥åå
¨é¨æ·è´å°workspaceä¸å¶å®ç®å½ã
ãã5ã æ建åæä½ï¼åå¸æµè¯æ¥åï¼å¦ææ¥åä¸å
å«é件ï¼æ¤å¤ä½¿ç¨å°JUnit Attachments Pluginæ件ã
ãã6ã é®ä»¶éç¥ï¼æ¤å¤ä½¿ç¨å°Email-ext pluginæ件ï¼åé¢çé»è®¤ï¼ç´æ¥ä½¿ç¨æ们å¨ç³»ç»ç®¡çéé¢è®¾ç½®çé»è®¤å¼ã
ãã7ã ç¹å»å³ä¸è§é«çº§æé®ï¼å¯éæ©ä¸ååºæ¯ä¸åéé®ä»¶ã
ãã8ã æµè¯ç»æå±ç¤ºï¼å¨æ¬æ¬¡æ建çæ§å¶å°å¯ä»¥æ¾ç¤ºå½åææçæ建æ¥å¿ã
ãã9ãæµè¯æ¥åç¹å»Test Resultå¯ä»¥æ¾ç¤ºæææµè¯è®°å½ã