持续集成到今天,回头望去满眼都是坑,简单梳理一下。。。。


一、iOS问题

1、因为两个平台用的xcode版本不一致,需要升级到xcode8,然后xcode打包有个大坑,需要将自动管理改为手动管理证书。

1
2
sed -i '' 's/ProvisioningStyle = Automatic;/ProvisioningStyle = Manual;/g'
"$project_path/project.pbxproj"

2、xcode8打包多了个PROVISIONING_PROFILE_SPECIFIER需要指定证书具体名称。
最后用gym打包成功:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
DEVELOPER_DIR="/Applications/Xcode8.app"
PROVISIONING_PROFILE_SPECIFIER="${PROVISIONING_PROFILE_SPECIFIER}"
gym
--workspace ${workspace_path} --scheme ${scheme} --clean
--configuration ${configuration}
--xcargs"PRODUCT_BUNDLE_IDENTIFIER='${bundle_id}'
PROVISIONING_PROFILE='${rightProvision}'
DEVELOPMENT_TEAM='${DEVELOPMENT_TEAM}'"
--export_method ${export_method}
--archive_path ${archive_path}
--codesigning_identity "${rightDistributionSign}"
--export_options ${ExoptionPlist}
--output_directory ${ipa_path}
--output_name ${ipa_name}

3、pod install总是出现问题,分析可能是因为网络或者本机pod安装有问题。
若是pod问题,可以通过升级gem解决。

1
2
sudo gem update --system
sudo gem install -n /usr/local/bin cocoapods

4、很奇特命令行总是提示warning:Insecure would writable dir /usr/local/bin in path:mode 04077。

1
sudo chmod go -w /usr/local/bin


二、安卓问题

1、在集成monkey执行过程中,出现增加下游项目,但是在上游项目执行完之后,下游项目却不执行的奇怪问题,使用插件Build Other Project

1
2
3
4
5
6
配置configure build authorization==>Run as who triggered Build
设置Build after other project are built==>在构建不稳定时依然触发
配置Copy artifacts from another project,需要注意的是上一个项目一定要archive the
artifacts
通过解压tar -zxf /archive.tgz -C out/
adb install -r out/*.apk

还有iOS两个平台证书合并之后的问题待我解决。。。。。希望可以梳理一下苹果的证书的各种问题,等我足够了解吧。