jenkins+gitlab实现iOS主动打包的崎岖之路(本文包罗CI\CD过程中的一些坑点 ...

打印 上一主题 下一主题

主题 790|帖子 790|积分 2370

本文须知:本文成功案例是配置jekins地点服务器配置打包环境,并非在jenkins中配置打包环境。关于为何不采用在jenkins中配置打包环境将会在文中具体解说。末了因为是基于jekins地点服务器配置的打包环境,按照本文所诉,实现ios主动打包将更易成功。
一.配景(重生之开局预备)

1.既然是ios项目实现主动打包,那么就必须对ios原来的打包方式及过程要有大概的相识,差别的ios项目其打包方式以及打包的一些参数都大概不相同(具体的可向开发职员询问清楚)。
以本人为例的话:2、4、5点是重点
1).找iOS开发职员要证书和形貌文件(打包需要这些。至于证书和形貌文件是啥你可以有个大概的相识就行,比如证书的作用就是验证身份、应用步伐署名等)
2).简单相识一下钥匙串(知道钥匙串是啥,作用,以及在钥匙串中如何导入导出证书)
3)iOS开发职员使用的开发工具是啥。我的是Xcode。
4)找ios开发职员打包一个ipa的包给你,内里的ExportOptions.plist将对你有大用。(如果条件允许的话问问他们是否有使用过命令或者脚本打包过,如果能要到将淘汰你的工作量。努力做个资源咖)
5)找iOS开发职员观摩一下他们打包的过程,有些选项差别也会导致你的命令或脚本差别。
例如:For Me

如果勾选了对应的编译命令和导出ipa命令就应为(这只是命令,还要有正确配置好证书和形貌文件,后面会阐述)

如果没有勾选的话 

至于其他涉及到的选项只要你找开发职员要到ExportOptions.plist文件就不用单独去设置了而是像上面一样通过-exportOptionsPlist一样直接设置好了。
二.基本软件安装 

软件安装网上有大量教程这里不再赘述。
1.gitlab    
2.jenkins
3.Xcode(你需要xcode打包看看是否能打包,然后使用命令打包,然后使用脚本,末了才是jenkins打包,如许才能更轻易定位标题,从最简单的开始,一步步来)
4.本地git安装
三.jekins实现ios主动打包的两种方式

1.插件安装
你需要安装的插件重要有:git、 gitlab、Xcode integration、keychains and Provisioning ,这里就不具体举例了,上述列出的必不可少。 
方式二:标题分析下载keychains and Provisioning后,无法上传login.keychains-db文件,重命名为login.keychains后仍然无法上传,方式一就诞生了,即采用命令的方式授权访问login.keychains钥匙串。(方式二具体实现待增补)
 方式一:在jekins地点服务器上配置ios的打包环境(保举:方式二大概在新版jekins中存在钥匙串login.keychains无法上传的标题)
1.双击你从开发职员那里拿到的证书,然后证书就会被添加到钥匙串里。如果出现证书不受信任,可查看
iOS推送证书显示“此证书不受信任”_苹果手机邮箱证书显示不信任-CSDN博客
2.把形貌文件添加到正确位置。
   2.1 起首需要对形貌文件重命名为  形貌文件的UUID.mobileprovisiion
  对于如何获取UUID可以参考
  Xcode中形貌文件的真实目录及查看形貌文件的UUID_ios13.6 形貌文件安装后存储路径-CSDN博客
  2.2  将重命名后的文件拷贝到  /Users/用户名称/Library/MobileDevice/Provisioning Profiles
  3.使用命令检查能否打包成功
建议:先使用Xcode打包一遍看看是否能否打包,然后再使用命令打包
双击xcodeproj文件就能使用xcode打开项目。大概你的项目根目录下是xcworkspace的类型文件,也没有关系
执行下面命令,你需要cd 到项目根目录
  1. #ios编译前清理工程
  2. xcodebuild clean -project iFoxESOP.xcodeproj \  #根目录下的xcodeproj文件
  3.                  -scheme iFoxESOP \   
  4.                  -configuration Release
  5. #如果你的根目录是 xcworkspace类型文件  也没关系 -project 变为  -workspace
  6. xcodebuild clean -workspace iFoxESOP.xcworkspace \  #根目录下的xcworkspace文件
  7.                  -scheme iFoxESOP \   
  8.                  -configuration Release
复制代码
执行编译和导出ipa文件命令,具体如下图。(下图是根目录是xcodeproj文件的环境的时间的命令,如果是xcworkspace类型文件的话,把-project 变为 -workspace就好)
下面两张图开头已在开头具体说明白 


4.如果命令可以打包成功了就可以配置Jenkins了。
   1.新建任务以及从gitlab拉取到工作空间
  具体可以参考我的另外一篇文章,在这内里有提及到如何实现,以及拉取代码的坑
  jenkins+gitlab实现Android主动打包填坑之旅-CSDN博客
  2.点击配置
  

  3.在build shell->选择执行shell
  

  4.esop.sh
  

  5.末了就可以点击立即构建了(主动打包就完成了)
  

  

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

嚴華

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表