github-actions-workman
TypeScript icon, indicating that this package has built-in type declarations

1.7.0 • Public • Published

Github Actions Workman · GitHub license

Egg.js NPM Version Semantic Release

Github actions for the package release.

Features

😀🤓😎🤗😉😇

Pull Request Checker

Check Release Proposal

Example: 'Release {Semver Version}'

Check Release Version

1.0.0 -> 1.0.1 ✅
1.0.0 -> 1.0.1 ✅
2.0.0 -> 1.0.0 ❎

Search Release Label

Add the label to the Release Pull Request

1.0.0 -> 1.0.1 👉 semver:patch
1.0.0 -> 1.1.1 👉 semver:minor
1.0.0 -> 2.2.1 👉 semver:major

Auto Release

Release to Github

commit message: Release {Semver Version}

  • Create tag
  • Create release

Release NPM Package

  • Publish to NPM

Usage

Prepare

Enable Github Actions

https://github.com/features/actions

Add NPM Token to Secrets.

Project - Settings - Secrets

  • NPM_TOKEN

Checker

.github/main.workflow

## workflow 
workflow "Pull Request" {
  on = "pull_request"
  resolves = ["npm check"]
}
 
## actions 
action "npm install" {
  uses = "docker://thonatos/github-actions-nodejs"
  args = "npm install"
}
 
action "npm ci" {
  uses = "docker://thonatos/github-actions-nodejs"
  needs = ["npm install"]
  args = "npm run ci"
}
 
action "workman check" {
  uses = "thonatos/github-actions-workman@master"
  needs = ["npm ci"]
  args = "workman check"
  secrets = [
    "GITHUB_TOKEN",
    "NPM_TOKEN"
  ]
}

Release

.github/main.workflow

## workflow 
workflow "Push" {
  on = "push"
  resolves = ["workman release"]
}
 
## actions 
action "npm install" {
  uses = "docker://thonatos/github-actions-nodejs"
  args = "npm install"
}
 
action "npm ci" {
  uses = "docker://thonatos/github-actions-nodejs"
  needs = ["npm install"]
  args = "npm run ci"
}
 
action "workman release" {
  uses = "thonatos/github-actions-workman@master"
  needs = ["npm ci"]
  args = "workman release --releaseBranch master"
  secrets = [
    "GITHUB_TOKEN",
    "NPM_TOKEN"
  ]
}

Workflow

Handle Pull Request

  • Create the PR(title: Release {Semver Version})

    1. check the release proposal
    2. check the release version
    3. check the release history
    4. add a label like: semver:patch
  • Merge PR without deleting branch

    1. create a tag with the release version
    2. create a release with release history
    3. release the package with run npm publish --access public

Contributing

Suggestions

Please open an issue here.

License

Github Actions Release is MIT licensed.

Readme

Keywords

none

Package Sidebar

Install

npm i github-actions-workman

Weekly Downloads

0

Version

1.7.0

License

MIT

Unpacked Size

59.9 kB

Total Files

60

Last publish

Collaborators

  • thonatos