Skip to content

Commit

Permalink
Split workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
jsmnbom committed Jul 24, 2024
1 parent a71c74f commit 8c33dac
Showing 1 changed file with 55 additions and 14 deletions.
69 changes: 55 additions & 14 deletions .github/workflows/build-extension.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,30 +25,71 @@ jobs:
- run: bun run dist
- run: bun run dist:lint

- name: Sign pre-release for firefox
- name: Create draft release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VERSION: ${{ steps.semver.outputs.fullversion }}
PRERELEASE: ${{ steps.semver.outputs.prerelease }}
DIST_SOURCE: dist/artifacts/source/ao3-enhancements_source_${{ steps.semver.outputs.fullversion }}.zip
DIST_CHROME: dist/artifacts/chrome/ao3-enhancements_chrome_${{ steps.semver.outputs.fullversion }}.zip
run: gh release create --draft --generate-notes --prerelease=$PRERELEASE v$VERSION $DIST_SOURCE $DIST_CHROME

- name: Upload dist
uses: actions/upload-artifact@v4
with:
name: dist
path: dist

firefox:
runs-on: ubuntu-latest
needs: build

steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- uses: actions/download-artifact@v4

- name: Submit to AMO
env:
API_KEY: ${{ secrets.AMO_API_KEY }}
API_SECRET: ${{ secrets.AMO_API_SECRET }}
CHANNEL: ${{ steps.semver.outputs.prerelease && 'unlisted' || 'listed' }}
VERSION: ${{ steps.semver.outputs.fullversion }}
run: bun x web-ext sign --config=scripts/web-ext.firefox.cjs --channel=$CHANNEL --api-key=$API_KEY --api-secret=$API_SECRET --upload-source-code=dist/artifacts/source/ao3-enhancements_source_$VERSION.zip
DIST_SOURCE: dist/artifacts/source/ao3-enhancements_source_${{ steps.semver.outputs.fullversion }}.zip
run: bun x web-ext sign --config=scripts/web-ext.firefox.cjs --channel=$CHANNEL --api-key=$API_KEY --api-secret=$API_SECRET --upload-source-code=$DIST_SOURCE

- name: Rename .xpi to proper version if applicable
env:
VERSION: ${{ steps.semver.outputs.fullversion }}
DIST_FIREFOX_ZIP: dist/artifacts/firefox/ao3-enhancements_firefox_$VERSION.zip
DIST_FIREFOX_XPI: dist/artifacts/firefox/ao3-enhancements_firefox_$VERSION.xpi
run: |
if ls dist/artifacts/firefox/*.xpi 1> /dev/null 2>&1; then
mv dist/artifacts/firefox/*.xpi dist/artifacts/firefox/ao3-enhancements_firefox_$VERSION.xpi
rm dist/artifacts/firefox/ao3-enhancements_firefox_$VERSION.zip
mv dist/artifacts/firefox/*.xpi $DIST_FIREFOX_XPI
rm $DIST_FIREFOX_ZIP
fi
- name: Release
uses: softprops/action-gh-release@v2
with:
draft: true
prerelease: ${{ steps.semver.outputs.prerelease }}
files: |
dist/artifacts/chrome/ao3-enhancements_chrome_${{ steps.semver.outputs.fullversion }}.zip
dist/artifacts/firefox/ao3-enhancements_firefox_${{ steps.semver.outputs.fullversion }}.xpi
dist/artifacts/firefox/ao3-enhancements_firefox_${{ steps.semver.outputs.fullversion }}.zip
dist/artifacts/source/ao3-enhancements_source_${{ steps.semver.outputs.fullversion }}.zip
- name: Upload firefox artifact
env:
VERSION: ${{ steps.semver.outputs.fullversion }}
DIST_FIREFOX_ZIP: dist/artifacts/firefox/ao3-enhancements_firefox_$VERSION.xpi
DIST_FIREFOX_XPI: dist/artifacts/firefox/ao3-enhancements_firefox_$VERSION.xpi
run: gh release upload v$VERSION $DIST_FIREFOX_XPI || gh release upload v$VERSION $DIST_FIREFOX_ZIP

# chrome:
# runs-on: ubuntu-latest
# needs: build

# steps:
# - uses: oven-sh/setup-bun@v2
# - uses: actions/download-artifact@v4

# - name: Submit to Chrome Web Store
# env:
# EXTENSION_ID: ${{ secrets.CHROME_EXTENSION_ID }}
# CLIENT_ID: ${{ secrets.CHROME_CLIENT_ID }}
# CLIENT_SECRET: ${{ secrets.CHROME_CLIENT_SECRET }}
# REFRESH_TOKEN: ${{ secrets.CHROME_REFRESH_TOKEN }}
# VERSION: ${{ steps.semver.outputs.fullversion }}
# DIST_CHROME: dist/artifacts/chrome/ao3-enhancements_chrome_${{ steps.semver.outputs.fullversion }}.zip
# run: bun x web-ext chrome-webstore-upload-cli --source=$DIST_SOURCE

0 comments on commit 8c33dac

Please sign in to comment.