Skip to content

Commit 5bbf29b

Browse files
authored
Add workflow_dispatch input for issue number
1 parent 8c370da commit 5bbf29b

1 file changed

Lines changed: 33 additions & 6 deletions

File tree

.github/workflows/feature-request-enhance.yml

Lines changed: 33 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,18 @@ name: Enhance Feature Requests
33
on:
44
issues:
55
types: [opened, labeled]
6+
workflow_dispatch:
7+
inputs:
8+
issue_number:
9+
description: 'Issue number to process (optional)'
10+
required: false
11+
type: string
612

713
jobs:
814
check-label:
915
runs-on: ubuntu-latest
16+
permissions:
17+
issues: read
1018
outputs:
1119
has_enhancement: ${{ steps.check.outputs.has_enhancement }}
1220
already_enhanced: ${{ steps.check_enhanced.outputs.already_enhanced }}
@@ -15,16 +23,35 @@ jobs:
1523
id: check
1624
run: |
1725
set -e
18-
19-
if [ "${{ github.event.action }}" = "labeled" ] && [ "${{ github.event.label.name }}" = "enhancement" ]; then
20-
echo "has_enhancement=true" >> "$GITHUB_OUTPUT"
21-
else
22-
LABELS="${{ join(github.event.issue.labels.*.name, ',') }}"
23-
if [ -n "$LABELS" ] && echo "$LABELS" | grep -q "enhancement"; then
26+
27+
echo "Event action: ${{ github.event.action }}"
28+
echo "Label name: ${{ github.event.label.name }}"
29+
30+
# Handle labeled events (when a label is added to an existing issue)
31+
if [ "${{ github.event.action }}" = "labeled" ]; then
32+
if [ "${{ github.event.label.name }}" = "enhancement" ]; then
33+
echo "✅ Labeled event with enhancement label"
34+
echo "has_enhancement=true" >> "$GITHUB_OUTPUT"
35+
else
36+
echo "❌ Labeled event but label is not 'enhancement'"
37+
echo "has_enhancement=false" >> "$GITHUB_OUTPUT"
38+
fi
39+
# Handle opened events (when an issue is created, possibly with labels)
40+
elif [ "${{ github.event.action }}" = "opened" ]; then
41+
# Use join to get all label names, then check if enhancement is in the list
42+
LABELS="${{ join(github.event.issue.labels.*.name, ' ') }}"
43+
echo "Issue labels: $LABELS"
44+
45+
if [ -n "$LABELS" ] && echo "$LABELS" | grep -qw "enhancement"; then
46+
echo "✅ Opened event with enhancement label"
2447
echo "has_enhancement=true" >> "$GITHUB_OUTPUT"
2548
else
49+
echo "❌ Opened event but no enhancement label found"
2650
echo "has_enhancement=false" >> "$GITHUB_OUTPUT"
2751
fi
52+
else
53+
echo "❌ Unknown event action: ${{ github.event.action }}"
54+
echo "has_enhancement=false" >> "$GITHUB_OUTPUT"
2855
fi
2956
3057

0 commit comments

Comments
 (0)