代码之家  ›  专栏  ›  技术社区  ›  djt

Circleci for iOS-缓存cocoapods依赖项

  •  1
  • djt  · 技术社区  · 7 年前

    我正试图在Circleci中使用 fastlane scan . 运行测试很有效,但是通过从cocoapods安装依赖项,总时间会增加很多。

    我尝试通过执行以下操作来缓存pods目录,但是,校验和在 restore_cache 步骤和 save_cache 步骤:

    - restore_cache:
        key: 1-pods-{{ checksum "Podfile.lock" }}
    - run:
        name: Install Pods
        command: pod install
    - save_cache:
        key: 1-pods-{{ checksum "Podfile.lock" }}
        paths:
          - ./Pods
    

    基本上, pod install 使校验和更改,即使没有更改任何数据包。因此,保存在缓存中的密钥与试图从缓存中恢复的密钥不一致。

    有更好的方法吗?

    1 回复  |  直到 7 年前
        1
  •  1
  •   dnephin    7 年前

    是的,有一种方法可以做到这一点。 restore_cache 接受键前缀( https://circleci.com/docs/2.0/configuration-reference/#restore_cache )因此,要返回到早期的缓存,可以使用如下内容:

    - restore_cache:
        keys:
          - 1-pods-{{ checksum "Podfile.lock" }}
          - 1-pods-
    

    这里有一些更具体的指导方针: https://circleci.com/docs/2.0/ios-migrating-from-1-2/#installing-cocoapods