Add GitHub Action for automatic releases

Closes #5
This commit is contained in:
nachtjasmin 2023-07-13 17:55:47 +02:00 committed by Jasmin
parent ed4a687a1c
commit 8d9d0d5fc7

51
.github/workflows/release.yml vendored Normal file
View file

@ -0,0 +1,51 @@
name: Release
on:
push:
tags:
- "v*.*.*"
jobs:
package:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: npm ci
- name: Build packages
run: npm run package
# Create automatic draft release for pushes of tags, prefilled with all the important information.
# And since we have our files, let's attach them as well.
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
draft: true
generate_release_notes: true
files: "web-ext-artifacts/*.zip"
release-firefox:
runs-on: ubuntu-latest
needs: package
steps:
- name: Download assets for release
run: >
gh release download ${{ github.ref }} --archive zip --dir assets
gh release download ${{ github.ref }} --pattern "*firefox*" --dir assets
- uses: browser-actions/release-firefox-addon@v0.1.3
with:
addon-id: "protoots"
addon-path: "assets/protoots-firefox.zip"
source-path: "assets/ProToots-${{ github.ref }}.zip"
approval-note: |
The source code requires Node.js 18 or newer. To generate the source code, run:
npm ci
npm run package
To check it's functionality, you can enable it on any Mastodon page, such as: https://mastodon.social/public
license: OSL-3.0
auth-api-issuer: ${{ secrets.FIREFOX_AUTH_API_ISSUER }}
auth-api-secret: ${{ secrets.FIREFOX_AUTH_API_SECRET }}