我们正在CI上自动构建APK,但是整个过程大约需要10分钟,而此阶段要消耗80%的时间。
Discovered plugin "cordova-plugin-statusbar" in config.xml. Adding it to the project
Installing "cordova-plugin-statusbar" for android
Adding cordova-plugin-statusbar to package.json
Saved plugin info for "cordova-plugin-statusbar" to config.xml.
这些是config.xml
<plugin name="cordova-plugin-whitelist" spec="1.3.3" />
<plugin name="cordova-plugin-statusbar" spec="2.4.2" />
<plugin name="cordova-plugin-device" spec="2.0.2" />
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />
<plugin name="cordova-plugin-ionic-webview" spec="^2.0.0" />
<plugin name="phonegap-plugin-barcodescanner" spec="^8.0.0">
<variable name="ANDROID_SUPPORT_V4_VERSION" value="27.+" />
</plugin>
<plugin name="cordova-plugin-camera-preview" spec="^0.10.0" />
<plugin name="cordova-plugin-screen-orientation" spec="^3.0.1" />
<plugin name="cordova.plugins.diagnostic" spec="^4.0.10" />
<plugin name="cordova-android-support-gradle-release" spec="^1.4.4">
<variable name="ANDROID_SUPPORT_VERSION" value="26.+" />
</plugin>
<plugin name="cordova-sqlite-storage" spec="^2.4.0" />
<plugin name="cordova-plugin-ionic-keyboard" spec="^2.1.2" />
<plugin name="cordova-plugin-camera" spec="^4.0.3" />
是否可以通过某种方式缓存结果或以任何其他方式加快插件安装的速度来加快这些过程?
答案 0 :(得分:2)
如果将Cordova plugins/
目录置于版本控制下(大概在您的Git存储库中),那么当在CI环境中检出项目时,Cordova将寻找并使用这些本地插件,而不用离开通过npm远程获取每个人。这应该使过程更快。如果/当您需要更新插件时,只需将更新提交到存储库即可。
尽管从理论上讲,您也可以将platforms/
提交到您的仓库中,以加快构建速度(然后Cordova不必安装和构建每个平台项目),但我建议不要这样做,因为Cordova项目应该被认为是易变的。