Azure Pipelines 作业卡在构建 iOS 版本的 React Native 应用程序
Posted
技术标签:
【中文标题】Azure Pipelines 作业卡在构建 iOS 版本的 React Native 应用程序【英文标题】:Azure Pipelines job stuck building iOS version of React Native app 【发布时间】:2019-07-29 08:47:15 【问题描述】:我正在尝试使用 Azure Pipelines 构建一个 ios 版本的 React Native 应用程序。我正在使用 fastlane 的操作 build_ios_app
运行构建。
它在我的本地机器上运行得很好,但它卡在 Azure 上,输出如下:
[08:32:21]: ▸ Compiling LaunchScreen.xib
[08:32:25]: ▸ Processing Info.plist
[08:32:25]: ▸ Running script: Bundle React Native code and images
[08:32:32]: ▸ the transform cache was reset.
这通常是在新的终端窗口中打开打包程序的步骤。
在我的本地机器上,这一步的输出看起来有点不同:
[11:38:15]: ▸ Processing Info.plist
[11:38:15]: ▸ Running script 'Bundle React Native code and images'
[11:38:15]: ▸ Touching Demo.app (in target: Demo)
[11:38:16]: ▸ Archive Succeeded
没有 the transform cache was reset.
表示节点在 Azure 上的某个时间点内存不足?
react-native bundle ...
)可以正常工作。
更新:增加可用于 nodejs 任务的内存(在 NODE_OPTIONS
环境变量中设置 --max-old-space-size=8096
)会使作业(至少)失败并显示以下错误消息:
2019-07-29T09:58:04.6108820Z error: File /Users/vsts/Library/Developer/Xcode/DerivedData/Demo-algdypqdcfcqirejrjxxgvqsmfdv/Build/Intermediates.noindex/ArchiveIntermediates/Demo/BuildProductsPath/Release-iphoneos/Demo.app/main.jsbundle does not exist. This must be a bug with[0m
2019-07-29T09:58:04.6109130Z
2019-07-29T09:58:04.6109180Z
2019-07-29T09:58:04.6109640Z [33m▸[0m [39;1mGenerating 'Demo.app.dSYM'[0m
2019-07-29T09:58:04.6109740Z ** ARCHIVE FAILED **
2019-07-29T09:58:04.6109810Z
2019-07-29T09:58:04.6109850Z
2019-07-29T09:58:04.6109930Z The following build commands failed:
2019-07-29T09:58:04.6111020Z PhaseScriptExecution Bundle\ React\ Native\ code\ and\ images /Users/vsts/Library/Developer/Xcode/DerivedData/Demo-algdypqdcfcqirejrjxxgvqsmfdv/Build/Intermediates.noindex/ArchiveIntermediates/Demo/IntermediateBuildFilesPath/Demo.build/Release-iphoneos/Demo.build/Script-00DD1BFF1BD5951E006B06BC.sh
2019-07-29T09:58:04.6111240Z (1 failure)
有什么办法解决这个问题吗?
【问题讨论】:
【参考方案1】:我在本地机器上遇到了同样的问题,解决方案是更新到最新版本的node js。
我猜你的 CI 环境应该是自包含的,所以版本冲突应该不是问题。但是你可能在不知不觉中将 fastlane 更新为与 Azure 服务器上的节点不兼容的版本。
【讨论】:
以上是关于Azure Pipelines 作业卡在构建 iOS 版本的 React Native 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
Blazor 范围内的 CSS 未在 Azure Pipelines 上构建
如何在 Azure Pipelines YAML 构建定义中接收修订
如何使用 Azure Key Vault 中的证书/密钥对使用 Azure Pipelines 构建的代码进行签名?
如何在 Azure DevOps Pipelines 上指定 Android SDK 构建工具版本