GitHub action 自动发布 chrome 扩展

description
栏目

1. 前提

  • 用于登录 Chrome 网上应用店开发者后台、且扩展归该账号所有的 Google 账号已开启 两步验证
  • 用 这个开发者账号 去完成下面的授权(和 Cloud 项目「所有者」可以不是同一个账号,但发布扩展时要用「拥有该扩展」的那个账号去点授权)。

2. Google Cloud 项目

  1. 打开 Google Cloud Console
  1. 选中已有项目,或 新建项目
  1. 顶部搜索 Chrome Web Store API → 进入 → 启用

3. OAuth 同意屏幕

  1. 左侧 API 和服务 → OAuth 同意屏幕
  1. 选 外部(或适合你组织的类型)→ 按要求填写应用名称、用户支持邮箱、开发者联系邮箱等。
  1. 测试用户:把你的 Google 开发者账号邮箱 加进去(在「测试」阶段必须加,否则只有你本人能登)。
  1. 保存。

4. 创建 OAuth 客户端(关键:类型与重定向)

  1. API 和服务 → 凭据 → 创建凭据 → OAuth 客户端 ID
  1. 应用类型 选 Web 应用程序(官方文档要求如此)。
  1. 已获授权的重定向 URI 里新增一条(必须完全一致):
    1. https://developers.google.com/oauthplayground
  1. 创建后记下 客户端 ID客户端密钥(对应 GitHub 里的 CHROME_CLIENT_IDCHROME_CLIENT_SECRET)。

5. 在 OAuth 2.0 Playground 里拿 Refresh Token

  1. 打开 OAuth 2.0 Playground
  1. 右上角 齿轮 → 勾选 Use your own OAuth credentials,填入上一步的 Client ID 和 Client Secret
  1. 在 Step 1 里:
      • 若可填 scope,使用:https://www.googleapis.com/auth/chromewebstore
  1. 点 Authorize APIs,用 拥有该扩展的开发者 Google 账号 登录并同意。
  1. Step 2 点 Exchange authorization code for tokens
  1. 在返回结果里找到 Refresh token(一长串),复制下来 → 这就是 CHROME_REFRESH_TOKEN
      • 若没有 refresh token,多半是第一次未带 offline;可在 Playground 设置里看是否有 Force re-consent / 或按官方文档用带 access_type=offline 的授权链接重新授权一次。