iOS Fastlane配合Jenkins实现一键自动化打包

哈哈哈,之前以为写起来很多,但是真开始写发现好像也不知道怎么写详细,直接贴配置吧!
Fastlane的安装及配置:
iOS Fastlane自动化打包(1) 安装和打包IPA
iOS Fastlane自动化打包(2) 自动上传IPA到蒲公英
iOS Fastlane自动化打包(3) 打包结果推送通知到手机

Mac电脑安装Jenkins:

参考这篇文章的:
iOS开发之——jenkins安装
强烈用命令行安装方式,不容易出问题。我多次测试,用安装包方式安装真的非常坑(证书、权限、各种问题)。如果正在看文章的你是用安装包安装的Jenkins,遇到问题的话建议卸载之后用命令行重新安装

可能遇到的问题:
执行brew install jenkins报错:

jenkins: Java 1.8 is required to install this formula.
Install AdoptOpenJDK 8 with Homebrew Cask:
  brew cask install homebrew/cask-versions/adoptopenjdk8

解决办法:执行brew cask install homebrew/cask-versions/adoptopenjdk8

安装Git Parameter Plug-In插件,这个是用来切换分支和tag的
安装RVM插件(ps:我用安装包方式安装的Jenkins安装RVM插件就一直出错)

新建一个项目,如下配置:


iOS Fastlane配合Jenkins实现一键自动化打包_第1张图片
image.png

配置:


iOS Fastlane配合Jenkins实现一键自动化打包_第2张图片
image.png

iOS Fastlane配合Jenkins实现一键自动化打包_第3张图片
image.png

iOS Fastlane配合Jenkins实现一键自动化打包_第4张图片
image.png

保存一下就行了。
构建的时候选Build With Parameters,再选中要打包的tag,选择打包target,立即构建(build)。

iOS Fastlane配合Jenkins实现一键自动化打包_第5张图片
image.png

其实有些细节,比如Git最好忽略fastlane文件夹内的内容之类的。不过旁枝末节,相信走到这一步的小伙伴自己都能注意到和处理,我就不细说了。况且也想不起来有哪些细节了……就这样吧。


iOS Fastlane配合Jenkins实现一键自动化打包_第6张图片

遇到的问题记录

出现 fastlane: command not found 怎么办?

这个情况一般是由于 jenkins 没有设置正确的 PATH,记录下输出的结果
在 jenkins 中系统管理-系统设置中,找到 环境变量(Environment variables)
在 key 中填写 PATH,在 value 中填写第一步中输出的结果
保存即可。

出现fastlane requires your locale to be set to UTF-8.警告怎么办?

环境变量里面设置
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8

iOS Fastlane配合Jenkins实现一键自动化打包_第7张图片
image.png

出现 Could not find proper version of fastlane怎么办?

安装RVM插件,然后在项目的Build Environment 》Run the build in a RVM-managed environment下面填上当前的RVM版本
RVM版本通过 rvm list命令获取


iOS Fastlane配合Jenkins实现一键自动化打包_第8张图片
image.png

iOS Fastlane配合Jenkins实现一键自动化打包_第9张图片
image.png

希望在局域网里面通过ip访问Jenkins怎么办?

修改/usr/local/opt/jenkins/homebrew.mxcl.jenkins.plist 将上面两个plist中的httpListenAddress后的ip地址,修改为本机IP或者0.0.0.0即可。修改完成后重启jenkins:

brew services restart jenkins

然后在另一个电脑上就可以通过http://192.168.1.104:8080访问了,前面的ip填装Jenkins的电脑的ip


iOS Fastlane配合Jenkins实现一键自动化打包_第10张图片
image.png

你可能感兴趣的:(iOS Fastlane配合Jenkins实现一键自动化打包)