gpt4 book ai didi

ios - 将相互依赖的 Cocoapods 推送到 Repo CDN - 最终一致性问题

转载 作者:行者123 更新时间:2023-12-02 00:03:33 25 4
gpt4 key购买 nike

如果有人知道自 Repo CDN 更新以来有效地将相互依赖的 pod 推送到 CocoaPods Trunk 的方法,我很感兴趣。

假设我在 monorepo 中有 2 个 pod:pod1pod2,其中 pod1 被列为 pod2< 的依赖项/strong>.

我的 CI 管道中的脚本会增加相应规范文件中 pod 和依赖项的版本。

pod1.podspec:

...
s.version = 1.0.1

pod2.podspec:

...
s.version = 1.4.4
s.dependency 'pod1', '1.0.1'

然后,脚本将 Pod 一个接一个地推送到 Trunk:

  1. pod push pod1.podspec新版本(1.0.1)下成功推送到Trunk
  2. pod push pod2.podspec - 验证失败并出现错误,例如
-> pod2 (1.4.4)
- ERROR | [iOS] unknown: Encountered an unknown error (CocoaPods could not find compatible versions for pod "pod1":
In Podfile:
pod2 was resolved to 1.4.4, which depends on
pod1 (= 1.0.1)

如果我等待 5 分钟然后运行 ​​pod push pod2.podspec再次,它成功了。

Repo CDN 中的对象的 TTL 约为 5 分钟。

可以让部署脚本在每次 pod 推送后等待 5 分钟,但这并不是最理想的,特别是对于具有许多相互依赖的 pod 的 monorepos。我考虑过放宽版本要求,例如s.dependency 'pod1', '~> 1.0.1'但这也不总是一个可行的选择。

我无法找到有关此问题的太多信息,因此我想看看是否有人对此问题找到了更好的解决方案。

最佳答案

尝试在 pod Push pod1.podspec 之后添加 pod repo update

关于ios - 将相互依赖的 Cocoapods 推送到 Repo CDN - 最终一致性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59656454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com