ios打包工具

Jenkins配置

2018-07-13  本文已影响0人  libtinker

一、安装Jenkins

二、安装jenkins插件

Jenkins主页 点击左侧栏“系统管理”>>>>>>>“管理插件”>>>>>>选择和上传自己需要的插件(我安装的是Xcode Integration和# Keychains and Provisioning Profiles Plugin)
例如下图:


tuyi.png

三、配置证书

Jenkins主页 点击左侧栏“系统管理”>>>>>>>“Keychains and Provisioning Profiles Management”
需要上传login.keychain文件,该文件获取方法,在终端中输入

cd ~/Library/Keychains

在终端键入ls详见下图


tuer.png

然后添加Provisioning Profiles,上传方法和上传login.keychain一样,去选择Provisioning Profiles文件,然后upload,然后结果如下图,蓝色框内的是固定格式的/Users/用户名/Library/MobileDevice/Provisioning Profiles

接着 “系统管理”>>>>“系统设置”>>>>>全局属性 >>>>Provisioning Profiles Directory Path :
通过.war方式安装的jenkins路径是:${HOME}/Library/MobileDevice/Provisioning Profiles
通过.war方式安装的jenkins 路径是默认的,只需要填写一下密码就可以了(就是电脑开机密码)。

注意:需要把相关的证书放到Keychains的系统目录下,证书默认都在登录目录下

企业微信截图_e54da8f0-a968-4de2-97c1-5699e93a5943.png

四、配置项目

创建一个任务>>>>>点击任务>>>>点击任务栏左侧的“配置”,配置分为6步,如下图


tuliu.png

1.General


tu7.png
parm.png

2.源码管理


tu8.png

3.构建触发器


tu9.png
4.构建环境(我没选)
5.构建(这个比较操蛋,因为Jenkins对现在的Xcode9插件兼容性不好,打不了包,所以我们使用了xcodebuild打包,所以我直接选“执行 shell”进行构建)

Pod脚本(需要把ProjectName换成自己项目的名字)

#bin/bsah - l

export LANG=en_US.UTF-8

export LANGUAGE=en_US.UTF-8

export LC_ALL=en_US.UTF-8

cd $WORKSPACE/ProjectName

/usr/local/bin/pod update --verbose --no-repo-update
#配置json文件(项目通过这个文件选择环境、加密de)
echo "{\"environmentType\":\"$environmentType\",\"isEncrypt\":\"$isEncrypt\"}" > cofig.json

构建脚本

#工程名字(Target名字)
Project_Name="XXXXXX"
#配置环境,Release或者Debug
Configuration="Release"

#AdHoc版本的Bundle ID
AdHocBundleID="com.xxxxxx.xxx"

#加载各个版本的plist文件(cd $WORKSPACE/ProjectName)复制(ADHOCExportOptionsPlist)文件到Project文件下
ADHOCExportOptionsPlist=./ADHOCExportOptionsPlist.plist

ADHOCExportOptionsPlist=${ADHOCExportOptionsPlist}

ADHOCCODE_SIGN_IDENTITY="iPhone Distribution: Beijing xxxxxx"
ADHOCPROVISIONING_PROFILE_NAME="xxxxxxx-xxxxxx-xxxxxx-ba4a-xxxxxxx"

#adhoc脚本
xcodebuild -workspace $Project_Name.xcworkspace -scheme $Project_Name -configuration $Configuration -archivePath build/$Project_Name-adhoc.xcarchive clean 


xcodebuild archive -workspace $Project_Name.xcworkspace -scheme $Project_Name -configuration $Configuration -archivePath build/$Project_Name-adhoc.xcarchive CODE_SIGN_IDENTITY="${ADHOCCODE_SIGN_IDENTITY}" PROVISIONING_PROFILE="${ADHOCPROVISIONING_PROFILE_NAME}" PRODUCT_BUNDLE_IDENTIFIER="${AdHocBundleID}"  


xcodebuild -exportArchive -archivePath build/$Project_Name-adhoc.xcarchive -exportOptionsPlist $ADHOCExportOptionsPlist -exportPath build/$Project_Name-adhoc.ipa

ipa上传蒲公英:

#把ipa包上传到蒲公英
curl -F 'file=@/Users/name/.jenkins/workspace/Project/build/Project-adhoc.ipa/Project.ipa' -F '_api_key=b27f12cd8c5d6b09e580dffxxxxxxxxx' https://www.pgyer.com/apiv2/app/upload

上传svn(这个也比较操蛋最新版的jenkins不支持svn插件了,so)

#bin/bsah - l

export LANG=en_US.UTF-8

export LANGUAGE=en_US.UTF-8

export LC_ALL=en_US.UTF-8

Project_Name="Name"

cd /Users/apple/.jenkins/workspace/$Project_Name/build

if [ ! -d "Users/apple/.jenkins/workspace/$Project_Name/build/测试" ]; then
    svn co svnUrl --depth=empty --username uesrname --password *******
fi

cd /Users/apple/.jenkins/workspace/$Project_Name/build/测试

find . -name "*.ipa" -type f -print -exec rm -rf {} \;

svn update  

cp -r /Users/apple/.jenkins/workspace/$Project_Name/build/$Project_Name-adhoc.ipa/$Project_Name.ipa /Users/apple/.jenkins/workspace/$Project_Name/build/测试/$Project_Name$BUILD_NUMBER-App.ipa

svn add *

svn ci -m "版本号为2.4.0"

6.构建后操作(看兴趣,不搞也可以)
配置个E-mail notification


peizhiImg.png
emailImg.png

这个多说一句,这次填的密码是动态授权码而不是账户密码。
最后保存走人。
Editable E-mail notification也差不多,这里就不写了,如果有疑问请@我

五、 jenkins使用

选中项目>>>左边工具栏“立即构建”


tu11.png

最后去工作区 按着你设置的路径找到 ipa文件下载就下来使用,或者去svn找你上传的ipa文件,或者去蒲公英查找

上一篇下一篇

猜你喜欢

热点阅读