Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/azu/actions-package-version-semver
GitHub Actions: Set output "semver" from commit diff of pacakge.json/lerna.json
https://github.com/azu/actions-package-version-semver
github npm package version
Last synced: 4 months ago
JSON representation
GitHub Actions: Set output "semver" from commit diff of pacakge.json/lerna.json
- Host: GitHub
- URL: https://github.com/azu/actions-package-version-semver
- Owner: azu
- License: mit
- Created: 2020-04-13T03:54:57.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-06-06T06:02:02.000Z (over 1 year ago)
- Last Synced: 2024-10-18T06:34:56.667Z (4 months ago)
- Topics: github, npm, package, version
- Language: TypeScript
- Size: 435 KB
- Stars: 3
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# actions-package-version-semver
GitHub Actions that set "semver" output from commit diff of `package.json`/`lerna.json`.
## Usage
See [action.yml](action.yml)
```yaml
- id: semver
uses: azu/actions-package-version-semver@v1
- name: Print steps context output
run: |
echo 'steps.semver.outputs.semver=${{ steps.semver.outputs.semver }}'
```Support `lerna.json`:
```yaml
- id: semver
uses: azu/actions-package-version-semver@v1
with:
package_version_filename: lerna.json
- name: Print steps context output
run: |
echo 'steps.semver.outputs.semver=${{ steps.semver.outputs.semver }}'
```## UseCase
### Set semver label to PullRequest
Update Pull Request's label when commit new version onto the Pull Request.
- Update `package.json`'s `version`: Add `Semver: ${type}`
- No update `package.json`'s `version`: Add `Semver: No Update`Example PR: [2.0.0 by azu · Pull Request #4 · azu/actions-package-version-semver](https://github.com/azu/actions-package-version-semver/pull/4)
```yaml
name: PR Semver Labelon:
pull_request:jobs:
test:
name: Test
runs-on: ubuntu-latest
steps:
- name: actions-package-version-semver
id: semver
uses: azu/actions-package-version-semver@v1
- name: Add Semver Label
if: steps.semver.outputs.semver != ''
uses: actions/[email protected]
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.issues.addLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels: ['Semver: ${{steps.semver.outputs.semver}}']
});
github.issues.removeLabel({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
name: 'Semver: No Update'
}).catch(error => {})
- name: Add No Update Label
if: steps.semver.outputs.semver == ''
uses: actions/[email protected]
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.issues.addLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels: ['Semver: No Update']
});```
## Release Flow
```
npm version {patch,minor,major}
git push && git push --tags
```## Contributing
1. Fork it!
2. Create your feature branch: `git checkout -b my-new-feature`
3. Commit your changes: `git commit -am 'Add some feature'`
4. Push to the branch: `git push origin my-new-feature`
5. Submit a pull request :D## License
MIT