0

我正在使用 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

有任何想法吗???

4

2 回答 2

2

解决方案是不要在 CI 中重建库,在将它们添加到存储库并跳过 CI 中的构建部分之后,您将看到构建时间大大减少。

于 2019-10-31T09:04:42.427 回答
0

尝试删除--no-use-binaries.

通过选择不使用二进制文件,大型依赖项无法为您提供预编译的二进制文件以大大减少编译时间。如果您删除该标志,您应该注意到编译速度加快。

于 2020-06-03T07:37:55.570 回答