Files
CloudFlare-ImgBed/.github/workflows/sync-release.yml
2025-12-31 10:42:20 +08:00

47 lines
1.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: Sync Release (Create & Update) to Frontend Repo
on:
release:
# 创建、发布、更新
types: [created, published, edited]
jobs:
sync-release:
if: github.repository == 'MarSeventh/CloudFlare-ImgBed'
runs-on: ubuntu-latest
steps:
- name: Sync or Update Release
env:
GH_TOKEN: ${{ secrets.RELEASE_SYNC_PAT }}
TARGET_REPO: "MarSeventh/Sanyue-ImgHub"
TAG_NAME: ${{ github.event.release.tag_name }}
RELEASE_TITLE: ${{ github.event.release.name }}
RELEASE_BODY: ${{ github.event.release.body }}
IS_DRAFT: ${{ github.event.release.draft }}
IS_PRERELEASE: ${{ github.event.release.prerelease }}
run: |
# 格式化参数
ARGS=""
if [ "$IS_DRAFT" = "true" ]; then ARGS="$ARGS --draft"; else ARGS="$ARGS --draft=false"; fi
if [ "$IS_PRERELEASE" = "true" ]; then ARGS="$ARGS --prerelease"; else ARGS="$ARGS --prerelease=false"; fi
echo "正在检查目标仓库 $TARGET_REPO 中是否存在 Tag: $TAG_NAME..."
# 检查目标仓库是否已有该 Release
if gh release view "$TAG_NAME" --repo "$TARGET_REPO" > /dev/null 2>&1; then
echo "检测到现有 Release正在执行更新操作..."
gh release edit "$TAG_NAME" \
--repo "$TARGET_REPO" \
--title "$RELEASE_TITLE" \
--notes "$RELEASE_BODY" \
$ARGS
else
echo "未发现现有 Release正在创建新 Release..."
gh release create "$TAG_NAME" \
--repo "$TARGET_REPO" \
--title "$RELEASE_TITLE" \
--notes "$RELEASE_BODY" \
$ARGS
fi