Carthage Building 方案使 Bitrise 在 90 分钟后超时
Carthage Building scheme makes Bitrise to timeout after 90 minutes
我正在使用 Bitrise,并且我已将我的开发机器和 bitrise 堆栈更新为 Xcode 11。
当 运行 构建时,需要重新生成 Carthage 依赖项,因为我使用的是 AWS 依赖项,即使在我的 Mac book pro 中,它们也需要很长时间来构建并且它们使Bitrise 构建超时。
这里有一个关于如何配置我的 bitrise.yml 的例子:
...
workflows:
test:
steps:
- gitlab-status:
run_if: not (enveq "BITRISE_GIT_COMMIT" "")
inputs:
- private_token: "$GITLAB_STATUS_TOKEN"
- preset_status: running
- api_base_url: https://gitlab.company.cloud/api/v4
- activate-ssh-key:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone: {}
- cache-pull:
inputs:
- is_debug_mode: 'true'
- certificate-and-profile-installer: {}
- carthage:
inputs:
- verbose_log: 'yes'
- carthage_options: "--platform ios --no-use-binaries --cache-builds"
- cocoapods-install: {}
- xcode-test:
inputs:
- scheme: CompanyApp
- project_path: CompanyApp.xcworkspace
- simulator_device: iPhone 8
- xcode-test:
inputs:
- project_path: CompanyApp.xcworkspace
- simulator_device: iPhone 8
- scheme: CompanyAppUITests
- gitlab-status:
run_if: not (enveq "BITRISE_GIT_COMMIT" "")
inputs:
- private_token: "$GITLAB_STATUS_TOKEN"
- api_base_url: https://gitlab.company.cloud/api/v4
- cache-push:
is_always_run: true
inputs:
- is_debug_mode: 'true'
- deploy-to-bitrise-io: {}
...
以防万一,它们是构建日志的最后两行
*** Building scheme "AWSLogs" in AWSiOSSDKv2.xcodeproj
*** Building scheme "AWSMachineLearning" in AWSiOSSDKv2.xcodeproj
有什么想法吗???
解决方案是不重建 CI 中的库,将它们添加到存储库并跳过 CI 中的构建部分后,您会发现构建时间大大减少。
尝试删除 --no-use-binaries
.
通过选择不使用二进制文件,大型依赖项无法为您提供预编译的二进制文件以大大减少编译时间。如果删除该标志,您应该会注意到编译速度会加快。
我正在使用 Bitrise,并且我已将我的开发机器和 bitrise 堆栈更新为 Xcode 11。
当 运行 构建时,需要重新生成 Carthage 依赖项,因为我使用的是 AWS 依赖项,即使在我的 Mac book pro 中,它们也需要很长时间来构建并且它们使Bitrise 构建超时。
这里有一个关于如何配置我的 bitrise.yml 的例子:
...
workflows:
test:
steps:
- gitlab-status:
run_if: not (enveq "BITRISE_GIT_COMMIT" "")
inputs:
- private_token: "$GITLAB_STATUS_TOKEN"
- preset_status: running
- api_base_url: https://gitlab.company.cloud/api/v4
- activate-ssh-key:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone: {}
- cache-pull:
inputs:
- is_debug_mode: 'true'
- certificate-and-profile-installer: {}
- carthage:
inputs:
- verbose_log: 'yes'
- carthage_options: "--platform ios --no-use-binaries --cache-builds"
- cocoapods-install: {}
- xcode-test:
inputs:
- scheme: CompanyApp
- project_path: CompanyApp.xcworkspace
- simulator_device: iPhone 8
- xcode-test:
inputs:
- project_path: CompanyApp.xcworkspace
- simulator_device: iPhone 8
- scheme: CompanyAppUITests
- gitlab-status:
run_if: not (enveq "BITRISE_GIT_COMMIT" "")
inputs:
- private_token: "$GITLAB_STATUS_TOKEN"
- api_base_url: https://gitlab.company.cloud/api/v4
- cache-push:
is_always_run: true
inputs:
- is_debug_mode: 'true'
- deploy-to-bitrise-io: {}
...
以防万一,它们是构建日志的最后两行
*** Building scheme "AWSLogs" in AWSiOSSDKv2.xcodeproj
*** Building scheme "AWSMachineLearning" in AWSiOSSDKv2.xcodeproj
有什么想法吗???
解决方案是不重建 CI 中的库,将它们添加到存储库并跳过 CI 中的构建部分后,您会发现构建时间大大减少。
尝试删除 --no-use-binaries
.
通过选择不使用二进制文件,大型依赖项无法为您提供预编译的二进制文件以大大减少编译时间。如果删除该标志,您应该会注意到编译速度会加快。