Update Release
Some checks are pending
Auto Update .app-files / update-app-files (push) Waiting to run
Shellcheck / Shellcheck (push) Waiting to run
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run

This commit is contained in:
CanbiZ
2025-03-01 13:10:23 +01:00
committed by GitHub
parent 5f30084c6f
commit 4101618556

View File

@ -2,8 +2,8 @@ name: Create new release
on: on:
schedule: schedule:
# Runs "At 00:01 every night" (UTC) - cron: '1 0 * * *' # Runs nightly
- cron: '1 0 * * *' workflow_dispatch:
jobs: jobs:
create-new-release: create-new-release:
@ -13,17 +13,24 @@ jobs:
steps: steps:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v4 uses: actions/checkout@v4
- name: Parse CHANGELOG.md for yesterday's entries and create a new release - name: Parse CHANGELOG.md for yesterday's entries and create a new release
env: env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
YESTERDAY=$(date -u --date="yesterday" +%Y-%m-%d) YESTERDAY=$(date -u --date="yesterday" +%Y-%m-%d)
YESTERDAY_CHANGELOG_NOTES=$(awk '/^## '"$YESTERDAY"'/ {f=1; next} f && /^## [0-9]{4}-[0-9]{2}-[0-9]{2}/ {f=0} f && !/^## / {print}' CHANGELOG.md)
# Extract exactly the section for YESTERDAY
if [ ${#YESTERDAY_CHANGELOG_NOTES} -gt 10000 ]; then awk -v date="## $YESTERDAY" '
echo "Changelog is too large, saving to file..." $0 ~ date {found=1; print; next}
echo "$YESTERDAY_CHANGELOG_NOTES" > changelog_tmp.md found && /^## [0-9]{4}-[0-9]{2}-[0-9]{2}/ {exit}
gh release create "$YESTERDAY" -t "$YESTERDAY" -F changelog_tmp.md --latest found {print}
elif [ -n "$YESTERDAY_CHANGELOG_NOTES" ]; then ' CHANGELOG.md > changelog_tmp.md
gh release create "$YESTERDAY" -t "$YESTERDAY" -n "$YESTERDAY_CHANGELOG_NOTES" --latest
if [ ! -s changelog_tmp.md ]; then
echo "No changes found for $YESTERDAY, skipping release."
exit 0
fi fi
echo "Creating GitHub release for $YESTERDAY..."
gh release create "$YESTERDAY" -t "$YESTERDAY" -F changelog_tmp.md