@TOC
一瓢阴,Jenkins概述
Jenkins 是一款流行的開(kāi)源持續(xù)集成(Continuous Integration)工具络拌,廣泛用于項(xiàng)目開(kāi)發(fā)鬼癣,具有自動(dòng)化構(gòu)建饵骨、測(cè)試和部署等功能翘悉。Jenkins起源于Hudson(Hudson是商用的),主要用于持續(xù)居触、自動(dòng)的構(gòu)建/測(cè)試軟件項(xiàng)目妖混、監(jiān)控外部任務(wù)的運(yùn)行(這個(gè)比較抽象,暫且寫(xiě)上轮洋,不做解釋?zhuān)┲剖小enkins用Java語(yǔ)言編寫(xiě),可在Tomcat等流行的servlet容器中運(yùn)行弊予,也可獨(dú)立運(yùn)行祥楣。通常與版本管理工具(SCM)、構(gòu)建工具結(jié)合使用块促。常用的版本控制工具有SVN荣堰、GIT,構(gòu)建工具有Maven竭翠、Ant振坚、Gradle。
二斋扰,Jenkins安裝
1. 下載Jenkins官網(wǎng)
2. 安裝 JDK/Maven
export JAVA_HOME=/usr/java/jdk1.8.0_111
export MAVEN_HOME=/opt/apache-maven-3.3.9
- 四種安裝方式:
- 離線安裝
## http://pkg.jenkins-ci.org/redhat/
wget http://pkg.jenkins-ci.org/redhat/jenkins-2.39-1.1.noarch.rpm ## 下載(也可以Windows下載再轉(zhuǎn)過(guò)來(lái))
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins.io.key ## 公鑰
sudo yum -y install jenkins-*.noarch.rpm
- 在線安裝
## http://pkg.jenkins-ci.org/redhat/
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
sudo yum -y install jenkins
- 基于 Tomcat 安裝
- 安裝并啟動(dòng) Tomcat渡八;
- 從官網(wǎng)下載 jenkins.war至 $CATALINA_BASE/webapps,Tomcat 會(huì)自動(dòng)部署传货;
- 瀏覽器訪問(wèn):http://centos:8080/jenkins/
- 免安裝方式
wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
sudo java -jar jenkens.war ## 啟動(dòng)服務(wù)屎鳍,直至看到日志 `Jenkins is fully up and running`
curl http://localhost:8080/ ## Jenkins 已就緒
3. 調(diào)整配置文件
## sudo vim /etc/sysconfig/jenkins
JENKINS_USER="root" ## 原值 "jenkins" 必須修改,否則權(quán)限不足
JENKINS_PORT="8080" ## 原值 "8080" 可以不修改
## 還有開(kāi)啟 HTTPS 相關(guān)參數(shù)问裕,此處不打算開(kāi)啟逮壁,故不作說(shuō)明
安裝目錄: /usr/lib/jenkins
工作目錄: /var/lib/jenkins(對(duì)應(yīng)于環(huán)境變量 JENKINS_HOME)
4. 啟動(dòng)
sudo systemctl enable jenkins
sudo systemctl restart jenkins
查看日志文件: sudo tail -f /var/log/jenkins/jenkins.log
啟動(dòng)后會(huì)生成文件 hudson.model.UpdateCenter.xml撤卢,需要修改它怯屉,
否則瀏覽器首次進(jìn)入時(shí)會(huì)卡在“Jenkins 正在啟動(dòng)狗热,請(qǐng)稍后…”
## 原值: http://updates.jenkins-ci.org/update-center.json
## 新值: http://mirror.xmission.com/jenkins/updates/update-center.json
## 或者: http://mirror.xmission.com/jenkins/updates/current/update-center.json
sudo cat /var/lib/jenkins/hudson.model.UpdateCenter.xml
sudo sed -i 's/updates.jenkins-ci.org/mirror.xmission.com\/jenkins\/updates/g' /var/lib/jenkins/hudson.model.UpdateCenter.xml
sudo cat /var/lib/jenkins/hudson.model.UpdateCenter.xml
sudo systemctl restart jenkins
5. 防火墻放行
### sudo vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
### 重啟生效: sudo systemctl restart iptables
6. 卸載
如果要重裝滤灯,或者本機(jī)不需要 Jenkins,可卸載:
sudo systemctl stop jenkins
sudo systemctl disable jenkins
sudo yum -y remove jenkins
sudo rm -rf /var/{lib,log,cache}/jenkins /usr/lib/jenkins /root/.jenkins
sudo rm -rf `sudo find /{etc,var,run} -name "jenkins*"`
7. mac 下安裝
- 使用osx系統(tǒng)自帶的homebrew來(lái)安裝jenkins
- 需要安裝至少java1.8 忧饭,如果沒(méi)有安裝會(huì)有提示扛伍,下載jdk1.8
- java安裝完畢,繼續(xù)下面步驟词裤,鏈接 launchd 配置文件
$ ln -sfv/usr/local/opt/jenkins/*.plist ~/Library/LaunchAgents
//如果要其他機(jī)器也可以訪問(wèn)刺洒,把ip地址改為廣播地址:--httpListenAddress=0.0.0.0
$ launchctl load~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist
- 命令行啟動(dòng)Jenkins
$ jenkins
- 一切順利的話,打開(kāi)瀏覽器輸入:http://localhost:8080/
就能看到j(luò)enkins已經(jīng)運(yùn)行起來(lái)了吼砂,如果你更換了端口就是你后來(lái)設(shè)置的端口逆航。
接下來(lái)打開(kāi)Jenkins后會(huì)讓去一個(gè)填寫(xiě)password的頁(yè)面如下圖,存儲(chǔ)password的地方就是圖片上那行紅色字體目錄下帅刊,使用終端 cat + 紅色字體路徑就看到了
然后將我們得到的password輸入到“Administrator password“中纸泡,即可進(jìn)入如下界面漂问,接著安裝一些建議的插件(左邊的)赖瞒,安裝過(guò)程中,有的插件可能會(huì)安裝失敗蚤假,強(qiáng)烈建議點(diǎn)擊右下角的重試栏饮,直到把建議安裝的都裝好。(因?yàn)槲疫@邊安裝之后磷仰,在Jenkins插件管理安裝插件一直失敗袍嬉,如果這一步?jīng)]把有些必須的插件裝好,如git灶平,只能一個(gè)個(gè)下載上傳插件就很麻煩)
插件安裝完成后伺通,可能會(huì)卡在如下界面,不會(huì)自動(dòng)跳轉(zhuǎn)逢享,刷新下界面即可:
在刷新后的界面中注冊(cè)罐监,輸入用戶(hù)名和密碼,建議輸入后點(diǎn)藍(lán)色按鈕保存完成瞒爬,如下:
注冊(cè)成功后弓柱,點(diǎn)擊”Start using Jenkins”
三,Jenkins配置
1. 登錄
瀏覽器進(jìn)入 http://centos:8080/
首次進(jìn)入需要輸入初始密碼來(lái)解鎖侧但,初始密碼查看方法: sudo cat /var/lib/jenkins/secrets/initialAdminPassword
進(jìn)入 Jenkins 定制界面矢空,讓選擇 Install suggested plugins 或 Select plugins to install 時(shí),兩者都不要選禀横,直接關(guān)閉屁药,下一個(gè)界面點(diǎn)擊“Start using Jenkins”;
修改登錄密碼:主界面右上角“注銷(xiāo)”鏈接的左邊的用戶(hù)名下拉菜單中點(diǎn)“設(shè)置”柏锄。
2. 安全設(shè)置
默認(rèn)情況下酿箭,任何用戶(hù)都可以使用 Jenkins 進(jìn)行發(fā)布立莉。
可以進(jìn)入相關(guān)設(shè)置:系統(tǒng)管理 / Configure Global Security,
選擇 Jenkins專(zhuān)有用戶(hù)數(shù)據(jù)庫(kù),不要選中 允許用戶(hù)注冊(cè)七问;
選擇 登錄用戶(hù)可以做任何事蜓耻,選中 Allow anonymous read access
3. 插件安裝方法
- 離線安裝:
手工下載(*.hpi): http://updates.jenkins-ci.org/download/plugins/
進(jìn)入:系統(tǒng)管理 / 管理插件 / 高級(jí),然后上傳插件進(jìn)行安裝械巡。
無(wú)需重啟 Jenkins 插件即生效刹淌。 -
在線安裝:
進(jìn)入:系統(tǒng)管理 / 管理插件 / 可選插件
查找并勾選所需插件,點(diǎn)擊“直接安裝”讥耗;
無(wú)需重啟 Jenkins 插件即生效有勾。如遇失敗可重試或離線安裝。
4. 工具設(shè)置
進(jìn)入:系統(tǒng)管理 / Global Tool Configuration
JDK 下不勾選“自動(dòng)安裝”古程,指定別名=JDK-1.8.0.111, JAVA_HOME=/usr/java/jdk1.8.0_111
Maven 下不勾選“自動(dòng)安裝”蔼卡,指定別名=Maven-3.3.9, MAVEN_HOME=/opt/apache-maven-3.3.9
點(diǎn)擊 Save 按鈕。
重啟 Jenkins 后生效:sudo systemctl restart jenkins
5. 安裝ios打包需要插件
- 管理本地的keychain和iOS證書(shū)的插件Keychains and Provisioning Profiles Management
- 用于xcode構(gòu)建Xcode integration
安裝方式:
方案一:在可選中搜索插件名 挣磨,勾選安裝雇逞。若安裝報(bào)錯(cuò)(參照安裝Jenkins時(shí)不能聯(lián)網(wǎng)安裝插件問(wèn)題解決),如果還不行茁裙,直接進(jìn)入方案二塘砸。
方案二:去Jenkins-plug官網(wǎng)下載插件,然后選擇高級(jí)tab晤锥,上傳.hpi文件
6. IOS 打包前配置
-
配置Keychains and Provisioning Profiles Management
接下來(lái)配置Keychains and Provisioning Profiles Management掉蔬,根據(jù)順序選擇首頁(yè)>系統(tǒng)管理>Keychains and Provisioning Profiles Management如圖
需要上傳login.keychain文件,該文件獲取方法矾瘾,在終端中輸入:
cd ~/Library/Keychains
在終端鍵入ls詳見(jiàn)下圖
將login.keychain文件upload之后女轿,會(huì)出現(xiàn)下圖的界面,根據(jù)需要將證書(shū)添加進(jìn)去即可壕翩,但是由于macOS10.12以及以后的系統(tǒng)里面沒(méi)有l(wèi)ogin.keychain文件蛉迹,只有l(wèi)ogin.keychain-db,可以復(fù)制出來(lái)刪除-db,也可以創(chuàng)建一個(gè)快捷方式名字叫做login.keychain戈泼,upload就好了婿禽。(上傳keychain,路徑用自己改名后的那個(gè))
關(guān)于code sign ident 這個(gè)怎么來(lái)的 其實(shí)只是在keychain中找到對(duì)應(yīng)的證書(shū)完整復(fù)制名字貼進(jìn)去即可
然后添加Provisioning Profiles大猛,上傳方法和上傳login.keychain一樣扭倾,去選擇Provisioning Profiles文件,然后upload挽绩,然后結(jié)果如下圖膛壹,藍(lán)色框內(nèi)的是固定格式的/Users/用戶(hù)名/Library/MobileDevice/Provisioning Profiles (這是固定格式,只需要把用戶(hù)名替換成自己的mac用戶(hù)名即可,可以試著用終端一層層進(jìn)入 cd /Users/用戶(hù)名/Library/MobileDevice)
- 配置任務(wù)
然后創(chuàng)建一個(gè)任務(wù)模聋,自由風(fēng)格的任務(wù)肩民,因?yàn)闃?gòu)建方法會(huì)有兩種,除了共同的地方,構(gòu)建會(huì)分為兩部分解答链方,第一部分是macOS10.12以前的構(gòu)建方法持痰,但是由于Jenkins的Xcode和Mac的系統(tǒng)版本問(wèn)題,所以建議使用第二種方法祟蚀。
創(chuàng)建一個(gè)自由風(fēng)格的任務(wù)工窍,然后在選擇丟棄舊的構(gòu)建,至于天數(shù)和保持的最大個(gè)數(shù)前酿,按照自己的需求來(lái)就好患雏,如圖
- 源碼管理
Git: 支持主流的github 和gitlab代碼倉(cāng)庫(kù)。因我們的研發(fā)團(tuán)隊(duì)使用的是gitlab罢维,所以下面我只會(huì)對(duì)該項(xiàng)進(jìn)行介紹淹仑。
Repository URL:倉(cāng)庫(kù)地址Credentials:憑證》畏酰可以使用HTTP方式的用戶(hù)名密碼匀借,也可以是RSA文件。 但要通過(guò)后面的"ADD"按鈕添加憑證悬槽。
Branches to build:構(gòu)建的分支怀吻。*/master表示master分支瞬浓,也可以設(shè)置為其他分支初婆。
源碼瀏覽器:你所使用的代碼倉(cāng)庫(kù)管理工具,如github, gitlab. URL:填入上方的倉(cāng)庫(kù)地址即可猿棉。
Version: 8.7 這個(gè)是我們gitlab服務(wù)器的版本磅叛。
Subversion:就是SVN,這里不作介紹萨赁。
在Repository URL里面添加你的git地址弊琴,我這里添加的是http的,如果你的項(xiàng)目是使用的ssh的杖爽,那么就將git開(kāi)頭的地址填寫(xiě)上敲董,然后店家Add添加你的git帳號(hào),如果你的事ssh的慰安,將ssh的密匙填寫(xiě)上腋寨,具體的自己百度一下就好咯,我就不多寫(xiě)了化焕,結(jié)果如圖
- 構(gòu)建觸發(fā)器
構(gòu)建觸發(fā)器萄窜,顧名思義,就是構(gòu)建任務(wù)的觸發(fā)器
觸發(fā)遠(yuǎn)程構(gòu)建(例如,使用腳本): 該選項(xiàng)會(huì)提供一個(gè)接口查刻,可以用來(lái)在代碼層面觸發(fā)構(gòu)建键兜。這里不做介紹,后期可能會(huì)用到穗泵。
Build after other projects are built: 該選項(xiàng)意思是"在其他projects構(gòu)建后構(gòu)建"普气。這里不作介紹,后期可能會(huì)用到該選項(xiàng)佃延。
Build periodically: 周期性的構(gòu)建棋电。很好理解,就是每隔一段時(shí)間進(jìn)行構(gòu)建苇侵。日程表類(lèi)似 linux crontab書(shū)寫(xiě)格式赶盔。如下圖的設(shè)置,表示每隔30分鐘進(jìn)行一次構(gòu)建榆浓。
Build when a change is pushed to GitLab:當(dāng)有更改push到gitlab代碼倉(cāng)庫(kù)于未,即觸發(fā)構(gòu)建。后面會(huì)有一個(gè)觸發(fā)構(gòu)建的地址陡鹃,一般被稱(chēng)為webhooks烘浦。需要將這個(gè)地址配置到gitlab中,webhooks如何配置后面介紹萍鲸。這個(gè)是常用的構(gòu)建觸發(fā)器闷叉。
Poll SCM:該選項(xiàng)是配合上面這個(gè)選項(xiàng)使用的。當(dāng)代碼倉(cāng)庫(kù)發(fā)生改動(dòng)脊阴,jenkins并不知道握侧。需要配置這個(gè)選項(xiàng),周期性的去檢查代碼倉(cāng)庫(kù)是否發(fā)生改動(dòng)嘿期。
構(gòu)建觸發(fā)器品擎,也就是什么時(shí)候觸發(fā)自動(dòng)打包我這里填寫(xiě)的是H 20 * * 這個(gè)意思就是H小時(shí)然后,后面跟著數(shù)字备徐,在后面就是日月年萄传,代表的我認(rèn)為是每次都觸發(fā),也就是每天每月每年蜜猾,但是Jenkins的時(shí)間不是絕對(duì)的秀菱,一般都是在隨機(jī)在半點(diǎn),也就是設(shè)置20點(diǎn)蹭睡,大概會(huì)在20:30分左右會(huì)觸發(fā)衍菱,如果需要兩個(gè)時(shí)間,那么格式可以這樣H 20,22 * * *結(jié)果如圖
- 構(gòu)建環(huán)境
在構(gòu)建環(huán)境里面勾選Keychains and Code Signing Identities和Mobile Provisioning Profiles棠笑,Keychains and Code Signing Identities是打包需要的證書(shū)梦碗,Mobile Provisioning Profiles是打包需要的配置文件,都是可以自己選擇的
7. iOS 打包構(gòu)建
接下來(lái)就是構(gòu)建了,因?yàn)镴enkins對(duì)新版的Xcode插件兼容不好洪规,只能用腳本來(lái)打包印屁,但是老版本的Xcode可以使用Jenkins的Xcode插件,下面將構(gòu)建一為使用Xcode插件的斩例,構(gòu)建二是腳本的
7.1 使用Xcode插件
在構(gòu)建里面點(diǎn)擊增加構(gòu)建步驟雄人,然后點(diǎn)擊Xcode.General build settings在Target里面填寫(xiě)你的項(xiàng)目名稱(chēng),Clean before build勾選YES念赶,勾選Pack application, build and sign .ipa?础钠,然后會(huì)有新的選項(xiàng)Export method是你要打的包的類(lèi)型,就是你在手動(dòng)打包的時(shí)候選額的ad-hoc或者Appstore那四個(gè)選項(xiàng)叉谜,這個(gè)按照你要打的類(lèi)型填寫(xiě)旗吁,.ipa filename pattern是你打出包ipa的名字,我的這里填寫(xiě)了項(xiàng)目名字和-$(BUILD_DATE)停局,意思就是在后面追加時(shí)間很钓,Output directory是導(dǎo)出ipa的目錄,如果不填寫(xiě)董栽,會(huì)在Jenkins默認(rèn)的目錄.
Code signing & OS X keychain options勾選Unlock Keychain?,在Keychain path那里填寫(xiě)${HOME}/Library/Keychains/login.keychain,意思是找到你的login.keychain(登陸鑰匙串)码倦,如果你的是復(fù)制出來(lái)改的名字,那么就填寫(xiě)你相對(duì)應(yīng)的目錄锭碳,Keychain password就是你電腦的登陸密碼袁稽。詳見(jiàn)圖
Advanced Xcode build options勾選Clean test reports?,如果你使用了cocoapods那么填寫(xiě)Xcode Workspace File擒抛,如果沒(méi)有使用cocoapods填寫(xiě)Xcode Project Directory推汽,然后填寫(xiě)B(tài)uild output directory就是你到處ipa的路徑,
完成之后,回到任務(wù)操作頁(yè)面闻葵,點(diǎn)擊立即構(gòu)建民泵,如果配置沒(méi)問(wèn)題基本就能構(gòu)建成功。
偶爾會(huì)出現(xiàn)報(bào)錯(cuò)槽畔,點(diǎn)擊任務(wù)編號(hào),也就是上圖的#4#5#6胁编,然后進(jìn)入任務(wù)詳情頁(yè)厢钧,進(jìn)入控制臺(tái)輸出看看哪里出了問(wèn)題,我之前是報(bào)了profile文件不匹配的error(target填錯(cuò)了)嬉橙,然后改了就好了
對(duì)應(yīng)目錄生成了文件,所生成的內(nèi)容也是需要自己選擇配置的
7.2 使用腳本構(gòu)建
蒲公英上傳請(qǐng)參考:蒲公英
因?yàn)镴enkins對(duì)現(xiàn)在的Xcode9插件兼容性不好市框,打不了包霞扬,所以我們使用了xcodebuild打包,下面是腳本:
#!/bin/sh #因?yàn)镴enkins打包可能是自動(dòng)的,那么build號(hào)是不會(huì)自己再去修改然后push到git上面的喻圃,所以這個(gè)buildPlist就是修改build號(hào)的路徑萤彩。
buildPlist="/Users/apple/.jenkins/workspace/longxin_a/eCloud/Build/LongHu/Config/eCloud-Info.plist"
#這個(gè)獲取現(xiàn)在的 月日時(shí)分 用它來(lái)做build號(hào)
buildNumber=$(date +"%m%d%H%M")
#修改plist文件需要/usr/libexec/PlistBuddy -c命令,CFBundleVersion是修改的這個(gè)build號(hào)斧拍,
# $buildNumber是你要修改的數(shù)值雀扶,$buildPlist是你修改哪個(gè)地方的plist文件。
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$buildPlist"
#這個(gè)是獲取當(dāng)前的build號(hào)肆汹,本來(lái)是用來(lái)看看有沒(méi)有修改成功的 #newBuildName=$(/usr/libexec/PlistBuddy -c "print :CFBundleVersion" "$buildPlist")
#這個(gè)是打印愚墓,帶自動(dòng)換行的打印
echo $newBuildName
#因?yàn)槲遗滤薷膒list的時(shí)候需要時(shí)間,所以索性在這里我讓他等了3秒昂勉,當(dāng)然你也可以去掉 sleep 3
#這個(gè)buildPath是到時(shí)候我生成xcarchive文件的路徑和打ipa時(shí)候需要找到xcarchive的路徑
buildPath="/Users/apple/.jenkins/workspace/longxin_a/build/Release-iphoneos/eCloud.xcarchive"
#這個(gè)路徑是我生成ipa的路徑 ipaPath="/Users/apple/Documents/longhuBuild/"
#這個(gè)是ExportOptions.plist的路徑浪册,有這個(gè)就不用在用腳本寫(xiě)證書(shū)了,這個(gè)plist你只要手動(dòng)打過(guò)包岗照,那么在生成ipa的文件夾里面就會(huì)有议经,找一個(gè)自己不經(jīng)常修改的地方放在那里,寫(xiě)上這個(gè)路徑就好谴返,當(dāng)然如果你不想這么做煞肾,想用shell語(yǔ)言設(shè)置證書(shū),我會(huì)在 問(wèn)題 列表里面有介紹
exportOptionsplistPath='/Users/apple/.jenkins/workspace/ExportOptions.plist'
#因?yàn)槲沂褂昧薱ocoapods所以這里用的-workspace嗓袱,如果你沒(méi)有使用cocoapods使用-project籍救,下面的命令都一樣 #這個(gè)命令主要是用來(lái)clean,clean的是Release的路徑渠抹,clean的是/Users/app***eCloud.xcworkspace路徑的eCloud蝙昙,
xcodebuild -workspace /Users/apple/.jenkins/workspace/longxin_a/eCloud.xcworkspace -scheme eCloud -configuration "Release" clean
#這個(gè)是生成xcarchive,Release的
xcodebuild -workspace /Users/apple/.jenkins/workspace/longxin_a/eCloud.xcworkspace -scheme eCloud -archivePath ${buildPath} -configuration "Release" archive
#這個(gè)是將xcarchive文件打包成ipa
xcodebuild -exportArchive -archivePath ${buildPath} -exportPath ${ipaPath} -exportOptionsPlist ${exportOptionsplistPath} -allowProvisioningUpdates
8. 郵箱通知
Jenkins是有郵件通知的∥嗳矗現(xiàn)在開(kāi)始設(shè)置奇颠,首先你已經(jīng)安裝了插件Email Extension Plugin,這個(gè)在插件那里直接安裝就好這是第一步放航;然后進(jìn)入系統(tǒng)管理->系統(tǒng)設(shè)置找到Jenkins Location模塊烈拒,在系統(tǒng)管理員郵件地址填寫(xiě)你的系統(tǒng)管理郵箱,這個(gè)郵箱是你發(fā)送通知郵件的郵箱广鳍,然后找到Extended E-mail Notification模塊
然后找到構(gòu)建后操作荆几,點(diǎn)擊增加構(gòu)建后的操作步驟點(diǎn)擊Editable Email Notification,在Project From里面寫(xiě)上管理者郵箱赊时,也就是發(fā)送郵件的郵箱吨铸,然后點(diǎn)擊Advanced Setting;里面有三個(gè)選項(xiàng),分別是你在系統(tǒng)設(shè)置里面勾選的那幾個(gè)祖秒,根據(jù)需求填寫(xiě)就好诞吱,我這里填寫(xiě)的是Always舟奠,也就是無(wú)論構(gòu)建成功還是失敗,Recipient List是接收者的郵箱,這里多個(gè)郵箱用英文逗號(hào)隔開(kāi)——’,’
9. 上傳到fir
- 先去下載fir插件
- 然后在Jenkins里面點(diǎn)擊系統(tǒng)管理->管理插件->高級(jí)房维,然后滑動(dòng)到上傳插件那里沼瘫,選擇剛才下載的插件,點(diǎn)擊上傳握巢,等待上傳成功后晕鹊,進(jìn)入到你的項(xiàng)目配置里面滑動(dòng)到最下面,也就是找到構(gòu)建后操作暴浦,點(diǎn)擊增加構(gòu)建后操作步驟溅话,選擇Upload to fir.im,打開(kāi)你的瀏覽器歌焦,打開(kāi)fir官方網(wǎng)站,獲取方法見(jiàn)圖
- 然后輸入你的IPA/APK Files (optional)這個(gè)是你ipa的路徑飞几,如果不選擇,會(huì)是Jenkins默認(rèn)的路徑這里有fir的官方文檔独撇,根據(jù)fir的官方文檔即可就可以Jenkins上傳到fir文檔到此為止關(guān)于Jenkins整合Xcode的配置項(xiàng)并自動(dòng)上傳到蒲公英差不多就說(shuō)好了屑墨。
10. 修改密碼
jenkins 密碼錯(cuò)誤去掉密碼登錄(mac路徑為/Users/用戶(hù)名/.jenkins)
11. 相關(guān)配置
11.1 SSH Server配置
- 登錄jenkins -- 系統(tǒng)管理 -- 系統(tǒng)設(shè)置
-
SSH Servers: 由于jenkins服務(wù)器公鑰文件我已經(jīng)配置好,所以之后新增SSH Servers 只需要配置這一項(xiàng)即可纷铣。
Name: 自定義卵史,需要全局唯一。
HostName: 主機(jī)名搜立,直接用ip地址即可以躯。
Username: 新增Server的用戶(hù)名,這里配置的是root啄踊。
Remote Directory: 遠(yuǎn)程目錄忧设。jenkins服務(wù)器發(fā)送文件給新增的server默認(rèn)是在這個(gè)目錄。
四颠通,IOS Jenkins打包
五址晕,Jenkins打包
參考:大神:王克鋒 https://kefeng.wang/2017/01/06/jenkins/