Manage release on a Forgejo instance
Find a file
2025-07-27 15:07:06 +02:00
.forgejo/workflows Update https://code.forgejo.org/actions/setup-forgejo action to v3.0.1 (#61) 2025-07-08 06:25:03 +00:00
testdata fix(ci): s/FORGEJO_TOKEN/FORGEJO_TEST_TOKEN/ (#64) 2025-07-26 05:22:53 +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 fix: action parameters are not granted access to secrets 2025-07-27 14:04:22 +02:00
forgejo-release.sh fix: upgrade release notes assitant to agree with git 2025-07-27 15:07:06 +02:00
LICENSE LICENSE is MIT 2023-04-01 11:12:56 +02:00
README.md Update dependency actions/forgejo-release to v2.6.1 (#65) 2025-07-26 05:41:48 +00:00
renovate.json Migrate config renovate.json 2025-05-05 01:03:45 +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.GITHUB_SERVER_URL }}
repo

owner/project relative to the URL

false ${{ github.repository }}
tag

Tag of the release

false ${{ github.ref_name }}
title

Title of the release (defaults to tag)

false ""
sha

SHA of the release

false ${{ github.sha }}
token

Forgejo application token

false ${{ secrets.GITHUB_TOKEN }}
release-dir

Directory in whichs release assets are uploaded or downloaded

true ""
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

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.6.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.6.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:
action-docs --update-readme