【发布时间】:2020-04-14 13:04:06
【问题描述】:
我正在尝试使用 actions/cache 任务的 GitHub Actions 在 GatsbyJS 构建之间持久化缓存数据。
name: Gatsby Contentful Build
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
build_job:
runs-on: self-hosted
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1.1.0
- uses: bahmutov/npm-install@v1.1.0
- name: Cache
uses: actions/cache@v1.1.2
with:
path: .cache
key: cache-folder-key
- name: Cache public folder
uses: actions/cache@v1.1.2
with:
path: public
key: public-folder-key
- run: cd plugins/gatsby-source-contentful && yarn build
- run: yarn build
在初始构建时找不到缓存,然后 gatsby 从头开始创建 .cache 和 public,构建并将这两个文件夹保存到动作缓存。
在第二次构建时,找到了新的缓存,并且 gatsby 构建成功,但没有更新缓存。
我似乎很难理解如何使用 key 名称破坏缓存。
这是我理解它应该起作用的方式,如果我错了,请纠正我。
【问题讨论】:
-
你解决了吗?
-
是的,我设法通过将缓存和公用文件夹保存到外部服务(例如 aws s3)来使其正常工作
-
不能在 GH 动作中保留吗?您能否分享您的解决方案作为答案(即您如何设置工作流程)?我对设置类似的东西非常感兴趣:)
标签: gatsby github-actions