mirror of
https://github.com/openclaw/openclaw.git
synced 2026-02-09 05:19:32 +08:00
- Add testing-strategy.yml that calls existing ci.yml + adds macOS/smoke for stable - Add promote-branch.yml for develop alpha beta main promotion PRs - Add deployment-strategy.yml for npm (alpha/beta/latest) + Docker (GHCR) - Add release-orchestrator.yml to coordinate version changelog test deploy - Add version-operations.yml for YYYY.M.D versioning with prerelease suffixes - Add generate-changelog.yml for conventional commit parsing - Add release.yml manual trigger workflow - Add discord-notify composite action for notifications - Modify ci.yml to support workflow_call for reuse by testing-strategy
53 lines
1.4 KiB
YAML
53 lines
1.4 KiB
YAML
name: Release
|
|
|
|
# Manual release workflow - triggers the release orchestrator
|
|
#
|
|
# Branch → Release Type mapping:
|
|
# alpha → releases from 'alpha' branch with -alpha.N suffix
|
|
# beta → releases from 'beta' branch with -beta.N suffix
|
|
# stable → releases from 'main' branch with YYYY.M.D version
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
release_type:
|
|
description: 'Release type'
|
|
required: true
|
|
type: choice
|
|
options:
|
|
- alpha
|
|
- beta
|
|
- stable
|
|
default: 'alpha'
|
|
dry_run:
|
|
description: 'Dry run (no publish)'
|
|
required: false
|
|
type: boolean
|
|
default: false
|
|
|
|
jobs:
|
|
determine-branch:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
branch: ${{ steps.branch.outputs.name }}
|
|
steps:
|
|
- name: Determine source branch
|
|
id: branch
|
|
run: |
|
|
case "${{ inputs.release_type }}" in
|
|
alpha) echo "name=alpha" >> $GITHUB_OUTPUT ;;
|
|
beta) echo "name=beta" >> $GITHUB_OUTPUT ;;
|
|
stable) echo "name=main" >> $GITHUB_OUTPUT ;;
|
|
esac
|
|
|
|
release:
|
|
name: Release
|
|
needs: determine-branch
|
|
uses: ./.github/workflows/release-orchestrator.yml
|
|
with:
|
|
release_type: ${{ inputs.release_type }}
|
|
source_branch: ${{ needs.determine-branch.outputs.branch }}
|
|
should_bump_version: true
|
|
dry_run: ${{ inputs.dry_run }}
|
|
secrets: inherit
|