Skip to content

release

release #113

Workflow file for this run

name: release
on:
workflow_dispatch:
inputs:
release_version:
required: true
description: release version
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.ref }}
token: ${{ secrets.FLUCT_MEMBER_GITHUB_TOKEN }}
- name: Unshallow
run: git fetch --prune --unshallow --tags
- name: Use Node.js 18.x
uses: actions/setup-node@v3
with:
node-version: 18.x
- name: install
run: make -f ci.mk install
- name: lint
run: make -f ci.mk lint
- name: test
run: make -f ci.mk test
- name: npm version
run: make -f ci.mk release_version
env:
RELEASE_VERSION: ${{ github.event.inputs.release_version }}
- name: git config
run: |
git config --local user.name ${{ secrets.FLUCT_MEMBER_GITHUB_USER_NAME }}
git config --local user.email ${{ secrets.FLUCT_MEMBER_GITHUB_USER_EMAIL }}
- name: git add & commit & push
run: |
git add package.json
git commit -m "[ci skip] release v${{ env.RELEASE_VERSION }}"
git push
env:
RELEASE_VERSION: ${{ github.event.inputs.release_version }}
- name: npm publish
run: make -f ci.mk publish
env:
NPM_TOKEN: ${{ secrets.FLUCT_NPM_TOKEN }}
- name: Create Tag & Release
uses: ncipollo/release-action@v1
with:
allowUpdates: true
name: Release ${{ env.RELEASE_TAG_NAME }}
tag: ${{ env.RELEASE_TAG_NAME }}
token: ${{ secrets.FLUCT_MEMBER_GITHUB_TOKEN }}
generateReleaseNotes: true
env:
RELEASE_TAG_NAME: v${{ github.event.inputs.release_version }}