@@ -16,26 +16,26 @@ echo ""
1616while true ; do
1717 # Get PR status
1818 STATUS=$( gh pr view " $PR_NUMBER " --json mergeable,mergeStateStatus 2> /dev/null || echo " error" )
19-
19+
2020 if [ " $STATUS " = " error" ]; then
2121 echo " ❌ Failed to get PR status. Does PR #$PR_NUMBER exist?"
2222 exit 1
2323 fi
24-
24+
2525 MERGEABLE=$( echo " $STATUS " | jq -r ' .mergeable' )
2626 MERGE_STATE=$( echo " $STATUS " | jq -r ' .mergeStateStatus' )
27-
27+
2828 # Check for bad merge status
2929 if [ " $MERGEABLE " = " CONFLICTING" ]; then
3030 echo " ❌ PR has merge conflicts!"
3131 exit 1
3232 fi
33-
33+
3434 if [ " $MERGE_STATE " = " DIRTY" ]; then
3535 echo " ❌ PR has merge conflicts!"
3636 exit 1
3737 fi
38-
38+
3939 if [ " $MERGE_STATE " = " BEHIND" ]; then
4040 echo " ❌ PR is behind base branch. Rebase needed."
4141 echo " "
@@ -45,18 +45,18 @@ while true; do
4545 echo " git push --force-with-lease"
4646 exit 1
4747 fi
48-
48+
4949 # Get check status
5050 CHECKS=$( gh pr checks " $PR_NUMBER " 2>&1 || echo " pending" )
51-
51+
5252 # Check for failures
5353 if echo " $CHECKS " | grep -q " fail" ; then
5454 echo " ❌ Some checks failed:"
5555 echo " "
5656 gh pr checks " $PR_NUMBER "
5757 exit 1
5858 fi
59-
59+
6060 # Check if all checks passed and merge state is clean
6161 if echo " $CHECKS " | grep -q " pass" && ! echo " $CHECKS " | grep -qE " pending|fail" ; then
6262 if [ " $MERGE_STATE " = " CLEAN" ]; then
@@ -71,6 +71,6 @@ while true; do
7171 # Show current status
7272 echo -ne " \r⏳ Checks in progress... (${MERGE_STATE} ) "
7373 fi
74-
74+
7575 sleep 5
7676done
0 commit comments