1. 程式人生 > >Mac中jenkins的使用——自動構建

Mac中jenkins的使用——自動構建

Jenkins 是一個開源專案,提供了一種易於使用的持續整合系統,使開發者從繁雜的整合中解脫出來,專注於更為重要的業務邏輯實現上。同時 Jenkins 能實施監控整合中存在的錯誤,提供詳細的日誌檔案和提醒功能,還能用圖表的形式形象地展示專案構建的趨勢和穩定性。

一、jenkins工具的安裝、解除安裝、啟用

注意:安裝jenkins必須先安裝java sdk,同時安裝好brew工具(http://brew.sh/index_zh-cn.html)

1、安裝、解除安裝

(1)安裝

方法1 終端命令安裝:

brew install jenkins

方法2 下載dmg檔案安裝











安裝好的目錄位置,如下圖所示


(2)解除安裝

brew uninstall jenkins

2、啟用

終端命令啟動(僅對終端命令安裝有效):

jenkins

開機自動啟動:

ln -sfv /usr/local/opt/jenkins/*.plist ~/Library/LaunchAgents


3、登入

4、設定(首次使用時需要進行設定)

 設定專案:unlock Jenkins(administrator password)—>Customize Jenkins(install suggested plugins)—>Create First Admin User(使用者名稱、密碼、確認密碼、全名、電子郵件地址)—>Jenkins is ready

注意:Administrator password的設定區分是指令碼安裝,還是dmg檔案安裝。如果是指令碼安裝的話,可以從終端直接查閱password;如果是dmg檔案安裝的話,必須從檔案檢視(安裝目錄—>secrets—>滑鼠右擊—>顯示屬性—>共享與許可權—>修改成讀與寫—>initialAdminPassword—>滑鼠右擊—>顯示屬性—>共享與許可權—>修改成讀與寫—>雙擊開啟initialAdminPassword)

指令碼安裝jenkins時的password檢視


dmg檔案安裝jenkins時的password檢視







二、jenkins的外掛

1、常用外掛

Git plugin

Git client plugin

Subversion Plug-in

Subversion Release Manager plugin

Subversion Tagging Plugin

SVN Publisher plugin

SSH Credentials Plugin

Gradle plugin: android專用

Xcode integration:iOS專用

2、外掛安裝方法

jenkins首頁—>系統管理—>管理外掛—>可選外掛—>過濾搜尋—>直接安裝


三、jenkins專案的配置使用

1、新建專案:Jenkins首頁—>新建

(1)General:根據需要選擇

a)專案名稱(Enter an itemname;型別:構建一個自由網格的軟體專案)

b)專案描述

c)丟棄舊的構建



(2)原始碼管理:根據需要設定

情況1:Git(路徑、帳號、密碼)

情況2:Subversion(路徑、帳號、密碼)

情況3:None(使用本地專案)



(3)構建觸發器:根據需要選擇(可不選)


(4)構建環境:根據需要選擇(可不選)


(5)構建:根據需要設定

情況1:指令碼Excute shell

根據實際情況配置引數,如果原始碼管理選擇的是None,則使用svn下載最新原始碼指令碼,否則遮蔽掉不使用。

#<------------------------------------------------------->
# 刪除舊原始碼目錄->新建原始碼目錄->從svn匯出最新程式碼->清理舊檔案->清除舊專案->打包->上傳
 
pwd
 
# 名稱配置
checkout_name="checkout"
project_name="zsyDemo"
# 配置專案版本
#targetProject_sdk="iphoneos8.0"
targetProject_destination="generic/platform=iOS"
configuration="Release"
scheme="$project_name"
workspace_name="${project_name}.xcworkspace"
# 目錄配置
save_path="/Users/zhangshaoyu/Desktop/uploadIPA"
archive_path="$save_path/${project_name}.xcarchive"
ipa_path="$save_path/${project_name}.ipa"
log_path="$save_path/log.txt"
# svn配置
svn_path="http://192.168.11.11:8011/svn/zsyDemo/trunk/iOS/zsyDemo"
checkout_path="$save_path/$checkout_name"
svn_name="zhangshaoyu"
svn_password="123456"
# 配置簽名證書、描述檔案
codeSignIdentity="iPhoneDeveloper: shaoyu zhang (5AB779CDEF)"
provision_UUID="06a7492b-083c-4313-d633-15ef685929g4"
provisoning_profile="zsyDemoDevelopProfile"
# 配置蒲公英
upload_path="$save_path/${project_name}.ipa"
pgy_userKey="a512b58c56285d23456e011fgh706509"
pgy_apiKey="ab9c240d2efg9hi17j9642k3l5mnop5q"
 
echo "正在刪除舊原始碼"
# 刪除舊原始碼目錄
rm -rf "$checkout_path" >> $log_path
 
echo "正在建立新的原始碼目錄"
# 新建原始碼目錄
cd "$save_path" >> $log_path
pwd
mkdir "$checkout_name" >> $log_path
 
echo "正在從svn下載最新的原始碼"
# 從svn匯出最新程式碼
svn checkout "$svn_path" "$checkout_path" --username "$svn_name" --password "$svn_password" >> $log_path
 
echo "正在刪除舊檔案"
# 刪除舊檔案
rm -rf "$log_path" >> $log_path
rm -rf "$archive_path" >> $log_path
rm -rf "$ipa_path" >> $log_path
 
echo "正在清除構建專案快取"
# 重要,執行xcodebuild命令時,必須進入專案目錄
cd "$checkout_path" >> $log_path
pwd
# 清理構建目錄
xcodebuild clean -configuration "$configuration" -alltargets >> $log_path
 
echo "正在打包"
# 歸檔(其他引數不指定的話,預設用的是.xcworkspace或.xcodeproj檔案裡的配置)
xcodebuild archive -workspace "$workspace_name" -scheme "$scheme" -destination "$targetProject_destination" -configuration "$configuration" -archivePath "$archive_path" CODE_SIGN_IDENTITY="$codeSignIdentity" PROVISIONING_PROFILE="$provision_UUID" >> $log_path
 
echo "正在匯出ipa包"
# 匯出IPA
xcodebuild -exportArchive -exportFormat IPA -archivePath "$archive_path" -exportPath "$ipa_path" -exportProvisioningProfile "$provisoning_profile" >> $log_path
 
echo "正在上傳ipa到蒲公英"
# 上傳IPA到蒲公英
curl -F "[email protected]$upload_path" -F "uKey=$pgy_userKey" -F "_api_key=$pgy_apiKey" https://www.pgyer.com/apiv1/app/upload
#<------------------------------------------------------->


情況2:Xcode




(6)構建後操作:根據需要設定(可不設定)


2、配置專案

與新建時相同的操作,即General、原始碼管理、構建觸發器、構建環境、構建、構建後操作。

3、刪除專案

Jenkins首頁—>點選專案—>刪除Project

 

四、jenkins使用注意事項

1、安裝java sdk:

3、專案構建

(1)使用同步svn程式碼時,執行指令碼中的路徑指向jenkins相關目錄

(2)未使用同步svn程式碼時,執行指令碼中的路徑指向自定義專案目錄;同時也可以自定義指令碼去下載svn程式碼

(3)構建成功的ipa包可通過執行指令碼上傳到內測平臺,如蒲公英平臺

4、檢視證書描述檔案資訊、專案資訊

(1)證書名稱:Launchpad->其他->鑰匙串訪問->選擇證書->滑鼠右擊->顯示簡介->細節->常用名稱->複製

(2)描述檔案UUID:開啟Xcode->選單欄->Preferences->Accounts->Apple IDs->帳號->showDetails->Provisioning Profiles->選擇專案中使用的描述檔案->

滑鼠右擊->show in Finder

(3)描述檔名稱:直接檢視描述檔名稱

(4)target name、scheme:開啟終端—>通過cd 命令進入專案目錄—>通過命令”xcodebuild -list”檢視