Auto generate github release on version change (#387)

This commit is contained in:
Chenlei Hu
2024-12-23 14:41:19 -05:00
committed by GitHub
parent 063c1d704d
commit c8796f8c93
2 changed files with 53 additions and 28 deletions

View File

@@ -1,28 +0,0 @@
name: Publish to npm
on:
pull_request:
types: [closed]
branches:
- main
- master
paths:
- "package.json"
jobs:
publish:
runs-on: ubuntu-latest
if: >
github.event.pull_request.merged == true &&
contains(github.event.pull_request.labels.*.name, 'Release')
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: lts/*
registry-url: "https://registry.npmjs.org"
- run: npm ci
- run: npm run build
- run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

53
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,53 @@
name: Create a release
on:
pull_request:
types: [closed]
branches:
- main
- master
paths:
- "package.json"
jobs:
create-release:
runs-on: ubuntu-latest
if: >
github.event.pull_request.merged == true &&
contains(github.event.pull_request.labels.*.name, 'Release')
steps:
- name: Checkout code
uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: lts/*
- name: Get current version
id: current_version
run: echo ::set-output name=version::$(node -p "require('./package.json').version")
- name: Create release
id: create_release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v${{ steps.current_version.outputs.version }}
draft: false
prerelease: false
generate_release_notes: true
make_latest: "true"
publish:
runs-on: ubuntu-latest
if: >
github.event.pull_request.merged == true &&
contains(github.event.pull_request.labels.*.name, 'Release')
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: lts/*
registry-url: "https://registry.npmjs.org"
- run: npm ci
- run: npm run build
- run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}