ProToots/.github/workflows/prepare-release.yml

65 lines
2.1 KiB
YAML
Raw Normal View History

2023-07-17 11:01:18 +00:00
name: Prepare release
on:
2023-07-17 11:01:18 +00:00
workflow_dispatch:
inputs:
version:
description: "The version number to use for this release, should start with the 'v' prefix."
required: true
type: string
jobs:
package:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v3
2023-07-13 16:41:39 +00:00
- 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:
2023-07-17 11:01:18 +00:00
commit_message: "Update to ${{ inputs.version }}"
2023-07-13 16:41:39 +00:00
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
2023-07-17 11:01:18 +00:00
tag_name: ${{ inputs.version }}
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 }}