Skip to content
Latchkey

softprops/action-gh-release: Publish GitHub Releases

action-gh-release creates a GitHub Release and uploads your build assets, usually on a tag push.

A popular, actively maintained way to ship releases from CI. Trigger it on tag pushes and attach binaries, archives, or checksums.

Key inputs (with:)

  • files: glob(s) of assets to upload.
  • tag_name: the release tag (defaults to the pushed tag).
  • name: release title.
  • body / body_path: release notes.
  • draft / prerelease: release visibility flags.
  • generate_release_notes: auto-generate notes from PRs.

Example workflow

.github/workflows/ci.yml
on:
  push:
    tags: ['v*']
jobs:
  release:
    runs-on: ubuntu-latest
    permissions:
      contents: write
    steps:
      - uses: actions/checkout@v4
      - run: make build
      - uses: softprops/action-gh-release@v2
        with:
          files: dist/*
          generate_release_notes: true

On any runner

This action runs on any runner. Latchkey managed runners run it unchanged.

Key takeaways

  • Needs permissions: contents: write to publish.
  • generate_release_notes builds a changelog from merged PRs.
  • files uploads any build assets to the release.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →