Compare commits

...

1 Commits

Author SHA1 Message Date
alexsparkes
4bcb7f735d chore: add submit-beta and update submit workflows for automated store deployment 2026-04-23 23:13:54 +01:00
2 changed files with 100 additions and 13 deletions

57
.github/workflows/submit-beta.yml vendored Normal file
View File

@@ -0,0 +1,57 @@
name: Submit to Browser Stores (Beta)
on:
release:
types: [prereleased]
workflow_dispatch:
inputs:
tag:
description: "Pre-release tag to re-submit (e.g. v7.6.1-beta.3)"
required: true
permissions:
contents: read
jobs:
submit-beta:
runs-on: ubuntu-latest
environment: beta
steps:
- name: Resolve tag and version
id: tag
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
TAG="${{ github.event.inputs.tag }}"
else
TAG="${{ github.event.release.tag_name }}"
fi
echo "tag=$TAG" >> $GITHUB_OUTPUT
echo "version=${TAG#v}" >> $GITHUB_OUTPUT
- name: Download release ZIPs
run: |
mkdir -p dist
gh release download "${{ steps.tag.outputs.tag }}" \
--pattern "chrome-*.zip" \
--dir ./dist
env:
GH_TOKEN: ${{ github.token }}
- name: Verify ZIP
run: |
ls -la dist/
test -n "$(ls dist/chrome-*.zip 2>/dev/null)" || \
{ echo "chrome ZIP not found in dist/"; exit 1; }
- name: Submit to Chrome Web Store (Trusted Testers)
uses: PlasmoHQ/bpp@v3
with:
keys: ${{ secrets.SUBMIT_KEYS_BETA }}
chrome-zip: dist/chrome-${{ steps.tag.outputs.version }}.zip
- name: Summary
if: always()
run: |
echo "## Beta Store Submission: ${{ steps.tag.outputs.tag }}" >> $GITHUB_STEP_SUMMARY
echo "- Chrome Web Store (trustedTesters)" >> $GITHUB_STEP_SUMMARY

View File

@@ -1,27 +1,57 @@
name: Submit
name: Submit to Browser Stores
on:
release:
types: [released]
workflow_dispatch:
inputs:
tag:
description: "Release tag to submit, i.e 6.0.5"
description: "Release tag to re-submit (e.g. v7.6.1)"
required: true
permissions:
contents: read
jobs:
submit:
runs-on: ubuntu-latest
environment: production
steps:
- name: Setup Chrome
uses: browser-actions/setup-chrome@latest
with:
chrome-version: latest
- name: Download Github Release Assets
uses: PlasmoHQ/download-release-asset@v1.0.0
with:
tag: ${{ github.event.inputs.tag }}
- name: Browser Plugin Publish
uses: PlasmoHQ/bpp@v2
- name: Resolve tag and version
id: tag
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
TAG="${{ github.event.inputs.tag }}"
else
TAG="${{ github.event.release.tag_name }}"
fi
echo "tag=$TAG" >> $GITHUB_OUTPUT
echo "version=${TAG#v}" >> $GITHUB_OUTPUT
- name: Download release ZIPs
run: |
mkdir -p dist
gh release download "${{ steps.tag.outputs.tag }}" \
--pattern "chrome-*.zip" \
--dir ./dist
env:
PUPPETEER_EXECUTABLE_PATH: /opt/hostedtoolcache/chromium/latest/x64/chrome
GH_TOKEN: ${{ github.token }}
- name: Verify ZIP
run: |
ls -la dist/
test -f "dist/chrome-${{ steps.tag.outputs.version }}.zip" || \
{ echo "chrome ZIP not found"; exit 1; }
- name: Submit to Chrome Web Store
uses: PlasmoHQ/bpp@v3
with:
keys: ${{ secrets.SUBMIT_KEYS }}
chrome-zip: dist/chrome-${{ steps.tag.outputs.version }}.zip
- name: Summary
if: always()
run: |
echo "## Store Submission: ${{ steps.tag.outputs.tag }}" >> $GITHUB_STEP_SUMMARY
echo "- Chrome Web Store (listed)" >> $GITHUB_STEP_SUMMARY