Skip to content

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

License

Notifications You must be signed in to change notification settings

plutotcool/release

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.