如何在 Travis CI 中缓存通过 `apt-get` 安装的包?

How to cache packages which have been installed via `apt-get` in Travis CI?

因此,对于我的 .travis.yml,我正在通过 apt-get 安装一些软件包,下载时间不会太长,但安装时间会很长。

有没有办法让 Travis CI 记住已安装的软件包,这样我就不必在每次构建时都从头开始安装它们?

似乎没有简单或方便的方法来缓存您需要通过 apt-get 安装的所有软件包。根据 Caching Dependencies and Directories 文档,Travis CI 目前只为 Bundler、CocoaPods、Yarn(以及其他一些)提供 "convenience" 缓存。

但是!如果您可以确定 apt-get 安装您需要的每个包的位置(因为安装位置因一个包而异),您可以按照 Arbitrary directories 中的步骤单独缓存每个安装目录文档。

希望对您有所帮助。如果您有任何其他问题,请告诉我,我很乐意尽我所能提供帮助。干杯!

如果您需要的软件包在 Travis' whitelist 中,您可以通过将它们添加到您的 .travis.yml:

来更简单地安装它们
addons:
  apt:
    packages:
    - cmake
    - package-xy

并缓存它们:

cache:
  apt: true