Skip to content
package

GitHub Action

Release Action

v2.0.0 Latest version

Release Action

package

Release Action

GitHub Action to automatically release packages using lerna or semantic-release

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Release Action

uses: plutotcool/[email protected]

Learn more about this action in plutotcool/release

Choose a version

Release Action

GitHub Action to automatically release packages using lerna or semantic-release.

  • Automatically bump packages version using semantic-release (or lerna which also relies on semantic-release)
  • Create releases on GitHub
  • Publish to GitHub and NPM registries

Publishing on package registries is skipped if there is not any package.json or if its private field is set to true.

Publishing on GitHub registry is skipped if the package name is not scoped with the GitHub owner name.

Publishing on NPM registry is skipped if no NPM token is provided.

Usage

In .github/workflows/release.yml:

on:
  push:
    branches:
    - main

jobs:
  release:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: actions/setup-node@v1
      with:
        node-version: 14
    - run: yarn
    - run: yarn build
    - uses: plutotcool/release@v1
      with:
        github_token:  ${{ secrets.GITHUB_TOKEN }}
        npm_token: ${{ secrets.NPM_TOKEN }}

Inputs

github_token

string (required)

GitHub Token used to create the release on GitHub and publish on GitHub registry.

npm_token

string (optional)

NPM token with publish permission. If not provided, publishing to npm registry will be skipped.

publish

boolean (optional, default true)

Enable or disable publishing to package registries. When set to false, only releases are created on GitHub.

push

boolean (optional, default true)

Enable or disable pushing changes made by the action.

name

string (optional, default: 'github-actions[bot]')

User name to use when pushing to GitHub.

email

string (optional, default: 'github-actions[bot]@users.noreply.github.com')

Email to use when pushing to GitHub.

message

string (optional, default: 'ci: release')

Commit message to use when bumping package.json.