The action is buggy and does not read the "packagerManager" field from the "package.json" despite saying so in its documentation
87 lines
2.1 KiB
YAML
87 lines
2.1 KiB
YAML
name: Release
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
release_version:
|
|
description: 'Release version'
|
|
required: true
|
|
|
|
defaults:
|
|
run:
|
|
working-directory: master
|
|
|
|
jobs:
|
|
release:
|
|
name: Create changelog, build artifacts and publish release
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Cancel previous runs
|
|
uses: styfle/cancel-workflow-action@0.12.1
|
|
with:
|
|
access_token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Checkout master branch
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ref: master
|
|
path: master
|
|
fetch-depth: 0
|
|
|
|
- name: Set up NodeJs
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version-file: './master/package.json'
|
|
|
|
- uses: pnpm/action-setup@v6
|
|
name: Install pnpm
|
|
with:
|
|
version: 11.1.2
|
|
cache: true
|
|
|
|
- name: Cache node_modules
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: |
|
|
**/node_modules
|
|
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
|
|
|
|
- name: Generate Tag Name
|
|
id: GenTagName
|
|
run: |
|
|
genTag="v${{ github.event.inputs.release_version }}"
|
|
echo "::set-output name=value::$genTag"
|
|
|
|
- name: Build webUI
|
|
run: |
|
|
pnpm ci
|
|
pnpm build
|
|
pnpm build-zip
|
|
pnpm build-md5
|
|
|
|
- name: Rename artifact
|
|
run: |
|
|
cd buildZip
|
|
for file in *.zip; do
|
|
mv "$file" "${file%-r$(git rev-list HEAD --count).zip}-${{ steps.GenTagName.outputs.value }}.zip"
|
|
done
|
|
|
|
- name: Create Tag
|
|
run: |
|
|
TAG="${{ steps.GenTagName.outputs.value }}"
|
|
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
|
git config --global user.name "github-actions[bot]"
|
|
|
|
git tag $TAG
|
|
git push origin $TAG
|
|
|
|
- name: Upload Release
|
|
uses: ncipollo/release-action@v1
|
|
with:
|
|
artifacts: "master/buildZip/*"
|
|
owner: "suwayomi"
|
|
repo: "Suwayomi-WebUI"
|
|
tag: ${{ steps.GenTagName.outputs.value }}
|
|
draft: true
|