mirror of
https://github.com/kilyabin/psysonic.git
synced 2026-07-22 06:25:41 +00:00
Fix/release untagged guard (#399)
* fix(release): prevent untagged fallback from tauri publish Set explicit github-script output for release_id and validate it before build jobs. This prevents tauri-action from creating untagged releases when release id wiring breaks and keeps assets attached to the intended app-v tag release. * fix(release): add source-only promote mode and harden release binding Add a source_only dispatch option to promote workflows and propagate it into channel publish so maintainers can skip platform builds and verify-nix when needed. Also validate release/tag/commit binding to prevent untagged fallback and ensure source archives stay aligned with the intended app-v tag.
This commit is contained in:
@@ -2,12 +2,19 @@ name: Promote next to release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
source_only:
|
||||
description: "Create/refresh tagged release only (skip platform builds and verify-nix)"
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
|
||||
jobs:
|
||||
promote:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
actions: write
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
@@ -49,3 +56,20 @@ jobs:
|
||||
git commit -m "chore(release): finalize release version ${NEW_VERSION}"
|
||||
- name: push release
|
||||
run: git push --force-with-lease origin HEAD:release
|
||||
- name: dispatch Release Channel workflow
|
||||
uses: actions/github-script@v7
|
||||
env:
|
||||
SOURCE_ONLY: ${{ inputs.source_only && 'true' || 'false' }}
|
||||
with:
|
||||
script: |
|
||||
const sourceOnly = process.env.SOURCE_ONLY === "true";
|
||||
await github.rest.actions.createWorkflowDispatch({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
workflow_id: "release.yml",
|
||||
ref: "main",
|
||||
inputs: {
|
||||
source_only: sourceOnly ? "true" : "false",
|
||||
},
|
||||
});
|
||||
core.info(`Dispatched release.yml with source_only=${sourceOnly}`);
|
||||
|
||||
Reference in New Issue
Block a user