關于mac端如何配置jenkins打包iOS工程,已經被大家寫的爛大街了,雖然爛大街,但是自己一直沒有親自上手從0-1配置過一次,畢竟一個項目組有一個人配置好就可以了.誰能想到原來的打包機主板壞掉了,果斷上手在自己的電腦上搞一遍jenkins
jenkins安裝
安裝的話基本就是兩種方式下載安裝包和使用brew安裝
兩種安裝方式按道理都可以,但是我下載安裝包后安裝出現(xiàn)一些問題,最后放棄了,直接使用 brew install jenkins-lts 安裝,個人也是推薦這種方式安裝
登錄
命令行安裝成功后 啟動jenkins
啟動jenkins: brew services start jenkins
停止jenkins:brew services stop jenkins
重啟Jenkins:brew services restart jenkins
此時可使用 http://localhost:8080 訪問jenkins 創(chuàng)建管理員賬號等 初始密碼 進入\Jenkins\secrets目錄,打開initialAdminPassword文件復制出密碼即可
安裝jenkins推薦通用的插件 接下來是漫長的等待
設置局域網(wǎng)本地ip訪問
1.修改本地hosts文件 localhost 指向本地IP地址
2.系統(tǒng)管理-系統(tǒng)配置 Jenkins Location設置 jenkinsUrl為 本地IP
3.修改 jenkins.model.JenkinsLocationConfiguration.xml 內部地址為本地ip
通用設置
源碼管理設置
Repository URL 源碼地址
Credentials 用戶名和密碼 用于獲取源碼
Branches to build 打包分支
構建觸發(fā)器
設置定時構建
構建
1.構建前需要先拉取代碼,現(xiàn)在多數(shù)項目都是組件形式或是使用了pod集成三方庫,打包前需要拉取個組件的代碼
#!/bin/bash -ilex
cd 項目路徑
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
pod repo update
pod update --verbose --no-repo-update
2.更新build版本號 一般是用時間作為版本號
#!/bin/bash -il
export LC_ALL=en_US.UTF-8
source ~/.bashrc
# 版本號自增
PlistDir="plist文件地址"
BuildVersion=$(/usr/libexec/PlistBuddy -c "Print :CFBundleVersion" "${PlistDir}")
echo ${BuildVersion}
BuildNumber=`date +%Y%m%d%H%M`
echo ${BuildNumber}
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion ${BuildNumber}" "${PlistDir}"
3.Xcode構建操作
4.若是使用友盟統(tǒng)計 可使用上傳dsym腳本 具體腳本參考官網(wǎng)
發(fā)送構建郵件
系統(tǒng)管理-系統(tǒng)設置 看是否有Extended E-mail Notification 沒有的話去插件管理下載
根據(jù)實際情況設置SMTP server伊者、Default user e-mail suffix、SMTP Username间护、SMTP Password(密碼為授權碼,切記)亦渗、勾選Use SSL
default content內容,同時可在內容中添加自己需要展示的信息,比如下載地址或是下載二維碼
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次構建日志</title>
</head>
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0">
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
本郵件由系統(tǒng)自動發(fā)出,無需回復汁尺!<br/>
各位同事法精,大家好,以下為${PROJECT_NAME }項目構建信息</br>
<td><font color="#CC0000">構建結果 - ${BUILD_STATUS}</font></td>
</tr>
<tr>
<td><br />
<b><font color="#0B610B">構建信息</font></b>
<hr size="2" width="100%" align="center" /></td>
</tr>
<tr>
<td>
<ul>
<li>項目名稱 : ${PROJECT_NAME}</li>
<li>構建編號 : 第${BUILD_NUMBER}次構建</li>
<li>觸發(fā)原因: ${CAUSE}</li>
<li>構建狀態(tài): ${BUILD_STATUS}</li>
<li>構建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
<li>構建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li>
<li>工作目錄 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
<li>項目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
</ul>
<h4><font color="#0B610B">失敗用例</font></h4>
<hr size="2" width="100%" />
$FAILED_TESTS<br/>
<h4><font color="#0B610B">最近提交(#$SVN_REVISION)</font></h4>
<hr size="2" width="100%" />
<ul>
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
</ul>
詳細提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>
</td>
</tr>
</table>
</body>
</html>
點擊default triggers 選中 always痴突、failure any搂蜓、success
郵件通知
構建后操作添加 editable email notification
project from 填寫管理員郵箱
project recipient list 為收件人郵箱合集 用空格隔開
點擊 advanced settings 設置 之前系統(tǒng)設置中的always等選項
發(fā)布到 firim
鏈接: https://pan.baidu.com/s/1jJntT577vwwvWv1WPo5CTA
提取碼: 7jpt
上傳插件到jenkins