利用Jenkins实现iOS自动化打包
程序员文章站
2022-04-13 22:45:16
...
最近,需求是iOS自动化打包。找了很多资料,一直没有特别全的iOS打包流程。所以,花费了很多力气来处理iOS打包遇到的问题,所幸,终于大功告成,今天用一篇文章来阐述iOS打包的过程。
安装 fastlane
fastlane 是一个可以将 iOS 项目打包成 ipa 文件的工具。要安装 fastlane,可以参考 fastlane 在 Github 上的的官方文档。
安装 Jenkins
如果在 Mac 环境下,安装 JDK,然后在 Jenkins 的官网 下载最新的 war 包。下载完成后,打开终端,进入到 war 包所在目录,执行以下命令:
java -jar jenkins.war --httpPort=8080
等到Jenkins启动后,在浏览器页面输入以下地址:
http://localhost:8080
构建设置
在 Jenkins 中,点击“新建”,选择“构建一个*风格的软件项目”。
然后写构建信息:
- 源码管理:可以拉取git上的代码,更新git代码将会触发构建
- 构建触发器设置:可以定时构建,也可以检测到线上代码修改构建
- 构建环境设置:直接用 fastlane 工具,不需要特别设置。fastlane 会自动读取本地 iOS 项目中设置的签名等信息,所以,需要确保本地已经设置好了正确的签名信息和 Provisioning Profiles 等文件,并在 keychain 中已经加入了正确的证书。
我们将用脚本实现这一过程:
下面是本文中最重要的脚本代码
#!/bin/bash -l
//上传崩溃日志
lane :build_AppStore do |options|
gym(scheme: "",
workspace: "",
configuration: "",
export_method: "",
output_name: "",
output_directory: "",
include_symbols: false,
xcargs: options[:PREPROCESSOR],
export_options: "",
clean: true)
upload_symbols_to_crashlytics(
dsym_path:"",
api_token: ""
)
end
EOF
//打包
fastlane build_AppStore WORKSPACE:${WORKSPACE} PREPROCESSOR:""
具体看查看fastlane的官方文档。
高级设置
打包完发送邮件:
执行脚本:
#!/bin/bash -l
touch $VARIABLES
xxx=`du -sh XXXX.xcodeproj`
echo -n "xxx=" $xxx
sed -i "" /^yyy=/d $VARIABLES
echo yyy=${xxx} >> $VARIABLES
输出信息:
当然,在自动化打包中会遇到各种各样的问题,特别注意本地路径问题、打包证书问题、打包脚本的语法问题等等。
至此自动化打包过程已经全部完成!!!
上一篇: Hadoop自动化安装及单节点方式运行
下一篇: PHP的CURL简单介绍