GitHub Action for GoReleaser
Go to file
dependabot-preview[bot] 294ce6d03d
chore(deps): [security] bump minimist from 1.2.0 to 1.2.5 (#135)
Bumps [minimist](https://github.com/substack/minimist) from 1.2.0 to 1.2.5. **This update includes a security fix.**
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.0...1.2.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-31 13:11:16 +02:00
.github improvement: Review snapshot behavior (#95) 2020-02-11 13:52:06 +01:00
__tests__ Add tests 2019-09-22 07:17:07 +02:00
lib fix: Don't fail on getTag (#98) 2020-02-14 18:25:27 +01:00
node_modules Update node_modules 2020-01-24 12:01:57 +01:00
src fix: Don't fail on getTag (#98) 2020-02-14 18:25:27 +01:00
.editorconfig Initial commit 2019-09-20 22:23:46 +02:00
.gitattributes improvement: Review snapshot behavior (#95) 2020-02-11 13:52:06 +01:00
.gitignore Add tests 2019-09-22 07:17:07 +02:00
.prettierrc.json Update prettier 2019-11-12 00:05:29 +01:00
LICENSE Initial commit 2019-09-20 22:23:46 +02:00
README.md Typo 2020-01-20 18:53:25 +01:00
action.yml Allow to run GoReleaser from a subdirectory (#45) 2019-12-02 10:54:32 +01:00
go.mod Move repository to GoReleaser org (#3) 2019-09-28 20:50:20 +02:00
jest.config.js Add tests 2019-09-22 07:17:07 +02:00
main.go Initial commit 2019-09-20 22:23:46 +02:00
package-lock.json chore(deps): [security] bump minimist from 1.2.0 to 1.2.5 (#135) 2020-03-31 13:11:16 +02:00
package.json chore(deps): bump typed-rest-client from 1.7.2 to 1.7.3 (#137) 2020-03-31 13:11:01 +02:00
tsconfig.json Add tests 2019-09-22 07:17:07 +02:00

README.md

GoReleaser Logo

GoReleaser Action

GitHub Action for GoReleaser

GitHub release GitHub marketplace Release workflow Test workflow Become a sponsor


Usage

Below is a simple snippet to use this action. A live example is also available for this repository.

name: goreleaser

on:
  pull_request:
  push:

jobs:
  goreleaser:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v2
      -
        name: Unshallow
        run: git fetch --prune --unshallow
      -
        name: Set up Go
        uses: actions/setup-go@v1
        with:
          go-version: 1.13.x
      -
        name: Run GoReleaser
        uses: goreleaser/goreleaser-action@v1
        with:
          version: latest
          args: release --rm-dist
          key: ${{ secrets.YOUR_PRIVATE_KEY }}
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

IMPORTANT: note the Unshallow step. It is required for the changelog to work correctly.

If you want to run GoReleaser only on new tag, you can use this event:

on:
  push:
    tags:
      - '*'

Or with a condition on GoReleaser step:

      -
        name: Run GoReleaser
        uses: goreleaser/goreleaser-action@v1
        if: startsWith(github.ref, 'refs/tags/')
        with:
          version: latest
          args: release --rm-dist
          key: ${{ secrets.YOUR_PRIVATE_KEY }}
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

For detailed instructions please follow GitHub Actions workflow syntax.

Customizing

Inputs

Following inputs can be used as step.with keys

Name Type Default Description
version String latest GoReleaser version. Example: v0.117.0
args String Arguments to pass to GoReleaser
key String Private key to import
workdir String . Working directory (below repository root)

Signing

If signing is enabled in your GoReleaser configuration, populate the key input with your private key and reference the key in your signing configuration, e.g.

signs:
  - artifacts: checksum
    args: ["--batch", "-u", "<key id, fingerprint, email, ...>", "--output", "${signature}", "--detach-sign", "${artifact}"]

This feature is currently only compatible when using the default gpg command and a private key without a passphrase.

License

MIT. See LICENSE for more details.