Skip to content

Release

Release #57

Workflow file for this run

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