Manage release on a Forgejo instance
Find a file
Renovate Bot b5fa0f2e61
Update dependency actions/forgejo-release to v2.9.1 (#135)
Reviewed-on: https://code.forgejo.org/actions/forgejo-release/pulls/135
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Co-authored-by: Renovate Bot <bot@kriese.eu>
Co-committed-by: Renovate Bot <bot@kriese.eu>
2026-02-02 05:53:09 +00:00
.forgejo/workflows Update https://code.forgejo.org/actions/setup-forgejo action to v3.1.3 (#138) 2026-01-26 05:24:08 +00:00
testdata Update https://code.forgejo.org/actions/setup-forgejo action to v3.1.3 (#138) 2026-01-26 05:24:08 +00:00
.editorconfig fix: support slashes in tags (#62) 2025-07-25 06:50:17 +00:00
.gitignore Add support for files with spaces in their names (#24) 2024-12-09 05:38:35 +00:00
action.yml docs: lint and fix (#129) 2026-01-21 09:38:02 +00:00
forgejo-release.sh fix: use proper comparison (#133) 2026-01-22 17:37:36 +00:00
LICENSE LICENSE is MIT 2023-04-01 11:12:56 +02:00
README.md Update dependency actions/forgejo-release to v2.9.1 (#135) 2026-02-02 05:53:09 +00:00
renovate.json chore(renovate): separate multiple forgejo majors (#118) 2026-01-09 09:12:26 +00:00

forgejo-release

Description

Upload or download the assets of a release to a Forgejo instance.

Inputs

name description required default
url

URL of the Forgejo instance

false ${{ env.FORGEJO_SERVER_URL }}
repo

owner/project relative to the URL

false ${{ forge.repository }}
tag

Tag of the release

false ${{ forge.ref_name }}
title

Title of the release (defaults to tag)

false ""
sha

SHA of the release

false ${{ forge.sha }}
token

Forgejo application token (must have write:repository)

false ${{ forge.token }}
release-dir

Directory in which release assets are uploaded or downloaded

false dist/release
release-notes

Release notes

false ""
direction

Can either be download or upload

true ""
gpg-private-key

GPG Private Key to sign the release artifacts

false ""
gpg-passphrase

Passphrase of the GPG Private Key

false ""
download-retry

Number of times to retry if the release is not ready (default 1)

false ""
download-latest

Download the latest release

false false
verbose

Increase the verbosity level

false false
override

Override an existing release by the same {tag}

false false
prerelease

Mark Release as Pre-Release

false false
release-notes-assistant

Generate release notes with Release Notes Assistant

false false
hide-archive-link

Hide the archive links

false false
skip-assets

Skip uploading release assets

false false

Examples

Upload

Upload the release located in release-dir to the release section of a repository (url and repo):

jobs:
  upload-release:
    runs-on: docker
    steps:
      - uses: actions/checkout@v4
      - uses: actions/forgejo-release@v2.9.1
        with:
          direction: upload
          url: https://my-forgejo-instance.net
          repo: myuser/myrepo
          token: ${{ secrets.WRITE_TOKEN_TO_MYREPO }}
          tag: v1.0.0
          release-dir: dist/release
          release-notes: "MY RELEASE NOTES"

Download

Example downloading the forgejo release v1.21.4-0 into the working directory:

jobs:
  download-release:
    runs-on: docker
    steps:
      - uses: actions/checkout@v4
      - uses: actions/forgejo-release@v2.9.1
        with:
          direction: download
          url: https://my-forgejo-instance.net
          repo: myuser/myrepo
          token: ${{ secrets.READ_TOKEN_TO_MYREPO }}
          tag: v1.0.0
          release-dir: ./  # by default, files are downloaded into dist/release

Real world example

This action is used to publish the release notes assistant assets.

Update the input section of the README

Using action-docs:

# Edit the action.yml file and run:
npx action-docs --update-readme