CircleCIのmacOS ビルドイメージにはHomebrewがプリインストールされているため、brew install
を使用するだけで、パッケージをインストールできます。
しかし、そのまま使うとインストールにとても時間がかかるためキャッシュを利用して速度を上げます。
方法
キャッシュ対象は下記
-
$HOME/Library/Caches/Homebrew
- ダウンロードしたフォーミュラのキャッシュ
-
/usr/local/Homebrew
- metadataなど
save_cache
前に brew cleanup
で不要なキャッシュを削除する。
完成したconfig.yml
.circleci/config.yml
version: 2.1
jobs:
build:
macos:
xcode: "10.2.1"
steps:
- restore_cache:
keys:
- homebrew-v1-
- run: brew update
- run: brew install cowsay
- run: brew upgrade
- run: brew cleanup
- save_cache:
key: homebrew-v1-{{ epoch }}
paths:
- /Users/distiller/Library/Caches/Homebrew
- /usr/local/Homebrew
- run:
name: cowsay hi
command: cowsay Hi!
workflows:
build-and-test:
jobs:
- build
Before / After
restore_cache
に時間がかかるようになりますが、brew update
の時間が短縮されます。