Release #57
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
workflow_dispatch: | |
inputs: | |
version: | |
type: choice | |
description: 'Release type' | |
default: 'patch' | |
options: | |
- patch | |
- minor | |
- major | |
- prerelease | |
- prepatch | |
- preminor | |
- premajor | |
env: | |
NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
jobs: | |
install-cache: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Commit | |
uses: actions/checkout@v2 | |
- name: Use Node.js | |
uses: actions/setup-node@v1 | |
with: | |
always-auth: true | |
node-version: '18.16.0' | |
- uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- name: Cache NPM dependencies | |
uses: actions/cache@v2 | |
id: cache-dependencies | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-npm-v4-${{ hashFiles('pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-npm- | |
- name: Install Dependencies | |
if: steps.cache-dependencies.outputs.cache-hit != 'true' | |
run: | | |
pnpm install --force | |
version-and-publish: | |
runs-on: ubuntu-latest | |
needs: [install-cache] | |
steps: | |
- name: Checkout Commit | |
uses: actions/checkout@v2 | |
- name: Use Node.js ${{ matrix.node }} | |
uses: actions/setup-node@v1 | |
with: | |
always-auth: true | |
node-version: '18.16.0' | |
- name: Restore NPM dependencies | |
uses: actions/cache@v2 | |
id: cache-dependencies | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-npm-v4-${{ hashFiles('pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-npm- | |
- name: Setup git config | |
run: | | |
git config user.name "$GITHUB_ACTOR" | |
git config user.email "[email protected]" | |
- name: Bump version | |
run: npm version ${{ github.event.inputs.version }} | |
- name: Get package.json version | |
uses: actions/github-script@v5 | |
id: get-version | |
with: | |
script: | | |
const packageJSON = require('./package.json') | |
return packageJSON.version | |
- name: Create Pull Request | |
uses: peter-evans/create-pull-request@v3 | |
with: | |
delete-branch: true | |
reviewers: | | |
MaximeHeckel | |
title: Bump package.json to version ${{steps.get-version.outputs.result}} | |
commit-message: Bump package.json to version ${{steps.get-version.outputs.result}} | |
- name: Publish | |
run: | | |
pnpm publish --access public |