Files
psysonic/.github/workflows/next.yml
T
cucadmuh 8d424fbc98 Fix/release create tag before verify (#404)
* fix(release): create missing app-v tag before release verification

Ensure reusable publish creates and pushes the expected app-v tag when absent,
then validates it points to source_ref. This prevents release records with tag_name
but no git refs/tags object, which previously broke Source code archives.

* fix(release): pin tauri publish to tagged release metadata

Pass tagName/releaseName/releaseDraft/prerelease to tauri-action in addition to
releaseId, so asset upload fallback remains bound to the expected app-v release
instead of creating untagged releases.

* chore(ci): align workflow action versions for release flow

Update github-script usage to v9 across release-related workflows and keep
the current tauri-action release binding changes in the same branch for testing.

* fix(release): harden tagged release resolution for source-only promote

Canonicalize release_id via getReleaseByTag after create/update and fail fast on
invalid tag/commit inputs to avoid untagged release binding. Also propagate
source-only marker through promote push events so push-triggered channel runs
skip platform artifacts and verify-nix consistently.
2026-05-01 19:04:26 +00:00

34 lines
1.4 KiB
YAML

name: Next Channel
# workflow_dispatch: set "Use workflow from branch" to `main` so reusable-channel-publish.yml
# is the latest (tag guards, etc.). The tree built for artifacts is always ref `next` below.
on:
push:
branches: [next]
# Merging auto PR "chore(nix): refresh lock …" only touches these paths — do not
# re-run the full channel (would loop: publish → verify-nix PR → merge → push → publish).
paths-ignore:
- "flake.lock"
- "nix/**"
workflow_dispatch:
inputs:
source_only:
description: "Create/refresh tagged release only (skip platform builds and verify-nix)"
required: false
default: false
type: boolean
jobs:
publish-next:
uses: ./.github/workflows/reusable-channel-publish.yml
with:
channel: next
# Always build from channel branch; do not tie checkout to workflow_dispatch UI branch.
source_ref: next
target_branch: next
prerelease: true
draft_release: true
verify_nix: ${{ !((github.event_name == 'workflow_dispatch' && github.event.inputs.source_only == 'true') || (github.event_name == 'push' && contains(github.event.head_commit.message, '[source-only]'))) }}
build_platform_artifacts: ${{ !((github.event_name == 'workflow_dispatch' && github.event.inputs.source_only == 'true') || (github.event_name == 'push' && contains(github.event.head_commit.message, '[source-only]'))) }}
secrets: inherit