Skip to content

ci(ogpeek-extension): auto-publish to Chrome Web Store on release#35

Merged
minjun0219 merged 1 commit into
mainfrom
claude/chrome-store-auto-deploy-jZDgd
May 7, 2026
Merged

ci(ogpeek-extension): auto-publish to Chrome Web Store on release#35
minjun0219 merged 1 commit into
mainfrom
claude/chrome-store-auto-deploy-jZDgd

Conversation

@minjun0219

Copy link
Copy Markdown
Owner

Summary

  • Add a chrome-webstore-upload-cli@3 step to the existing publish-ogpeek-extension release job. After the GitHub Release zip is uploaded, the same ogpeek-chrome.zip is pushed to the Chrome Web Store and submitted for review (--auto-publish).
  • Gate the new step with vars.CHROME_AUTOPUBLISH == 'true'. Until the variable is set, the step is a no-op, so the next release ships through the existing GitHub Release path without surprises.
  • Document the bootstrap procedure in AGENTS.md ## Releases (developer registration → first manual upload + listing → OAuth client + refresh token → flip the variable) and update the extension README (en/ko) so the "no web store" claim no longer contradicts the workflow.

Why gated

The Chrome Web Store API can only update an existing item — the first upload, store listing, screenshots, privacy policy, single-purpose justification, and <all_urls> host-permission justification have to be filled in by hand in the Developer Dashboard before any API call can succeed. The variable lets that bootstrap happen at the user's pace without breaking releases.

What's needed before the first auto-publish run

Kind Name
Variable CHROME_AUTOPUBLISH ('true')
Secret CHROME_EXTENSION_ID
Secret CHROME_CLIENT_ID
Secret CHROME_CLIENT_SECRET
Secret CHROME_REFRESH_TOKEN

Test plan

  • Cut a release-please PR with CHROME_AUTOPUBLISH unset and confirm the new step is skipped (no impact on existing release flow).
  • Complete the manual bootstrap in the dashboard, fill the four CHROME_* secrets, set CHROME_AUTOPUBLISH=true, then cut the next release-please tag and confirm the upload + review-submit step succeeds.
  • Verify the uploaded version matches package.json#version of packages/ogpeek-extension.
Korean

릴리스 잡(publish-ogpeek-extension) 끝에 chrome-webstore-upload-cli@3 스텝을 추가해 GitHub Release에 올라가는 zip을 그대로 Chrome Web Store에 업로드하고 심사 제출까지 자동화합니다. 다만 Chrome Web Store API는 이미 존재하는 아이템만 갱신할 수 있어서, 첫 등록(개발자 계정·스토어 리스팅·스크린샷·프라이버시 정책 등)은 반드시 Developer Dashboard에서 수동으로 마쳐야 합니다.

이 시점에 secrets/vars가 비어 있을 수 있으므로 vars.CHROME_AUTOPUBLISH == 'true'로 게이트했습니다 — 변수가 비어 있는 동안에는 step이 통째로 skip돼 기존 GitHub Releases zip 배포 흐름은 그대로 유지됩니다. 부트스트랩 절차와 필요한 4 개의 secret + 1 개의 variable 목록은 AGENTS.md## Releases 섹션을 보세요. 익스텐션 README의 "웹 스토어 배포 안 함" 문구도 두 채널 병행으로 갱신했습니다.


Generated by Claude Code

Wire chrome-webstore-upload-cli into the existing release-please
publish-ogpeek-extension job so that every cut tag pushes the same
ogpeek-chrome.zip to the store and submits it for review. Gated by
vars.CHROME_AUTOPUBLISH so the step is a no-op until the first manual
upload provides an item ID and the four CHROME_* secrets are filled —
existing GitHub Release zip distribution keeps working unchanged.

Document the bootstrap (developer registration, first manual listing,
OAuth refresh token) in AGENTS.md and replace the "no web store" claim
in the extension's README (en/ko) so future agents pick the configured
channels.
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
ogpeek fc1604a Commit Preview URL

Branch Preview URL
May 06 2026, 10:57 PM

@minjun0219 minjun0219 marked this pull request as ready for review May 7, 2026 00:22
Copilot AI review requested due to automatic review settings May 7, 2026 00:22
@minjun0219 minjun0219 merged commit 30149e3 into main May 7, 2026
5 checks passed
@minjun0219 minjun0219 deleted the claude/chrome-store-auto-deploy-jZDgd branch May 7, 2026 00:22

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fc1604af52

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

CLIENT_ID: ${{ secrets.CHROME_CLIENT_ID }}
CLIENT_SECRET: ${{ secrets.CHROME_CLIENT_SECRET }}
REFRESH_TOKEN: ${{ secrets.CHROME_REFRESH_TOKEN }}
run: npx -y chrome-webstore-upload-cli@3 upload --source dist/ogpeek-chrome.zip --auto-publish

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Invoke the CLI without upload to actually publish

With chrome-webstore-upload-cli@3, this command will only upload the zip and will not submit it for review. I checked the v3 CLI docs/source: the README says omitting the command “will both upload and publish the extension,” while upload is the upload-only command, and the config sets auto-publish only when no command is provided. In releases where CHROME_AUTOPUBLISH is enabled, the workflow can therefore succeed without performing the promised Chrome Web Store publish step; use chrome-webstore-upload --source dist/ogpeek-chrome.zip (or equivalent publish flow) instead.

Useful? React with 👍 / 👎.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR extends the existing release automation for ogpeek-extension by optionally uploading the generated ogpeek-chrome.zip to the Chrome Web Store (and submitting it for review) as part of the release-please workflow, while keeping the behavior gated behind a repo variable to avoid disrupting current releases.

Changes:

  • Add a gated Chrome Web Store upload + auto-publish (review submission) step to the publish-ogpeek-extension job.
  • Update release/developer documentation (AGENTS.md) with required secrets/variable and one-time bootstrap steps.
  • Update extension README (EN/KR) to reflect dual distribution channels (GitHub Releases + Chrome Web Store).

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
packages/ogpeek-extension/README.md Updates distribution section to describe GitHub Releases + optional Chrome Web Store publishing.
packages/ogpeek-extension/README.ko.md Korean equivalent distribution doc update.
AGENTS.md Adds “Chrome Web Store auto-publish” release documentation (secrets/vars + bootstrap).
.github/workflows/release-please.yml Adds gated chrome-webstore-upload-cli@3 step to upload/submit the extension zip to the Chrome Web Store.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +174 to +178
- name: Upload and publish to Chrome Web Store
if: ${{ vars.CHROME_AUTOPUBLISH == 'true' }}
working-directory: packages/ogpeek-extension
env:
EXTENSION_ID: ${{ secrets.CHROME_EXTENSION_ID }}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants