Manage release on a Forgejo instance
Find a file
Renovate Bot 265b4922e5 Update https://code.forgejo.org/actions/setup-forgejo action to v3.1.12 (#169)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [https://code.forgejo.org/actions/setup-forgejo](https://code.forgejo.org/actions/setup-forgejo) | action | patch | `v3.1.11` → `v3.1.12` |

---

### Release Notes

<details>
<summary>actions/setup-forgejo (https://code.forgejo.org/actions/setup-forgejo)</summary>

### [`v3.1.12`](https://code.forgejo.org/actions/setup-forgejo/releases/tag/v3.1.12)

[Compare Source](https://code.forgejo.org/actions/setup-forgejo/compare/v3.1.11...v3.1.12)

<!--start release-notes-assistant-->

<!--URL:https://code.forgejo.org/actions/setup-forgejo-->

- other
  - [PR](https://code.forgejo.org/actions/setup-forgejo/pulls/981): <!--number 981 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZm9yZ2Vqby9ydW5uZXIgdG8gdjEyLjEwLjI=-->Update dependency forgejo/runner to v12.10.2<!--description-->

<!--end release-notes-assistant-->

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Between 12:00 AM and 03:59 AM (`* 0-3 * * *`)
- Automerge
  - Between 12:00 AM and 03:59 AM (`* 0-3 * * *`)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xOTUuMSIsInVwZGF0ZWRJblZlciI6IjQzLjE5NS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Reviewed-on: https://code.forgejo.org/actions/forgejo-release/pulls/169
Reviewed-by: Mathieu Fenniak <mfenniak@noreply.code.forgejo.org>
2026-05-27 02:18:38 +00:00
.forgejo/workflows Update https://code.forgejo.org/actions/setup-forgejo action to v3.1.12 (#169) 2026-05-27 02:18:38 +00:00
testdata Update https://code.forgejo.org/actions/setup-forgejo action to v3.1.12 (#169) 2026-05-27 02:18:38 +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: Use local cache action instead of the action from data.forgejo.org (#123) 2026-02-18 08:06:50 +00:00
forgejo-release.sh Update dependency forgejo/release-notes-assistant to v1.7.1 (#167) 2026-05-26 04:49:45 +00:00
LICENSE LICENSE is MIT 2023-04-01 11:12:56 +02:00
README.md Update dependency actions/forgejo-release to v2.12.0 (#165) 2026-05-14 05:42:53 +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 ""
release-notes-file

Path to a file containing your release notes (takes priority over 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.12.0
        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"

Upload a release with custom release notes located in a file:

jobs:
  upload-release:
    runs-on: docker
    steps:
      - uses: actions/checkout@v4
      - name: Generate Changelog
        run: ./generate-changelog.sh > dist/changelog.md
      - uses: actions/forgejo-release@v2.12.0
        with:
          direction: upload
          url: https://my-forgejo-instance.net
          repo: myuser/myrepo
          token: ${{ secrets.WRITE_TOKEN_TO_MYREPO }}
          tag: v13.0.2
          release-dir: dist/release
          release-notes-file: dist/changelog.md

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.12.0
        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