You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub Workflow中用gh清除缓存?解决403权限报错

解决GitHub Workflow清除缓存时的403权限问题

问题根源

你遇到的Resource not accessible by integration报错,本质是Workflow默认使用的GITHUB_TOKEN权限不足。默认情况下,这个token只有仓库的只读权限,而执行gh cache delete --all需要对GitHub Actions缓存的写入/删除权限。

解决方案

直接在Workflow配置中显式声明所需权限即可,无需额外复杂操作:

  1. 修改你的Workflow文件,在jobs下的任务中添加permissions字段,指定actions: write权限:
name: 定期清除GitHub缓存
on:
  schedule:
    - cron: '0 0 * * 0' # 每周日凌晨自动执行,可按需调整 cron 表达式
  workflow_dispatch: # 保留手动触发选项,方便测试

jobs:
  clear-cache:
    runs-on: ubuntu-latest
    # 声明所需权限,覆盖默认的只读权限
    permissions:
      actions: write
    steps:
      # 不需要 actions/checkout 步骤,缓存操作无需克隆仓库代码
      - name: 删除所有缓存
        run: gh cache delete --all
  1. 提交并推送修改后的Workflow文件到仓库,之后无论是定时触发还是手动触发,都能正常执行缓存清理操作。

额外说明

  • GitHub官方托管的Runner已经预装了gh CLI,无需手动安装;
  • actions: write权限足够覆盖缓存删除操作,不需要设置write-all这类宽泛权限;
  • 该方案适用于免费版组织下的私有仓库,权限配置不受组织版本限制。

内容的提问来源于stack exchange,提问作者roskakori

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 00:05:05