1.7.0 โ€ข Published 5 years ago

github-actions-workman v1.7.0

Weekly downloads
1
License
MIT
Repository
-
Last release
5 years ago

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.

1.7.0

5 years ago

1.6.0

5 years ago

1.5.4

5 years ago

1.5.3

5 years ago

1.5.2

5 years ago

1.5.1

5 years ago

1.5.0

5 years ago

1.4.1

5 years ago

1.4.0

5 years ago

1.3.2

5 years ago

1.3.1

5 years ago

1.3.0

5 years ago

1.2.2

5 years ago

1.2.1

5 years ago

1.2.0

5 years ago

1.1.0

5 years ago

1.0.0

5 years ago