Skip to content

Commit 964ffc8

Browse files
committed
Add workflow_dispatch trigger for manual releases
1 parent 707b9d5 commit 964ffc8

1 file changed

Lines changed: 36 additions & 10 deletions

File tree

.github/workflows/release.yml

Lines changed: 36 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,13 @@ name: Release Process
33
on:
44
push:
55
branches: [master]
6+
workflow_dispatch:
7+
inputs:
8+
force_release:
9+
description: 'Force release even if not from dev merge'
10+
required: false
11+
default: 'false'
12+
type: boolean
613

714
jobs:
815
# Check if this push is from a dev branch merge
@@ -17,17 +24,36 @@ jobs:
1724
- name: Check if merge is from dev branch
1825
id: check
1926
run: |
20-
echo "Checking merge source..."
21-
echo "Commit message: ${{ github.event.head_commit.message }}"
22-
23-
# Check if this is a merge commit from dev
24-
if [[ "${{ github.event.head_commit.message }}" == *"Merge pull request"* ]] && \
25-
[[ "${{ github.event.head_commit.message }}" == *"/dev"* ]]; then
26-
echo "✅ Detected merge from dev branch"
27-
echo "is-dev-merge=true" >> $GITHUB_OUTPUT
27+
echo "Event: ${{ github.event_name }}"
28+
29+
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
30+
echo "🔧 Manual workflow dispatch triggered"
31+
if [[ "${{ github.event.inputs.force_release }}" == "true" ]]; then
32+
echo "✅ Force release enabled - proceeding"
33+
echo "is-dev-merge=true" >> $GITHUB_OUTPUT
34+
else
35+
echo "⚠️ Manual trigger without force_release - checking current branch is master"
36+
if [[ "${{ github.ref_name }}" == "master" ]]; then
37+
echo "✅ On master branch - proceeding with manual release"
38+
echo "is-dev-merge=true" >> $GITHUB_OUTPUT
39+
else
40+
echo "❌ Not on master branch for manual release"
41+
echo "is-dev-merge=false" >> $GITHUB_OUTPUT
42+
fi
43+
fi
2844
else
29-
echo "❌ Not a dev branch merge - skipping release"
30-
echo "is-dev-merge=false" >> $GITHUB_OUTPUT
45+
echo "Checking merge source..."
46+
echo "Commit message: ${{ github.event.head_commit.message }}"
47+
48+
# Check if this is a merge commit from dev
49+
if [[ "${{ github.event.head_commit.message }}" == *"Merge pull request"* ]] && \
50+
[[ "${{ github.event.head_commit.message }}" == *"/dev"* ]]; then
51+
echo "✅ Detected merge from dev branch"
52+
echo "is-dev-merge=true" >> $GITHUB_OUTPUT
53+
else
54+
echo "❌ Not a dev branch merge - skipping release"
55+
echo "is-dev-merge=false" >> $GITHUB_OUTPUT
56+
fi
3157
fi
3258
3359
# Main release job with manual approval

0 commit comments

Comments
 (0)