iOS可持续化集成: Jenkins + bundler + cocoapods + shenzhen + fastlane + pgyer
工具介绍
1. bundler
2. cocoapods
Command Line
比方 xcrun —find ld,用于定位ld工具的位置。xcrun git —version,则是直接运行git —version命令。
- http://youandthegang.com/2015/continuous-integration-delivery-with-jenkins/
- http://segmentfault.com/a/1190000002423661
- <Pro iOS Continuous Integration>
Jenkins
1. 安装启动
-jar jenkins.war" 启动jenkins,也能够通过 —httpPort 和 —httpListenAddress 指定port和设定IP来启动。
2. Jenkins基本设置
启用安全以下选择,“Jenkins专实用户数据库”。勾选同意用户能够注冊。然后在“授权策略”中选择“不论什么用户能够做不论什么事(没有不论什么限制)”。当然,也能够使用LDAP身份认证机制,直接使用外部统一的身份机制来做认证。
3. 设置git
生成SSH keys的过程详细请參考:https://help.github.com/articles/generating-ssh-keys/,对git比較熟悉的话。这个过程应该不会陌生。记得不要忘记把public
key加入 repo的訪问权限中,不管是github/gitlab/bitbucket都是类似的。运行以下两行命令,直接到输入框里粘贴就可以。
4. Jenkins Job设置
5. fastlane
在查看fastlane之后,我发现fastlane的确很强大。能够大大简化我们的工作。尤其适合个人开发人员,可是这个还是有一定学习成本的。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- delivery:用于上传应用的二进制代码,应用截屏和原数据到 App Store
- snapshot:能够自己主动化iOS应用在每一个设备上的本地化截屏过程
- frameit:用于在应用截屏外加入设备的边框
- PEM:能够自己主动化生成和更新应用推送通知描写叙述文件
- sigh:能够生成并下载开发人员的应用商店配置文件
- product:能够使用命令行在iTunes Connect中创建iOS应用以及Developer Portal
- cert:能够自己主动创建并维护iOS的签名证书
- codes:使用命令行来生成应用的优惠码
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
“bundle install” 或者 “pod update”命令,然后把这些改动push到origin上就可以。
6. 实现不同类型的应用
beta/alpha版本号实现的方式研究,这部分在<Pro Continuous Integration>有具体说明,在”Multiple Versions of the Application”章节内。
參考资料:
- <Pro iOS Continuous Integration>
- https://medium.com/ribot-labs/continuous-integration-deployment-for-ios-projects-7358b72ca2e9 (翻译:http://www.jianshu.com/p/9ae446d76271),对于CI的各个方面覆盖很全面,能够參考这个拓展CI的使用
- http://youandthegang.com/2015/continuous-integration-delivery-with-jenkins/
- http://9elements.com/io/index.php/continuous-integration-of-ios-projects-using-jenkins-cocoapods-and-kiwi/
- jenkins + 蒲公英: http://answerhuang.duapp.com/index.php/2015/04/19/jenkins/
- http://williamzang.com/blog/2014/07/23/shi-yong-jenkins-plus-calabash-plus-cocoapodsda-jian-ioschi-xu-ji-cheng-huan-jing/
- https://github.com/artsy/eigen
- http://www.objc.io/issues/6-build-tools/travis-ci/
- dysm分析工具:http://answerhuang.duapp.com/index.php/2014/07/06/dsym_tool/
- <Xcode continuous integration guide>
- http://macminicolo.net/dayone
- http://savvyapps.com/blog/continuous-integration-ios-jenkins/
其它工具
iOS可持续化集成: Jenkins + bundler + cocoapods + shenzhen + fastlane + pgyer的更多相关文章
- 一步一步构建iOS持续集成:Jenkins+GitLab+蒲公英+FTP
什么是持续集成 持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来 ...
- 使用Jenkins+Calabash+Cocoapods搭建iOS持续集成环境
使用jenkins+calabash+cocoapods搭建ios持续集成环境 持续集成 持续集成到底是什么呢?依据敏捷大师Martin Fowler的定义: 持续集成是一种软件开发实践. 在持续集成 ...
- 使用 Fastlane 实现 IOS 持续集成
简介 持续集成是个“一次配置长期受益”的工作.但很多小公司都没有.以前在做Windows开发配置感觉简单一些,这次配置iOS的,感觉步骤还挺多.整理出来,分享给大家,不正确的地方请及时指正. 本文主要 ...
- 使用 fastlane 实现 iOS 持续集成(转)
http://www.cocoachina.com/ios/20150916/13433.html 简介 持续集成是个“一次配置长期受益”的工作.但很多小公司都没有.以前在做Windows开发配置感觉 ...
- iOS 持续集成
iOS 持续集成系列 - 开篇 前言 iOS 开发在经过这几年的野蛮生长之后,慢慢地趋于稳定.无论开发语言是 Objective-C 还是 Swift,工程类型是 Hybird 还是原生,开发思想是 ...
- 现有iOS项目集成React Native过程记录
在<Mac系统下React Native环境搭建>配置了RN的开发环境,然后,本文记录在现有iOS项目集成React Native的过程,官方推荐使用Cocoapods,项目一开始也是使用 ...
- CI Weekly #21 | iOS 持续集成快速入门指南
搭建 iOS 持续集成环境要多久?每个 iOSer 都有不同的答案.这次我们整理了 flow.ci 的 iOS 持续集成的相关文档和最佳实践,希望帮你更快地完成构建.更新文档见: flow.ci iO ...
- 视频云SDK iOS持续集成项目实践
1. 前言 2016年, 我们维护的 iOS推流播放融合SDK KSYLive_iOS 在github上发布了40多个版本, 平均两周发布一个新版本, 经历了最初痛苦的全手动版本构建和维护, 到后来慢 ...
- 李洪强iOS之集成极光推送三iOS集成指南
李洪强iOS之集成极光推送三iOS集成指南 SDK说明 适用版本 本文匹配的 SDK版本:r2.1.5 以后.查看最近更新了解最新的SDK更新情况.使用Xcode 6及以上版本可以使用新版Push S ...
随机推荐
- Java Web Project Problems
A: 项目红叉 1. 检验 Java Builder Path 2. 检查 Projects Facets 3. 查看 Targets Runtimes B:项目红感叹号 1. 查看问题栏 Prob ...
- ftp--pureftpd1.0.46
pureftpd的新版本1.0.46安装过程与之前的相同 但是之后的配置,有些许不同 pureftpd安装过程: # cd /usr/local/src # wget # cd pure-1.0.46 ...
- [前端随笔][JavaScript] 制作一个富文本编辑器
写在前面 现在网上有很多现成的富文本编辑器,比如百度家的UEditor,kindeditor,niceditor等等,功能特别的多,API也很多,要去熟悉他的规则也很麻烦,所以想自己了解一下原理,做一 ...
- vue单文件中scoped样式如何穿透?
在vue文件中的style标签上,有一个特殊的属性:scoped.当一个style标签拥有scoped属性时,它的CSS样式就只能作用于当前的组件,也就是说,该样式只能适用于当前组件元素.通过该属性, ...
- jmeter-----查看结果树
在编写接口测试脚本的时候,需要进行调试和查看结果是否正常的情况,这个时候可以使用查看结果树组件进行. 查看结果树中展示了每一个取样器的结果.请求信息和响应信息,可以查看这些内容去分析脚本是否存在问题. ...
- [你必须知道的.NET]第十七回:貌合神离:覆写和重载
本文将介绍以下内容: 什么是覆写,什么是重载 覆写与重载的区别 覆写与重载在多态特性中的应用 1. 引言 覆写(override)与重载(overload),是成就.NET面向对象多态特性的基本技术之 ...
- <node.js爬虫>制作教程
前言:最近想学习node.js,突然在网上看到基于node的爬虫制作教程,所以简单学习了一下,把这篇文章分享给同样初学node.js的朋友. 目标:爬取 http://tweixin.yueyishu ...
- 【LOJ】 #2132. 「NOI2015」荷马史诗
题解 k叉哈夫曼树,但是没有了二叉那样的最后一定能合并成一个树根的优秀性质,我们就不断模拟操作看看到了哪一步能用的节点数< k,然后先拿这些节点数合并起来 然后就可以k个k个合并了,大小一样先拿 ...
- 【LOJ】#2006. 「SCOI2015」小凸玩矩阵
题解 又是美好的一天,我今天的小目标是LOJ刷题数名次前进两名(虽然巨佬们都是BZOJ千题啊这样的><,我就在LOJ划划水吧,我永远喜欢LOJ 这道题要求K大值最小,又是什么什么大值最小, ...
- python 2 如何安装 MySQL 数据库操作库
我试了好几种网上的办法,在 windows 10 VS2017 环境下不是缺了头文件,就是缺 .lib,反正十分繁琐,以后我也懒得搞了,都用 annaconda 来搞定就好了,时间宝贵. 在 控制台中 ...