ci: setup releasing using actions (#1)

This commit is contained in:
2025-09-20 10:58:52 +02:00
parent 6b6c23e4e6
commit c245264698
3 changed files with 71 additions and 7 deletions

View File

@@ -0,0 +1,48 @@
name: Release
on:
workflow_dispatch:
jobs:
release:
name: Release
runs-on: ubuntu-latest
permissions:
contents: write # to be able to publish a GitHub release
issues: write # to be able to comment on released issues
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Prepare git
run: |
git config --global user.email "gitea@bjornp.com"
git config --global user.name "gitea-actions"
- name: Determine release version and changelog
run: npx commit-and-tag-version
- name: Build release
working-directory: src
run: |
VERSION=$(jq '.version' info.json | xargs echo -n)
zip -r ../prometheus-exporter_$VERSION.zip .
- name: Push changelog and tag
run: git push --follow-tags
- name: Get latest tag and changelog fragment
id: tag
run: |
echo tag="$(git describe --tags --abbrev=0)" >> $GITHUB_OUTPUT
echo "changelog<<EOF" >> $GITHUB_OUTPUT
awk '/^## / { if (version_found) exit; version_found=1 } version_found { print }' CHANGELOG.md | sed '1d' >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
- name: Create release
uses: akkuman/gitea-release-action@v1
with:
files: prometheus-exporter_*.zip
body: ${{ steps.tag.outputs.changelog }}
name: ${{ steps.tag.outputs.tag }}
tag_name: ${{ steps.tag.outputs.tag }}
md5sum: true