我正在设置一个 Github 操作工作流,以让 Sanity CLI 定期执行脚本。该脚本从所有文档中生成所有标签/类别的 JSON,这是一个不需要每次访问网站时都运行但偶尔刷新的昂贵查询。由于我有一个 monorepo,我通常使用 Sanity CLI 来执行cd studio && sanity exec src/generateFilters.js
. 我正在尝试使用 Github 操作来复制它,但我在切换目录时遇到问题,它告诉我在项目上下文之外无法使用 Sanity(所以我没有设法将目录正确切换到工作室子文件夹)我想我使用的方式可能有语法错误uses
,但我想我已经接近了!
name: Run Sanity Generate Filters
on:
schedule:
- cron: "0 0 * * *"
jobs:
generateFilters:
runs-on: ubuntu-18.04
name: Generate Filters
steps:
- name: Generate Filters In Studio
uses: sanity-io/github-action-sanity@v0.1-alpha
working-directory: ./studio
env:
SANITY_AUTH_TOKEN: ${{ secrets.SANITY_API_TOKEN }}
# saves JSON files in '../web/data'
with:
args: exec src/generateFilters.js --with-user-token
- name: Update Repo
uses: stefanzweifel/git-auto-commit-action@v4
working-directory: /
with:
commit_message: "Automated filter update"
branch: master
file_pattern: ./web/data/*.json