ProToots/.github/workflows/release.yml
2023-07-13 21:45:05 +02:00

60 lines
1.9 KiB
YAML

name: Release
on:
push:
tags:
- "v*.*.*"
jobs:
package:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v3
- name: Update package version
run: npm version from-git --no-git-tag-version
- uses: stefanzweifel/git-auto-commit-action@v4
name: Commit package version update
with:
commit_message: "Update to ${{ github.ref }}"
file_pattern: "package*.json"
- 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 --output source.zip
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/source.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 }}