Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/marco-souza/tag-release

Github Action to generate a release whenever your app version changes
https://github.com/marco-souza/tag-release

bun deno github-actions nodejs release-automation semver tags

Last synced: about 20 hours ago
JSON representation

Github Action to generate a release whenever your app version changes

Awesome Lists containing this project

README

        

# tag-release

![GitHub Release](https://img.shields.io/github/v/release/marco-souza/tag-release)
![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/marco-souza/tag-release/tag-release.yml)

**Tag Release** is a GitHub Action that creates **GitHub Releases** whenever your version file changes.

> [!NOTE]
> We only support `json` files with a `version` key on the root level, because it was initially created to support `package.json` and `deno.json`.
>
> You can also create a `version.json`, at the root level of your project, if you are not developing a JavaScript package.

## Usage

For NodeJS:

```yaml
# .github/workflows/release.yml
name: Create Release on version change

on:
push:
paths:
- package.json

jobs:
gh-release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Create release from tag
uses: marco-souza/[email protected]
with:
version-file: package.json
token: ${{ secrets.GITHUB_TOKEN }}
```

For Deno:

```yaml
# .github/workflows/release.yml
name: Create Release on version change

on:
push:
paths:
- deno.json

jobs:
gh-release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Create release from tag
uses: marco-souza/[email protected]
with:
version-file: deno.json
token: ${{ secrets.GITHUB_TOKEN }}
```