Jenkins+Xcode實現(xiàn)自動打包 下

1、安裝Homebrew蚓胸,Homebrew 是Mac系統(tǒng)的包管理器,用于安裝一些其他必需的工具軟件除师,比如NodeJS沛膳,Jenkins等。已經(jīng)安裝的請略過汛聚。

本文使用的Homebrew 1.3.5锹安,使用命令$ brew --version查看。

2倚舀、安裝Jenkins叹哭,

在終端執(zhí)行

$ brew install Jenkins

Jenkins需要Java環(huán)境,請確保已經(jīng)集成Java環(huán)境痕貌,安裝不成功請移步百度风罩。


安裝Jenkins

安裝成功之后切換到Jenkins目錄,啟動

$ cd /usr/local/Cellar/jenkins/2.84/libexec

$? java -jar ./jenkins.war ? ? (也可以使用$ jenkins進行啟動,前者可以設置端口號$ java -jar jenkins.war --httpPort=8888 )

控制臺會打印一些內容

控制臺 啟動Jenkins

上圖紅線上方有一句話 舵稠,

Please use the following password to proceed to installation:

因此打開http://localhost:8080超升,輸入密碼繼續(xù)安裝入宦。

打開http://localhost:8080,輸入密碼

選擇install selected plugins之后

選擇install plugins之后


安裝成功之后會讓你注冊

注冊Jenkins

注冊成功之后

注冊成功

跳轉下圖所示界面

安裝啟動到此為止

或者直接使用$ jenkins啟動室琢,出現(xiàn)下圖說明啟動成功

啟動成功

3乾闰、配置Jenkins

①安裝需要用到的插件

系統(tǒng)管理->插件管理->可選插件? 搜索Git plugin、GitHub Organization Folder Plugin盈滴、Xcode integration涯肩、Keychains and Provisioning Profiles Management安裝

以上分別是Git插件,Xcode插件雹熬,證書管理插件宽菜,還可以根據(jù)需要安裝命令行插件。

安裝成功之后重啟Jenkins竿报。

②配置證書

系統(tǒng)管理-> Keychains and Provisioning Provisioning Management

打開/Users/{用戶名}/Library/Keychains/目錄選擇login.keychain文件點擊upload

Code Signing Identity :配置打包要用的證書铅乡。

Provisioning Profiles Directory Path:/Users/{用戶名}/Library/MobileDevice/Provisioning ?Profiles/

點擊選擇文件,選擇Provisioning Profiles Directory Path路徑下的文件烈菌,upload阵幸。會加載上傳的provisioningprofile文件

配置鑰匙串與Provisioning? Profiles


③系統(tǒng)設置

系統(tǒng)管理->系統(tǒng)設置->Xcode builder

系統(tǒng)設置


④新建項目

回到首頁,選擇新建芽世,創(chuàng)建一個自由風格的軟件

新建項目

⑤配置項目

填寫項目名稱

填寫項目名稱與地址

源碼管理

Repository URL :倉庫地址

Credentials: 選擇高級 設置好Git的賬戶密碼之后挚赊,這里選擇設置好的賬號密碼。

Branches to build:默認指定主分支

源碼管理

構建觸發(fā)器

Build periodically (定時build):設置每天23點build

Poll SCM (poll source code management)? 輪詢源碼管理

需要設置源碼的路徑才能起到輪詢的效果济瓢。一般設置為類似結果: 0/5每5分鐘輪詢一次

構建觸發(fā)器

構建

選擇Xcode構建
基本配置
導出包的格式與位置
鑰匙串

使用cocoapods管理項目的需要如下配置

Xcode workspace file:{項目名}.xcworkspace文件位置

cocoapods項目配置

保存之后荠割,選擇立即構建,

構建結果
歸檔成功后生成的文件

哎呀呀旺矾,失敗了蔑鹦,點進去查看下日志。

"Error Domain=IDEProvisioningErrorDomain Code=9 \"\"Test8.app\" requires a provisioning profile.\" UserInfo={NSLocalizedDescription=\"Test8.app\" requires a provisioning profile., NSLocalizedRecoverySuggestion=Add a profile to the \"provisioningProfiles\" dictionary in your Export Options property list.}"

)}

