@@ -35,43 +35,30 @@ jobs:
3535 env :
3636 BODY : ${{ github.event.comment.body }}
3737 run : |
38- if echo "$BODY" | grep -qiE "^@gemini-bot"; then
39- echo "is_review=true" >> $GITHUB_OUTPUT
40- fi
41- if echo "$BODY" | grep -qiE "(^|\r?\n)@pr-squash"; then
42- echo "is_squash=true" >> $GITHUB_OUTPUT
43- fi
44- if echo "$BODY" | grep -qiE "(^|\r?\n)@conflict-resolve"; then
45- echo "is_resolve=true" >> $GITHUB_OUTPUT
46- fi
47- if echo "$BODY" | grep -qiE "^@gemini-triage"; then
48- echo "is_triage=true" >> $GITHUB_OUTPUT
49- fi
50- if echo "$BODY" | grep -qiE "^@gemini-coder"; then
51- echo "is_coder=true" >> $GITHUB_OUTPUT
52- fi
53- if echo "$BODY" | grep -qiE "^@create-review-issues"; then
54- echo "is_review_issues=true" >> $GITHUB_OUTPUT
55- fi
56- if echo "$BODY" | grep -qiE "^@gemini-enrich"; then
57- echo "is_enrich=true" >> $GITHUB_OUTPUT
58- fi
59- if echo "$BODY" | grep -qiE "^@gemini-ui-review"; then
60- echo "is_ui_review=true" >> $GITHUB_OUTPUT
61- fi
62- if echo "$BODY" | grep -qiE "^@gemini-help"; then
63- echo "is_help=true" >> $GITHUB_OUTPUT
64- fi
38+ COMMANDS=(
39+ "gemini-bot:review"
40+ "pr-squash:squash"
41+ "conflict-resolve:resolve"
42+ "gemini-triage:triage"
43+ "gemini-coder:coder"
44+ "create-review-issues:review_issues"
45+ "gemini-enrich:enrich"
46+ "gemini-ui-review:ui_review"
47+ "gemini-help:help"
48+ )
49+
50+ for cmd in "${COMMANDS[@]}"; do
51+ KEY=${cmd%%:*}
52+ VAR=${cmd#*:}
53+ if echo "$BODY" | grep -qiE "(^|\r?\n)@$KEY"; then
54+ echo "is_$VAR=true" >> $GITHUB_OUTPUT
55+ fi
56+ done
6557
6658 if grep -q "true" "$GITHUB_OUTPUT"; then
6759 echo "is_command_triggered=true" >> $GITHUB_OUTPUT
6860 fi
6961
70- # Set consolidated trigger flag for status jobs
71- if echo "$BODY" | grep -qiE "(^|\r?\n)@(gemini-bot|gemini-review|pr-squash|conflict-resolve|gemini-triage|gemini-coder|create-review-issues|gemini-enrich|gemini-help)"; then
72- echo "is_command_triggered=true" >> $GITHUB_OUTPUT
73- fi
74-
7562 init-status :
7663 needs : [router]
7764 if : needs.router.outputs.is_command_triggered == 'true'
0 commit comments