《Xcode Server and Continuous Integration Guide - About Continuous Integration in Xcode》官方文檔中文翻譯(一)

說明

由于簡(jiǎn)書添加圖片太麻煩,自己托管到了github盟步,同時(shí)制作了gitbook

目錄


使用Xcode進(jìn)行持續(xù)集成

在Xcode中躏结,持續(xù)集成是自動(dòng)的并且簡(jiǎn)化Mac和iOS應(yīng)用程序的構(gòu)建却盘、分析、測(cè)試和打包的過程媳拴,確保應(yīng)用程序永遠(yuǎn)保持可發(fā)布狀態(tài)黄橘。在持續(xù)集成工作流中,使用Mac上的Xcode本地編寫應(yīng)用并將代碼遷入一個(gè)代碼倉庫中屈溉。然后將代碼發(fā)送到Xcode Server進(jìn)行處理塞关,Xcode Server是由OS X Server提供的一個(gè)服務(wù)。在開發(fā)Mac的Xcode中子巾,將運(yùn)行在server上的bot程序設(shè)置好帆赢。這些bot程序會(huì)使用倉庫中的源代碼來處理你的APP,并且報(bào)告結(jié)果线梗。每一次運(yùn)行bot程序都稱為一次集成椰于,這些行為在應(yīng)用程序的整個(gè)開發(fā)生命周期中定期進(jìn)行。參見圖1-1:

1-1

持續(xù)集成的目標(biāo)是提高軟件質(zhì)量缠导,以下是一些實(shí)現(xiàn)成果:

  • 快速廉羔、便捷并且及早的捕獲問題。bot集成程序可以設(shè)置為當(dāng)你每次向代碼倉庫提交代碼時(shí)、特定計(jì)劃憋他、或者手動(dòng)啟動(dòng)時(shí)執(zhí)行孩饼。這允許你在整個(gè)開發(fā)過程中識(shí)別代碼問題,發(fā)生問題時(shí)解決問題竹挡,防止小問題導(dǎo)致大的問題镀娶。
  • 加強(qiáng)協(xié)作。在整個(gè)持續(xù)集成工作流中揪罕,你的整個(gè)團(tuán)隊(duì)(或者選定的個(gè)人)可以創(chuàng)建bot,觸發(fā)集成梯码,查看動(dòng)態(tài)和下載構(gòu)建文件。如果出現(xiàn)問題好啰,可以自動(dòng)通知編寫出錯(cuò)代碼的成員轩娶。
  • 擴(kuò)大測(cè)試覆蓋面。在本地工作時(shí)框往,在具有多個(gè)配置的多個(gè)設(shè)備上測(cè)試APP是一個(gè)手動(dòng)的并且時(shí)間密集的過程鳄抒。在持續(xù)集成工作流中,這卻是自動(dòng)和簡(jiǎn)單的椰弊。只需要將多個(gè)設(shè)備綁定到服務(wù)器上许溅,或者配置你的工作流使用不同的模擬器,相應(yīng)地配置bot秉版,讓系統(tǒng)為你完成測(cè)試工作贤重。
  • 隨著時(shí)間推移生成構(gòu)建版本和測(cè)試的統(tǒng)計(jì)信息。在持續(xù)集成工作流中清焕,所有的進(jìn)程和錯(cuò)誤都會(huì)生成日志并蝗。在任何給定時(shí)間內(nèi),你都可以看到你的app進(jìn)行到開發(fā)過程的哪一步以及她的成長(zhǎng)過程耐朴。

初見

按照本文檔中概述的步驟借卧,使用Xcode Server搭建一個(gè)持續(xù)集成工作流盹憎。

安裝并設(shè)置Xcode Server

實(shí)現(xiàn)持續(xù)集成工作流的第一步是安裝和配置Xcode Server以執(zhí)行你的集成筛峭。即使你從未設(shè)置過服務(wù)器,你也會(huì)發(fā)現(xiàn)設(shè)置OS X Server并且開啟Xcode Server是快速和簡(jiǎn)單的陪每。

相關(guān)章節(jié)

安裝OS X Server并配置Xcode Server-官方文檔

安裝OS X Server并配置Xcode Server-中文文檔

連接Xcode Server到源代碼倉庫

為了讓bot能夠在Xcode Server進(jìn)行項(xiàng)目的集成影晓,bot必須能夠訪問項(xiàng)目的源代碼。Xcode Server支持兩種流行的源代碼控制系統(tǒng):Git和SVN檩禾。在你開發(fā)的Mac上挂签,你編寫源代碼并且推送到源代碼倉庫。這個(gè)倉庫可以放置在遠(yuǎn)程服務(wù)器(Git或SVN)或者OS X Server(僅Git)盼产。每當(dāng)執(zhí)行集成操作饵婆,bot都會(huì)拉取你最近的源代碼。參見圖1-2:

1-2.png

相關(guān)章節(jié)

訪問源代碼倉庫-官方文檔

訪問源代碼倉庫-中文文檔(TODO)

創(chuàng)建并執(zhí)行bot

