Skip to content

Commit 7db76a9

Browse files
Add web store publish workflow and tooling
- Add publish-browser-extension for Chrome/Firefox uploads - Add manual workflow_dispatch publish.yml workflow - Add npm publish/publish:dry-run scripts - Gitignore .env.submit (store credentials) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 7786428 commit 7db76a9

4 files changed

Lines changed: 605 additions & 1 deletion

File tree

.github/workflows/publish.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Publish to Web Stores
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
tag:
7+
description: 'Release tag (e.g. v1.0.0-rc5)'
8+
required: true
9+
10+
jobs:
11+
publish:
12+
runs-on: ubuntu-latest
13+
timeout-minutes: 10
14+
steps:
15+
- name: Download release artifacts
16+
env:
17+
GH_TOKEN: ${{ github.token }}
18+
run: |
19+
gh release download "${{ inputs.tag }}" --pattern '*.zip' --pattern '*.xpi' --repo "${{ github.repository }}"
20+
21+
- name: Publish to web stores
22+
run: npx publish-browser-extension@4 --chrome-zip *.zip --firefox-zip *.xpi
23+
env:
24+
CHROME_EXTENSION_ID: ${{ secrets.CHROME_EXTENSION_ID }}
25+
CHROME_CLIENT_ID: ${{ secrets.CHROME_CLIENT_ID }}
26+
CHROME_CLIENT_SECRET: ${{ secrets.CHROME_CLIENT_SECRET }}
27+
CHROME_REFRESH_TOKEN: ${{ secrets.CHROME_REFRESH_TOKEN }}
28+
FIREFOX_EXTENSION_ID: github-bookmarked-issues@extensions
29+
FIREFOX_JWT_ISSUER: ${{ secrets.FIREFOX_JWT_ISSUER }}
30+
FIREFOX_JWT_SECRET: ${{ secrets.FIREFOX_JWT_SECRET }}
31+
FIREFOX_CHANNEL: listed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@ tests/runs/
1212

1313
# Environment variables (may contain GitHub session credentials)
1414
.env
15+
.env.submit
1516
.env.expired_auth.bak

0 commit comments

Comments
 (0)