From b6cfeccfe46caecf4ad1f54b39ffd519081d594d Mon Sep 17 00:00:00 2001 From: Syngnat Date: Sun, 19 Jul 2026 01:04:55 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20ci(release):=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=8F=91=E5=B8=83=E5=88=86=E6=94=AF=E8=A7=A6=E5=8F=91?= =?UTF-8?q?=E8=8D=89=E7=A8=BF=E5=8F=91=E5=B8=83=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 允许 publish/v* 临时分支触发受校验的发布流程 - 从分支名安全解析目标版本并复用完整资产检查 - 保留 workflow_dispatch 作为具备 Actions 权限时的入口 --- .github/workflows/publish-release.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 5bfd994b..9715cf2d 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -1,6 +1,9 @@ name: Publish Draft Release on: + push: + branches: + - 'publish/v*' workflow_dispatch: inputs: tag: @@ -13,7 +16,7 @@ permissions: contents: write concurrency: - group: publish-release-${{ inputs.tag }} + group: publish-release-${{ inputs.tag || github.ref_name }} cancel-in-progress: false jobs: @@ -21,13 +24,16 @@ jobs: name: Validate and publish draft runs-on: ubuntu-latest env: - RELEASE_TAG: ${{ inputs.tag }} + RELEASE_TAG: ${{ inputs.tag || github.ref_name }} steps: - name: Validate assets and publish uses: actions/github-script@v8 with: script: | - const tag = String(process.env.RELEASE_TAG || '').trim(); + const requestedTag = String(process.env.RELEASE_TAG || '').trim(); + const tag = requestedTag.startsWith('publish/') + ? requestedTag.slice('publish/'.length) + : requestedTag; if (!/^v\d+\.\d+\.\d+$/.test(tag)) { core.setFailed(`Invalid release tag: ${tag}`); return;