Create a new release with generated release notes
The "Publish Forgejo Release" step passed `release-dir: ""` to
actions/forgejo-release@v2 to indicate there are no assets to upload.
That does not work: the action's script runs `: ${RELEASE_DIR:=dist/release}`,
and bash `${VAR:=default}` also fires on an empty value, so RELEASE_DIR
became `dist/release`. SKIP_ASSETS still defaulted to false, so the asset
loop ran `for file in dist/release/*`; with the directory absent and no
nullglob, it iterated once over the literal string `dist/release/*` and
ran `curl -F "attachment=@dist/release/*"`, which failed with
`curl: (26) Failed to open/read local data` and exited 1 -- after the
draft release was created but before it was published, so releases
silently never appeared.
Pass `skip-assets: "true"` instead, which skips the asset loop entirely
and lets the step publish the release.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
||
|---|---|---|
| action.yml | ||
| README.md | ||
| release-notes.config.js | ||
Release · Create
A small Action that generates release notes from conventional commits and publishes a Forgejo release.
What it does
- Generates release notes using
conventional-changelog(configured viarelease-notes.config.js). - Publishes a release using
actions/forgejo-release, uploading the generated notes and tagging the release.
Inputs
version(required) — Release version (e.g.v1.2.3). Could be determined with the Release · Determine Next Version action.
Note: The action uses
${{ secrets.GITHUB_TOKEN }}when publishing viaactions/forgejo-release.
Usage
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: "Determine release version"
id: "version"
uses: "https://git.xiidoz.com/actions/release-determine-next-version@main"
- name: "Create release"
uses: "https://git.xiidoz.com/actions/release-create@main"
with:
version: "${{ steps.version.outputs.version }}"
For customization, edit release-notes.config.js to change changelog formatting or presets.