Jenkins + fastlane iOS 双重认证 自动更新配置文件

使用Jenkins + fastlane 有一段时间了,真心好用!!!
由于项目新版本一直在修改,老板又不挺的要新内容。之前恨不得改个提示语都要给他打包一下。
真的心累,现在更好,还换不同的设备,三天两头的加测试机,手动更新配置文件更新实在是太麻烦了,
正好有时间有找了下方法,做个总结

配置Appfile

这个文件大家应该都知道,无非就是设置一下
name、id、team 做好预设就就不用选了,方便跑自动化

image

使用sigh

fastlane本身就提供 sigh 的方法来做配置文件的自动更新

#证书管理
cert
#配置文件管理
sigh(
  username: "13xxxx@qq.com",
  app_identifier: "cn.com.xxxxx",
  adhoc: "true"
)

单独跑fastlane是没什么问题,就是提示需要双重认证(two factor)
因为很懒使用的是Jenkins,只能执行脚本无法输入内容。

这时候就需要用到它

** spaceauth **

image
image

没错!我们就是要在CI机器上跑!
配置很简单 README 上也说了,我就简单说明一下

  • 访问 AppleId 管理站:点我进管理站
  • 找到 安全 - App 专用密码,生成一个专用密码
  • 配置环境变量 vim ~/.bash_profile
    • export FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD=YOUR_PSD
  • 执行 fastlane spaceauth -u abcd@qq.com 按提示获取session信息。
  • 复制session信息(很长一大段) 配置环境变量vim ~/.bash_profile
    • export FASTLANE_SESSION='YOUR SESSION'
image
image

OK,直接执行 跑起你的fastlane吧
无需输入任何内容!!!
一键全搞定!!!
妈妈再也不用担心我增加测试机了!!!

最后

注意注意注意!!!

session有过期时间,打包失败的时候记得去打包机更新一下

感谢博主

推荐阅读更多精彩内容