Android持續(xù)集成之Jenkins 部署

Android持續(xù)集成之Jenkins 部署

版權(quán)聲明:本文為博主原創(chuàng)文章鸭蛙,未經(jīng)博主允許不得轉(zhuǎn)載芥颈。

轉(zhuǎn)載請(qǐng)表明出處:http://www.reibang.com/p/292a32918415

[TOC]

0x00安裝

準(zhǔn)備工作如下:
Tomcat8.5下載地址
Jenkins下載鏈接

  • 1 將下載的jenkins.war包放至tomcat下的webapps目錄

  • 2 瀏覽器直接訪問(wèn)如下鏈接即可

    ip:tomcatPort/jenkins/

  • 3 看到如下頁(yè)面后妄呕,按照上面的提示牺荠,需要輸入默認(rèn)生成的管理員密碼婚被,在終端中輸入如下命令

    cat /var/root/.jenkins/secrets/initialAdminPassword

  • 將終端中輸出的密碼填入輸入框子姜,隨后點(diǎn)擊Continue按鈕

屏幕快照 2017-08-17 上午9.51.23.png
  • 重點(diǎn)來(lái)了,Jenkins最強(qiáng)大的特點(diǎn)就是插件燎竖,點(diǎn)擊上圖的Continue后璃弄,會(huì)進(jìn)入下面的頁(yè)面
屏幕快照 2017-08-17 上午9.57.25.png
  • 這里默認(rèn)選擇第一項(xiàng)即可(有的插件不一定能安裝成功,但并不影響Jenkins使用)构回,點(diǎn)擊后進(jìn)入如下自動(dòng)安裝界面
屏幕快照 2017-08-17 上午10.01.32.png
  • 這里有可能出現(xiàn)下面這種情況夏块,解決方法要么就retry一下,要么就Continue繼續(xù)下一步(建議下一步纤掸,少裝一個(gè)不影響使用)
屏幕快照 2017-08-17 上午10.08.19.png
  • 來(lái)到下一步是創(chuàng)建admin用戶脐供,可以跳過(guò)點(diǎn)擊Continue as admin,也可以創(chuàng)建一個(gè)Admin用戶(這里推薦創(chuàng)建一個(gè)用戶,因?yàn)楹笃趧?chuàng)建很麻煩)隨后點(diǎn)擊Save and Finish,結(jié)束安裝
屏幕快照 2017-08-17 上午10.25.27.png

0x01配置Jenkins

Global Tool Configuration

  • 點(diǎn)擊左側(cè)菜單中的系統(tǒng)管理借跪,再點(diǎn)擊列表中的Global Tool Configuration選項(xiàng)政己,進(jìn)入Global Tool Configuration配置頁(yè)面

    WechatIMG24

  • JDK模塊:
    需要將自動(dòng)安裝選項(xiàng)去掉,隨后填入:別名<隨意填>掏愁、JAVA_HOME<填寫本地的JAVA絕對(duì)路徑>

  • Git模塊:
    別名<隨意填>歇由、Path to Git executable<填入本地Git的絕對(duì)路徑>

  • Gradle模塊:
    點(diǎn)擊新增Gradle,隨后去掉自動(dòng)安裝選項(xiàng)卵牍,然后填入:別名<隨意填>、GRADLE_HOME<填入本地Gradle的絕對(duì)路徑>沦泌,這里建議配置多個(gè)糊昙,因?yàn)榛蛟S你所部署的工程需要不同的Gradle進(jìn)行編譯。

  • 最后點(diǎn)擊最下邊的Save按鈕即可

系統(tǒng)屬性

  • 點(diǎn)擊左側(cè)系統(tǒng)管理按鈕谢谦,在列表中選擇系統(tǒng)設(shè)置如下圖所示:

    WechatIMG25

  • 把環(huán)境變量選項(xiàng)勾上


    WechatIMG26
  • 在里面的
    中填入ANDROID_HOME释牺, 中填入你的Android Sdk路徑

  • 最后點(diǎn)擊最下邊的Save按鈕進(jìn)行保存配置,此舉是為了避免在打包時(shí)發(fā)生
    ANDROID_HOME not found的情況

0x02新建一個(gè)任務(wù)

  • 在主頁(yè)中找到創(chuàng)建一個(gè)新任務(wù)的按鈕他宛,如下圖所示
WechatIMG27
  • 輸入任務(wù)名字后船侧,選擇
    構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目 ,點(diǎn)擊底部的 OK 按鈕

  • 打開(kāi)的頁(yè)面中欠气,點(diǎn)擊源碼管理模塊中的 Git 選項(xiàng)厅各,由于我使用oschina的Git庫(kù)且使用https協(xié)議,所以我這里填入倉(cāng)庫(kù)的克隆地址

  • 點(diǎn)擊 ad 按鈕预柒,使用默認(rèn)配置队塘,填入用戶名密碼即可,如下圖所示:

