Create Daily Release #230
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Create Daily Release | |
on: | |
schedule: | |
- cron: '1 0 * * *' # Runs daily at 00:01 UTC | |
workflow_dispatch: | |
jobs: | |
create-daily-release: | |
if: github.repository == 'community-scripts/ProxmoxVE' | |
runs-on: runner-cluster-htl-set | |
permissions: | |
contents: write | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Clean CHANGELOG (remove HTML header) | |
run: sed -n '/^## /,$p' CHANGELOG.md > changelog_cleaned.md | |
- name: Extract relevant changelog section | |
run: | | |
YESTERDAY=$(date -u --date="yesterday" +%Y-%m-%d) | |
echo "Checking for changes on: $YESTERDAY" | |
# Extract the section from "## $YESTERDAY" until the next "## YYYY-MM-DD" | |
sed -n "/^## $YESTERDAY/,/^## [0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}/p" changelog_cleaned.md | head -n -1 > changelog_tmp_full.md | |
# Truncate the extracted section to 5000 characters | |
head -c 5000 changelog_tmp_full.md > changelog_tmp.md | |
echo "=== Extracted Changelog ===" | |
cat changelog_tmp.md | |
echo "===========================" | |
# Abort if no content was found | |
if [ ! -s changelog_tmp.md ]; then | |
echo "No changes found for $YESTERDAY, skipping release." | |
exit 0 | |
fi | |
- name: Create GitHub release | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
YESTERDAY=$(date -u --date="yesterday" +%Y-%m-%d) | |
gh release create "$YESTERDAY" -t "$YESTERDAY" -F changelog_tmp.md |