我们如何创建支持CocoaPods、Carthage和Swift包管理器的iOS框架,以及运行测试的Travis和发布自动化的Fastlane?
我在Medium上从头开始写了一个长篇系列,讲的是 "用CocoaPods、Carthage、SPM支持和Travis来创建iOS框架,用于运行测试和发布自动化的Fastlane"。希望对大家有所帮助。
创建Swift框架很容易,但同时加入CocoaPods、Carthage和Swift包管理器支持,听起来就很可怕。除此之外,添加Travis来运行所有提交的测试,添加Fastlane来自动化所有依赖管理器的发布流程,看起来就像一部恐怖电影。但不要害怕。在你完成这个系列之后,你可以轻松地创建你自己的Swift框架,使用所有这些工具来使它变得更完美!
第1部分 - 创建CocoaPod并发布它。: 你将创建自己的CocoaPod并发布它。
第2部分 - 添加Carthage支持: 在第1部分创建并发布的CocoaPod将通过Carthage安装。
第3部分 - 添加Swift包管理器支持: 在第1部分创建并发布的CocoaPod将通过Swift包管理器安装。
第4部分 - 整合Travis来构建示例项目并运行框架测试。: 你的框架可以通过CocoaPods、Carthage和Swift包管理器安装,在GitHub上的每次推送都会在Travis上自动运行测试。
第5部分 - 整合Fastlane,只需运行一行命令就能自动发布流程。:
每次你想通过CocoaPods、Carthage和Swift包管理器发布新版本的框架时,你必须通过以下步骤。
1- 实施新版本的修改
2- 运行测试,以确保他们的工作
3- 提交并推送新版本的变更。
4- 将新版本标记到git
git tag 0.1.1
git push origin 0.1.1
Carthage和Swift包管理器从GitHub安装你的框架。如果你正确配置了你的框架,在这一步之后就可以通过Carthage或Swift包管理器进行安装。不过,CocoaPods还有4个步骤来完成发布流程。
5-增加podspec版本=>即s.版本='0.1.1'。
6-验证本地的podspec。
pod lib lint ODCustomFramework.podspec
7-验证pod的发布
pod spec lint ODCustomFramework.podspec
8-释放
pod trunk push ODCustomFramework.podspec
Travis和Fastlane整合后,步骤2、4、5、6、7、8都是自动化的,不再需要每次发布新版本时重复这些步骤。
1- 实施新版本的变更
2- 提交并推送新版本的变更。
3- Travis在每次推送后自动运行测试。
4- 运行下面的 fastlane 命令来自动化所有的发布过程。(步骤4, 5, 6, 7, 8)
exec fastlane major | minor | patch