feat: 发版时自动同步到皮肤站
Sync source to CNB / Sync Git ref (push) Skipped
Axolotl desktop CI / guardrails (push) Canceled after 0s
Axolotl desktop CI / desktop (macos-latest) (push) Canceled after 0s
Axolotl desktop CI / desktop (ubuntu-latest) (push) Canceled after 0s
Axolotl desktop CI / desktop (windows-latest) (push) Canceled after 0s
Axolotl desktop CI / website (push) Canceled after 0s
Repository checks / typos (push) Canceled after 0s
Repository checks / tombi (push) Canceled after 0s
Rust checks / shear (push) Canceled after 0s

- build-on-tag 新增发布步骤,将 skin-site-update 包上传到皮肤站并激活
- 通过 SKIN_SITE_CI_UPLOAD_TOKEN 环境变量鉴权,未配置时跳过并告警
- 上传或激活失败不阻断发版流程
This commit is contained in:
AxTps committed 2026-10-18 14:02:57 +08:00
1 parent 3c8ac04269
commit aaf394f790
1 file changed
+38
+38
View File
@@ -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: