Merge branch 'dev' into beta

This commit is contained in:
2026-03-31 14:22:24 -04:00
+21 -22
View File
@@ -1,16 +1,15 @@
name: Build & Release Firefox Addon name: Build & Release Firefox Addon
# Trigger only on tags
on: on:
push: push:
branches: [main, beta] # dev is ignored tags:
- "v*" # any tag starting with v
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs:
version: ${{ steps.version.outputs.version }}
steps: steps:
# 1️⃣ Checkout code # 1️⃣ Checkout code
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@@ -19,41 +18,41 @@ jobs:
- name: Install deps - name: Install deps
run: npm install -g web-ext run: npm install -g web-ext
# 3️⃣ Auto version bump (numeric only) # 3️⃣ Build XPI
- name: Generate version
id: version
run: |
BASE=$(jq -r .version manifest.json)
VERSION="${BASE}.${GITHUB_RUN_NUMBER}"
echo "version=$VERSION" >> $GITHUB_OUTPUT
jq ".version = \"$VERSION\"" manifest.json > tmp.json
mv tmp.json manifest.json
# 4️⃣ Build XPI
- name: Build extension - name: Build extension
run: web-ext build run: web-ext build --overwrite-dest
# 5️⃣ Get built XPI path # 4️⃣ Get built XPI path
- name: Get XPI path - name: Get XPI path
id: xpi id: xpi
run: | run: |
FILE=$(ls web-ext-artifacts/*.xpi | head -n 1) FILE=$(ls web-ext-artifacts/*.xpi | head -n 1)
echo "file=$FILE" >> $GITHUB_OUTPUT echo "file=$FILE" >> $GITHUB_OUTPUT
# 6️⃣ GitHub Release (both main and beta) # 5️⃣ Determine if prerelease or main
- name: Determine release type
id: release_type
run: |
if [[ "${GITHUB_REF#refs/tags/}" == *"-beta"* ]]; then
echo "prerelease=true" >> $GITHUB_OUTPUT
else
echo "prerelease=false" >> $GITHUB_OUTPUT
fi
# 6️⃣ Create GitHub Release
- name: Create GitHub Release - name: Create GitHub Release
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
with: with:
tag_name: v${{ steps.version.outputs.version }} tag_name: ${{ github.ref_name }}
name: v${{ steps.version.outputs.version }} name: ${{ github.ref_name }}
files: ${{ steps.xpi.outputs.file }} files: ${{ steps.xpi.outputs.file }}
prerelease: ${{ github.ref == 'refs/heads/beta' }} prerelease: ${{ steps.release_type.outputs.prerelease }}
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# 7️⃣ AMO deploy (main only) # 7️⃣ AMO deploy (main only)
- name: Sign & Upload to AMO - name: Sign & Upload to AMO
if: github.ref == 'refs/heads/main' if: steps.release_type.outputs.prerelease == 'false'
run: | run: |
web-ext sign \ web-ext sign \
--api-key ${{ secrets.FIREFOX_API_KEY }} \ --api-key ${{ secrets.FIREFOX_API_KEY }} \