bot處于Xcode Server自動(dòng)化工作流的中心戏售。bot通過你設(shè)置的Scheme來構(gòu)建和測(cè)試你的項(xiàng)目侨核。由于Xcode Server能夠訪問項(xiàng)目的源代碼倉庫草穆,因此你可以創(chuàng)建bot,并設(shè)置為定期搓译、每次提交代碼時(shí)或者手動(dòng)執(zhí)行悲柱。你也可以配置bot在集成成功或失敗時(shí)發(fā)送Email通知。Xcode Server同時(shí)允許bot執(zhí)行性能測(cè)試和啟動(dòng)集成前后觸發(fā)器些己。

相關(guān)章節(jié)

配置Bot進(jìn)行持續(xù)集成-官方文檔

配置Bot進(jìn)行持續(xù)集成-中文文檔(TODO)

監(jiān)控并管理Bot

Xcode Server通過開發(fā)Mac上的Xcode,瀏覽器和Email通知向你提供集成狀態(tài)的詳細(xì)信息豌鸡。在你開發(fā)Mac上的Xcode報(bào)告導(dǎo)航欄中,你可以管理bot段标,查看測(cè)試結(jié)果涯冠,讀取集成日志,執(zhí)行或取消集成逼庞,下載產(chǎn)品歸檔文件功偿。Xcode Server還托管了一個(gè)網(wǎng)站,在這個(gè)網(wǎng)站你和你的團(tuán)隊(duì)成員可以通過瀏覽器查看bot程序狀態(tài)往堡,下載文件和產(chǎn)品械荷。bot還可被設(shè)置在集成成功、失敗或者發(fā)生警告時(shí)發(fā)送Email通知虑灰。參見圖1-3

1-3

相關(guān)章節(jié)

從報(bào)告導(dǎo)航欄管理和監(jiān)測(cè)bot吨瞎,從瀏覽器監(jiān)控bot-官方文檔

從報(bào)告導(dǎo)航欄管理和監(jiān)測(cè)bot,從瀏覽器監(jiān)控bot-中文文檔(TODO)

先決條件

在設(shè)置一個(gè)持續(xù)集成工作流時(shí)穆咐,最好了解如何測(cè)試和調(diào)試 Xcode應(yīng)用颤诀。測(cè)試和調(diào)試相關(guān)信息,參見使用Xcode進(jìn)行測(cè)試对湃,使用Xcode進(jìn)行調(diào)試Instruments用戶指南

其余參考

Xcode Server web API允許集成你自己的工具和進(jìn)程來擴(kuò)展Xcode Server的能力崖叫。參考文檔參見Xcode Server API Reference

OS X Server其余功能參考OS X Server: Advanced Administration

官方文檔

官方文檔

文章中的其余部分會(huì)持續(xù)更新...

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末拍柒,一起剝皮案震驚了整個(gè)濱河市心傀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拆讯,老刑警劉巖脂男,帶你破解...
    沈念sama閱讀 211,817評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異种呐,居然都是意外死亡宰翅,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門爽室,熙熙樓的掌柜王于貴愁眉苦臉地迎上來汁讼,“玉大人,你說我怎么就攤上這事『偌埽” “怎么了卜录?”我有些...
    開封第一講書人閱讀 157,354評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)眶明。 經(jīng)常有香客問我艰毒,道長(zhǎng),這世上最難降的妖魔是什么搜囱? 我笑而不...
    開封第一講書人閱讀 56,498評(píng)論 1 284
  • 正文 為了忘掉前任丑瞧,我火速辦了婚禮,結(jié)果婚禮上蜀肘,老公的妹妹穿的比我還像新娘绊汹。我一直安慰自己,他們只是感情好扮宠,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評(píng)論 6 386
  • 文/花漫 我一把揭開白布西乖。 她就那樣靜靜地躺著,像睡著了一般坛增。 火紅的嫁衣襯著肌膚如雪获雕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,829評(píng)論 1 290
  • 那天收捣,我揣著相機(jī)與錄音届案,去河邊找鬼。 笑死罢艾,一個(gè)胖子當(dāng)著我的面吹牛楣颠,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播咐蚯,決...
    沈念sama閱讀 38,979評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼童漩,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了春锋?” 一聲冷哼從身側(cè)響起矫膨,我...
    開封第一講書人閱讀 37,722評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎看疙,沒想到半個(gè)月后豆拨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,189評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡能庆,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了脚线。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搁胆。...
    茶點(diǎn)故事閱讀 38,654評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出渠旁,到底是詐尸還是另有隱情攀例,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布顾腊,位于F島的核電站粤铭,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏杂靶。R本人自食惡果不足惜梆惯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吗垮。 院中可真熱鬧垛吗,春花似錦、人聲如沸烁登。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽饵沧。三九已至锨络,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間狼牺,已是汗流浹背足删。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評(píng)論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留锁右,地道東北人失受。 一個(gè)月前我還...
    沈念sama閱讀 46,382評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像咏瑟,于是被迫代替她去往敵國和親拂到。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評(píng)論 2 349

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