Currently if you run this action and aren't using a Debian based runner you need to install all tools ahead of time or the Action fails. This should improve the behaviour so that it will attempt to install all dependencies on a best effort basis. |
||
---|---|---|
.forgejo/workflows | ||
testdata | ||
.editorconfig | ||
.gitignore | ||
action.yml | ||
forgejo-release.sh | ||
LICENSE | ||
README.md | ||
renovate.json |
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 |
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 |
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.7.3
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.7.3
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