iOS巅峰之Jenkins自动打包

安装Jenkins可以参考:

一.安装Jenkins

1)首先使用osx系统自带的homebrew来安装Jenkins

在终端运行:$ brew install Jenkins      

第一步需要安装至少java1.8, 如果没有安装会提示, java安装路径:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

iOS巅峰之Jenkins自动打包_第1张图片

2)java安装完毕,继续下面步骤,链接 launchd 配置文件

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

//如果要其他机器也可以访问,把ip地址改为广播地址:--httpListenAddress=0.0.0.0

$ launchctl load~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist  

完后命令行启动Jenkins:$ jenkins

3)一切顺利的话, 打开浏览器输入:http://localhost:8080/就能看到jenkins已经运行起来了

就能看到jenkins已经运行起来了,如果你更换了端口就是你后来设置的端口。

接下来打开Jenkins后会让去一个填写password的页面如下图,存储password的地方就是图片上那行红色字体目录下,使用终端 cat + 红色字体路径就看到了, 你直接根据红色字体提示的路径找到相对应的文件夹打开就可以看到密码,有可能你的文件夹没有权限,显示0字节,不用担心,右键显示简介,权限改成读写就可以了

iOS巅峰之Jenkins自动打包_第2张图片

然后将我们得到的password输入到“Administrator password“中,即可进入如下界面,接着安装一些建议的插件(左边的),安装过程中,有的插件可能会安装失败,强烈建议点击右下角的重试,直到把建议安装的都装好。(因为我这边安装之后,在Jenkins插件管理安装插件一直失败,如果这一步没把有些必须的插件装好,如git,只能一个个下载上传插件就很麻烦)

iOS巅峰之Jenkins自动打包_第3张图片

iOS巅峰之Jenkins自动打包_第4张图片

iOS巅峰之Jenkins自动打包_第5张图片

到这一步,Jenkins的安装基本完成,接下来就是使用了,在新建任务之前需要安装好对应的插件

4)安装插件,在插件管理里面进行安装

Keychains and Provisioning Profiles Management(管理本地的keychain和iOS证书的插件)

Xcode integration (用于xcode构建)

我是直接下载了插件完后直接上传.hpi文件安装的

iOS巅峰之Jenkins自动打包_第6张图片

全局配置中选择Keychains and Provisioning Profiles Management

iOS巅峰之Jenkins自动打包_第7张图片

5)构建一个任务名称

iOS巅峰之Jenkins自动打包_第8张图片

6)进入到创建的项目下, 源码管理

iOS巅峰之Jenkins自动打包_第9张图片

7)构建触发器+构建环境

iOS巅峰之Jenkins自动打包_第10张图片

8)构建

iOS巅峰之Jenkins自动打包_第11张图片

9)我们使用shell脚本打包的脚本:

security unlock-keychain -p XXXX #超级重要的解锁, XXXX是你的电脑登录密码

# 项目名称
APP_NAME="XXXX"
# 项目绝对路径
PROJECT_PWD_PATH="$PWD/XXXX/XXXX.xcodeproj"#XXXX项目的名称, 如果是cocoapods,需要将xcodeproj替换成xcworkspace
# build 路径
BUILD_PATH="$PWD/XXXX/build/Release-iphoneos"#项目的名称
# configuration
CONFIGURATION_TYPE="Release"
# info.plist路径
INFO_PLIST_PATH="$PWD/XXXX/XXXX/info.plist"# 项目的名称
# 签名
CODE_SIGN_NAME="iOS Distribution: xxxxx Co.,LTD" # 证书的名字
# 取版本号
bundleShortVersion=$(/usr/libexec/PlistBuddy -c "print CFBundleShortVersionString" "${INFO_PLIST_PATH}")# 固定的格式路径
# 取build值
bundleVersion=$(/usr/libexec/PlistBuddy -c "print CFBundleVersion" "${INFO_PLIST_PATH}")#固定的格式路径
# 日期
DATE="$(date +%Y%m%d)" #只是在导出ipa的时候追加的后缀, 不喜欢也可以换
# 生成.ipa名称
IPANAME="${APP_NAME}_V${bundleShortVersion}_${DATE}.ipa"# 生成ipa的名称
# .ipa路径
IPA_PATH="$PWD/XXXX/build/${IPANAME}"#项目的名字,
# remove Build_Directory 
rm -rf "$PWD/XXXX/build"#XXXX项目的名称, 清除build
xcodebuild -project ${PROJECT_PWD_PATH} -configuration ${CONFIGURATION_TYPE} -scheme ${APP_NAME} -sdk iphoneos12.1 -arch arm64 CONFIGURATION_BUILD_DIR=${BUILD_PATH} || exit#项目没有cocoapods的时候使用这个, 如果有需要将project替换成workspace, 如果没有报错那么恭喜你已经打包成功了
xcrun -sdk iphoneos12.1 PackageApplication -v "${BUILD_PATH}/${APP_NAME}.app"#导出app

你可能感兴趣的:(iOS,Jenkins,自动打包,iOS,Jenkins,自动打包)