error: exportArchive: "Test8.app" requires a provisioning profile.

Error Domain=IDEProvisioningErrorDomain Code=9 ""Test8.app" requires a provisioning profile." UserInfo={NSLocalizedDescription="Test8.app" requires a provisioning profile., NSLocalizedRecoverySuggestion=Add a profile to the "provisioningProfiles" dictionary in your Export Options property list.}

** EXPORT FAILED **

需要在導出plist文件(也就是上圖中development86xxxxxPPExport.plist)中添加provisioningProfiles屬性箕宙。先不要修改plist嚎朽,因為這個文件是根據(jù)我們構建的時候填寫的參數(shù)自動生成的。

其實這個這個問題是Jenkins版本與Xcode版本不對應造成的柬帕。

使用sudo xcode-select -switch /Applications/Xcode8.3.app切換到Xcode8.3哟忍,

立即構建->成功啦。

構建成功

那么問題來了陷寝,由于swift版本的問題锅很,公司的項目只能在Xcode8.2上運行,其他Xcode構建會失敗盼铁。

怎么辦呢粗蔚,使用萬能的命令行吧,想怎么樣就怎么樣饶火。不用考慮Jenkins版本問題鹏控。

只需要在構建的時候選擇Execute shell ?自動構建命令

Execute shell

到此致扯,大家趕緊給自己的項目配置下自動打包環(huán)境吧。

ad-hoc

修改export method当辐,但是從日志中查看抖僵,簽名依然使用的開發(fā)證書。

是因為Xcode自動管理管理證書缘揪,signing certificate 使用的是開發(fā)證書耍群,如果需要指定證書打包,那么取消自動管理找筝。

自動管理簽名

很有用

還有一個很實用的東西--構建后操作

構建成功后可以郵件通知相關人員蹈垢,還可以釘釘通知,具體操作請百度袖裕。

構建后操作

以上就是全部內容曹抬。希望對大家有幫助,寫的不對的地方急鳄,還請批評指正谤民。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市疾宏,隨后出現(xiàn)的幾起案子张足,更是在濱河造成了極大的恐慌,老刑警劉巖坎藐,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件为牍,死亡現(xiàn)場離奇詭異,居然都是意外死亡岩馍,警方通過查閱死者的電腦和手機吵聪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兼雄,“玉大人,你說我怎么就攤上這事帽蝶∩饫撸” “怎么了?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵励稳,是天一觀的道長佃乘。 經(jīng)常有香客問我,道長驹尼,這世上最難降的妖魔是什么趣避? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮新翎,結果婚禮上程帕,老公的妹妹穿的比我還像新娘住练。我一直安慰自己,他們只是感情好愁拭,可當我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布讲逛。 她就那樣靜靜地躺著,像睡著了一般岭埠。 火紅的嫁衣襯著肌膚如雪盏混。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天惜论,我揣著相機與錄音许赃,去河邊找鬼。 笑死馆类,一個胖子當著我的面吹牛混聊,可吹牛的內容都是我干的。 我是一名探鬼主播蹦掐,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼技羔,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了卧抗?” 一聲冷哼從身側響起藤滥,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎社裆,沒想到半個月后拙绊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡泳秀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年标沪,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嗜傅。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡金句,死狀恐怖,靈堂內的尸體忽然破棺而出吕嘀,到底是詐尸還是另有隱情违寞,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布偶房,位于F島的核電站趁曼,受9級特大地震影響,放射性物質發(fā)生泄漏棕洋。R本人自食惡果不足惜挡闰,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧摄悯,春花似錦赞季、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至叨橱,卻和暖如春典蜕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背罗洗。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工愉舔, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人伙菜。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓轩缤,卻偏偏與公主長得像,于是被迫代替她去往敵國和親贩绕。 傳聞我的和親對象是個殘疾皇子火的,可洞房花燭夜當晚...
    茶點故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內容