打包原理
1.Jenkins根据配置的git地址,分支,账号,环境,拉取主工程代码并修改环境配置文件
2.执行pod update命令(配置了哪台服务器就是哪台服务器电脑上执行)
3.执行打包脚本
4.发布到蒲公英
注意事项
1.配置的账号,只是供第一步拉取代码使用
2.执行第二步pod update,拉取代码时用的是本地电脑的git配置,跟你的配置的账号无关
3.执行打包脚本的时候,当前的文件目录pwd=‘Users/Shared/workspace/workspace’(这个目录跟你jenkins的安装路径有关,可能会不一样),既你执行脚本的时候,如果脚本里面是获取的相对路径,那你就要小心了。
常见问题
Q:为啥我的配置的用户明明有权限拉取代码,但是打包的时候还是会报没有权限,或者是代码仓库不存在呢?
A:不要怀疑,这还是因为账号没有权限导致的。哈哈,是不是感觉很矛盾,不要慌看下面分析。配置的账号有权限,只能保证Jenkins拉取主工程的时候不报错,但是拉取代码之后pod update其实也是相当于拉代码,只是拉取的不是主工程,而是相应的组件代码罢了,因此也是需要git权限的,而此时用到的git账号并不是你配置的那个账号,而是电脑本地配置的,(如果你之前配置过,账号密码保存在钥匙串中,没配置的话,会提示你输入账号密码)。因此得出结论就是,你本地配置的git账号没有拉取组件代码的权限,2个办法解决,1、找到拥有代码库admin权限的成员给账号添加权限,
2、配置本地电脑的git账号,
2.1、删除钥匙串中相应的密码凭据。如果钥匙串中没有相应的密码凭据,那是因为你电脑还没配置过,跳过此步骤。
2.2、到终端执行git clone http://你的组件代码地址,此时会提示你输入账号密码(UM账号密码),输入即可配置完成,参考https://www.jianshu.com/p/77b0340a02f3
Q:为啥我所有的配置都没问题,还是打包失败了呢?
A:莫慌,终极大招,请在本地用Xcode打开你的工程(Jenkins会下载主工程在你本地,地址为Users/Shared/workspace/workspace下面对应的打包任务文件夹里面),pod update,然后archive一下,看看是不是报错了,如果没报错,那还是你的配置有问题。如果报错了,Xcode可以看到详细的报错信息
网友评论