From aaf394f79051f67bf3bab89ea1bbeae358521d65 Mon Sep 17 00:00:00 2001 From: Ap_Tx <3045929398@qq.com> Date: Sun, 18 Oct 2026 14:00:06 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=8F=91=E7=89=88=E6=97=B6=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=90=8C=E6=AD=A5=E5=88=B0=E7=9A=AE=E8=82=A4=E7=AB=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - build-on-tag 新增发布步骤,将 skin-site-update 包上传到皮肤站并激活 - 通过 SKIN_SITE_CI_UPLOAD_TOKEN 环境变量鉴权,未配置时跳过并告警 - 上传或激活失败不阻断发版流程 --- .github/workflows/build-on-tag.yml | 38 ++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/.github/workflows/build-on-tag.yml b/.github/workflows/build-on-tag.yml index 821f421..2e79483 100644 --- a/.github/workflows/build-on-tag.yml +++ b/.github/workflows/build-on-tag.yml @@ -374,6 +374,44 @@ jobs: ) gh release upload "${GITHUB_REF_NAME}" "release-check/${bundle_name}" --clobber + - name: Publish to skin site + continue-on-error: true + env: + SKIN_SITE_TOKEN: ${{ secrets.SKIN_SITE_CI_UPLOAD_TOKEN }} + SKIN_SITE_URL: ${{ vars.SKIN_SITE_URL || 'https://skin.starlight.cool' }} + run: | + set -euo pipefail + if [ -z "${SKIN_SITE_TOKEN:-}" ]; then + echo "::warning::SKIN_SITE_CI_UPLOAD_TOKEN not configured, skipping skin site publish" + exit 0 + fi + + version="${GITHUB_REF_NAME#v}" + bundle="release-check/Starlight_Launcher_${version}_skin-site-update.zip" + if [ ! -f "${bundle}" ]; then + echo "::warning::Bundle ${bundle} not found, skipping skin site publish" + exit 0 + fi + + upload_response=$(curl -fsS -X POST \ + -H "Authorization: Bearer ${SKIN_SITE_TOKEN}" \ + -F "archive=@${bundle};type=application/zip" \ + "${SKIN_SITE_URL}/starlight/launcher/admin/upload?forceUpdate=false") + + release_id=$(printf '%s' "${upload_response}" | jq -r '.payload.id // empty') + if [ -z "${release_id}" ]; then + echo "::warning::Skin site upload did not return a release id: ${upload_response}" + exit 0 + fi + + echo "Uploaded release id: ${release_id}" + + curl -fsS -X POST \ + -H "Authorization: Bearer ${SKIN_SITE_TOKEN}" \ + "${SKIN_SITE_URL}/starlight/launcher/admin/${release_id}/activate" + + echo "Skin site release ${version} published" + - name: Notify Update Server to publish release assets if: ${{ env.UPDATE_SERVER_URL != '' && env.UPDATE_SERVER_WEBHOOK_SECRET != '' }} env: