CircleCIでrebuildするとき、キャッシュなしで実行する「rebuild without cache」機能があるんですが、workflowを使った場合その機能が使えません(ボタンが表示されません)。
cacheのkeyに環境変数を使うことで似たような機能を実現します。
対応
CircleCIで、Settings > Environment Variables で環境変数(今回はCACHE_KEY
)を設定して、
こんな感じでkeyに利用します。
.circleci/config.yml
- restore_cache:
keys:
- gem-cache-{{ .Environment.CACHE_KEY }}-{{ arch }}-{{ .Branch }}-{{ checksum "Gemfile.lock" }}
- gem-cache-{{ .Environment.CACHE_KEY }}-{{ arch }}-{{ .Branch }}
- gem-cache-{{ .Environment.CACHE_KEY }}
環境変数を別の値に書き換えてrebuildすればkeyが異なるのでキャッシュなしで実行できます。
以上です