![屏幕快照 2017-08-17 上午11.29.24](http://oupvrckn2.bkt.clouddn.com/屏幕快照 2017-08-17 上午11.29.24.png)

  • 點(diǎn)擊 add 按鈕后宜鸯,下面的分支也可以填入其他分支名

  • 隨后點(diǎn)擊構(gòu)建 Tab滾動(dòng)到最底部憔古,選擇
    增加構(gòu)建步驟,選擇Invoke Gradle script淋袖,然后在 Gradle Version這里選擇你需要使用的版本

  • 最后點(diǎn)擊保存按鈕鸿市,進(jìn)入項(xiàng)目界面

0x03構(gòu)建項(xiàng)目

  • 在項(xiàng)目界面最左側(cè)菜單中,點(diǎn)擊
    立即構(gòu)建按鈕
  • 此時(shí)在左側(cè)的歷史菜單可以看到正在編譯的任務(wù)即碗,點(diǎn)擊進(jìn)去可以看到詳情
  • 左側(cè)的菜單中 Console Output點(diǎn)擊后可以看到控制臺(tái)的輸出

0x04按時(shí)打包

  • 在項(xiàng)目界面最左側(cè)菜單中焰情,點(diǎn)擊配置,滑動(dòng)到構(gòu)建出發(fā)器剥懒,這里對(duì)里面的幾個(gè)選項(xiàng)說(shuō)明如下:
類型 描述
Build periodically 定期進(jìn)行構(gòu)建
Build when a change is pushed to GitHub 根據(jù)提交進(jìn)行構(gòu)建
Poll SCM 定期檢測(cè)代碼更新内舟,如有更新則進(jìn)行構(gòu)建
  • 定時(shí)器(Schedule)的格式,簡(jiǎn)述如下:

MINUTE HOUR DOM MONTH DOW

Type Description Range
MINUTE Minutes within the hour 0-59
HOUR The hour of the day 0-23
DOM The day of the month 1-31
MONTH The month 1-12
DOW The day of the week,where 0 and 7 are Sunday 0-7

通常情況下需要指定多個(gè)值初橘,這時(shí)可以采用如下operator(優(yōu)先級(jí)從上到下):
*適配所有有效的值验游,若不指定某一項(xiàng),則以*占位保檐;
M-N適配值域范圍耕蝉,例如7-9代表7/8/9均滿足;
M-N/X*/X:以X作為間隔夜只;

  • 為了避免在多任務(wù)在同一個(gè)時(shí)刻觸發(fā)構(gòu)建時(shí)垒在,最好配合H字符進(jìn)行描述。
  • 關(guān)于上面的定時(shí)器這里舉個(gè)例子:
    1. H 23 * * 1-5:工作日每晚23:00至23:59之間的某一時(shí)刻盐肃;

0x05 總結(jié)

以上是利用Jenkins持續(xù)集成的部署方式之一爪膊,歡迎支持权悟。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市推盛,隨后出現(xiàn)的幾起案子峦阁,更是在濱河造成了極大的恐慌,老刑警劉巖耘成,帶你破解...
    沈念sama閱讀 217,907評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件榔昔,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡瘪菌,警方通過(guò)查閱死者的電腦和手機(jī)撒会,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)师妙,“玉大人诵肛,你說(shuō)我怎么就攤上這事∧ǎ” “怎么了怔檩?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,298評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)蓄诽。 經(jīng)常有香客問(wèn)我薛训,道長(zhǎng),這世上最難降的妖魔是什么仑氛? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,586評(píng)論 1 293
  • 正文 為了忘掉前任乙埃,我火速辦了婚禮,結(jié)果婚禮上锯岖,老公的妹妹穿的比我還像新娘介袜。我一直安慰自己,他們只是感情好嚎莉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布米酬。 她就那樣靜靜地躺著,像睡著了一般趋箩。 火紅的嫁衣襯著肌膚如雪赃额。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,488評(píng)論 1 302
  • 那天叫确,我揣著相機(jī)與錄音跳芳,去河邊找鬼。 笑死竹勉,一個(gè)胖子當(dāng)著我的面吹牛飞盆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,275評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼吓歇,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼孽水!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起城看,我...
    開(kāi)封第一講書(shū)人閱讀 39,176評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤女气,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后测柠,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體炼鞠,經(jīng)...
    沈念sama閱讀 45,619評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評(píng)論 3 336
  • 正文 我和宋清朗相戀三年轰胁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了谒主。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,932評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡赃阀,死狀恐怖霎肯,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情凹耙,我是刑警寧澤姿现,帶...
    沈念sama閱讀 35,655評(píng)論 5 346
  • 正文 年R本政府宣布肠仪,位于F島的核電站肖抱,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏异旧。R本人自食惡果不足惜意述,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吮蛹。 院中可真熱鬧荤崇,春花似錦、人聲如沸潮针。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,871評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)每篷。三九已至瓣戚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間焦读,已是汗流浹背子库。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,994評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留矗晃,地道東北人仑嗅。 一個(gè)月前我還...
    沈念sama閱讀 48,095評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親仓技。 傳聞我的和親對(duì)象是個(gè)殘疾皇子鸵贬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容