mirror of
https://github.com/unraid/api.git
synced 2026-01-06 00:30:22 -06:00
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced the automated release process with integrated changelog updates for better tracking of product changes. - Expanded deployment support by distributing release assets through additional cloud providers, ensuring more robust delivery. - **Chores** - Refined release configurations and streamlined component management for a smoother rollout. - Introduced file verification checks to prevent release interruptions and maintain reliable updates. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
71 lines
2.1 KiB
YAML
71 lines
2.1 KiB
YAML
name: Update Release Changelog
|
|
|
|
on:
|
|
release:
|
|
types: [edited]
|
|
|
|
jobs:
|
|
update-release-changelog:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Download Release Artifacts (Plugins)
|
|
uses: dsaltares/fetch-gh-release-asset@master
|
|
with:
|
|
file: ".*"
|
|
regex: true
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
target: "./"
|
|
version: "latest"
|
|
|
|
- name: Verify Required Files Exist
|
|
run: |
|
|
if [ ! -f "dynamix.unraid.net.plg" ]; then
|
|
echo "Error: dynamix.unraid.net.plg not found"
|
|
exit 1
|
|
fi
|
|
|
|
# Check for at least one .txz file
|
|
if [ -z "$(find . -name '*.txz')" ]; then
|
|
echo "Error: No .txz files found"
|
|
exit 1
|
|
fi
|
|
|
|
- uses: cardinalby/git-get-release-action@v1
|
|
id: release-info
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
latest: true
|
|
prerelease: false
|
|
|
|
- name: Get Release Changelog
|
|
run: |
|
|
notes=$(cat << EOF
|
|
${{ steps.release-info.outputs.body }}
|
|
EOF
|
|
)
|
|
escapedNotes=$(sed -e 's/[&\\/]/\\&/g; s/$/\\/' -e '$s/\\$//' <<<"$notes")
|
|
sed -i -z -E "s/<CHANGES>(.*)<\/CHANGES>/<CHANGES>\n${escapedNotes}\n<\/CHANGES>/g" "dynamix.unraid.net.plg"
|
|
|
|
- name: Upload All Release Files to DO Spaces
|
|
uses: BetaHuhn/do-spaces-action@v2
|
|
with:
|
|
access_key: ${{ secrets.DO_ACCESS_KEY }}
|
|
secret_key: ${{ secrets.DO_SECRET_KEY }}
|
|
space_name: ${{ secrets.DO_SPACE_NAME }}
|
|
space_region: ${{ secrets.DO_SPACE_REGION }}
|
|
source: "."
|
|
out_dir: unraid-api
|
|
|
|
- name: Upload Staging Plugin to Cloudflare Bucket
|
|
uses: jakejarvis/s3-sync-action@v0.5.1
|
|
env:
|
|
AWS_S3_ENDPOINT: ${{ secrets.CF_ENDPOINT }}
|
|
AWS_S3_BUCKET: ${{ secrets.CF_BUCKET }}
|
|
AWS_ACCESS_KEY_ID: ${{ secrets.CF_ACCESS_KEY_ID }}
|
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.CF_SECRET_ACCESS_KEY }}
|
|
AWS_REGION: 'auto'
|
|
SOURCE_DIR: "."
|
|
DEST_DIR: unraid-api
|