From a8d71c0a728f37f0dd426de874cbd740b7a7d0bf Mon Sep 17 00:00:00 2001 From: James Hodgkinson Date: Mon, 27 May 2024 08:24:34 +1000 Subject: [PATCH] fixing dependabot automerge --- scripts/dependabot_automerge_check.sh | 33 +++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 scripts/dependabot_automerge_check.sh diff --git a/scripts/dependabot_automerge_check.sh b/scripts/dependabot_automerge_check.sh new file mode 100755 index 0000000..241c0bd --- /dev/null +++ b/scripts/dependabot_automerge_check.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +if [ -z "$1" ]; then + echo "Specify the PR URL" + exit 1 +fi + +PR_URL="$1" + +# sets the upstream metadata for `gh pr status` +gh pr checkout "$PR_URL" + + +# are we good? +echo "Checking Conclusions" +CONCLUSIONS="$(gh pr status --json statusCheckRollup | jq '.currentBranch | .[] | .[] | select(.conclusion != "SUCCESS") | select(.conclusion != "NEUTRAL")| {status: .status, workfFlowName: .workFlowName, conclusion: .conclusion}')" + + + +if [ "$(echo "${CONCLUSIONS}" | wc -l)" -eq 0 ]; then + gh pr review --approve "$PR_URL" +else + echo "Already running or failed: ${CONCLUSIONS}"; +fi + +if [ "${APPROVED}" != "APPROVED" ]; then + echo "PR isn't approved!" + exit 0 +fi + +# check approval +echo "Checking if already approved...." +APPROVED="$(gh pr status --json reviewDecision -q .currentBranch.reviewDecision)" \ No newline at end of file