Skip to content

Commit 8af885a

Browse files
authored
Update github-release.yml
1 parent 62cdb5c commit 8af885a

File tree

1 file changed

+18
-9
lines changed

1 file changed

+18
-9
lines changed

.github/workflows/github-release.yml

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
schedule:
55
# Runs "At 00:01 every night" (UTC)
66
- cron: '1 0 * * *'
7-
workflow_dispatch:
7+
workflow_dispatch: # Allows manual execution
88

99
jobs:
1010
create-new-release:
@@ -14,17 +14,26 @@ jobs:
1414
steps:
1515
- name: Checkout code
1616
uses: actions/checkout@v4
17+
1718
- name: Parse CHANGELOG.md for yesterday's entries and create a new release
1819
env:
1920
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2021
run: |
2122
YESTERDAY=$(date -u --date="yesterday" +%Y-%m-%d)
22-
YESTERDAY_CHANGELOG_NOTES=$(awk '/^## '"$YESTERDAY"'/ {f=1; next} f && /^## [0-9]{4}-[0-9]{2}-[0-9]{2}/ {f=0} f && !/^## / {print}' CHANGELOG.md)
23-
24-
if [ ${#YESTERDAY_CHANGELOG_NOTES} -gt 10000 ]; then
25-
echo "Changelog is too large, saving to file..."
26-
echo "$YESTERDAY_CHANGELOG_NOTES" > changelog_tmp.md
27-
gh release create "$YESTERDAY" -t "$YESTERDAY" -F changelog_tmp.md --latest
28-
elif [ -n "$YESTERDAY_CHANGELOG_NOTES" ]; then
29-
gh release create "$YESTERDAY" -t "$YESTERDAY" -n "$YESTERDAY_CHANGELOG_NOTES" --latest
23+
awk '/^## '"$YESTERDAY"'/ {f=1; next} f && /^## [0-9]{4}-[0-9]{2}-[0-9]{2}/ {f=0} f && !/^## / {print}' CHANGELOG.md > changelog_tmp.md
24+
25+
if [ ! -s changelog_tmp.md ]; then
26+
echo "No changes found for $YESTERDAY, skipping release."
27+
exit 0
28+
fi
29+
30+
CHANGELOG_SIZE=$(wc -c < changelog_tmp.md)
31+
32+
if [ "$CHANGELOG_SIZE" -gt 10000 ]; then
33+
echo "ERROR: Changelog is too large to process automatically! Manual review required."
34+
echo "To manually trigger the release, use the 'workflow_dispatch' event."
35+
exit 1
3036
fi
37+
38+
# Creating the GitHub release (without --latest)
39+
gh release create "$YESTERDAY" -t "$YESTERDAY" -F changelog_tmp.md

0 commit comments

Comments
 (0)