Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
tools: use github cli to squash the pr
PR-URL: nodejs/node#57675
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
  • Loading branch information
bjohansebas authored and aduh95 committed Apr 5, 2025
commit 0bdb996c30f3b220940d59b6b49ce191f527c545
10 changes: 1 addition & 9 deletions tools/actions/commit-queue.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,18 +82,11 @@ for pr in "$@"; do
fi
else
# If there's only one commit, we can use the Squash and Merge feature from GitHub.
# TODO: use `gh pr merge` when the GitHub CLI allows to customize the commit title (https://github.com/cli/cli/issues/1023).
commit_title=$(git log -1 --pretty='format:%s')
commit_body=$(git log -1 --pretty='format:%b')
commit_head=$(grep 'Fetched commits as' output | cut -d. -f3 | xargs git rev-parse)

jq -n \
--arg title "${commit_title}" \
--arg body "${commit_body}" \
--arg head "${commit_head}" \
'{merge_method:"squash",commit_title:$title,commit_message:$body,sha:$head}' > output.json
cat output.json
if ! gh api -X PUT "repos/${OWNER}/${REPOSITORY}/pulls/${pr}/merge" --input output.json > output; then
if ! gh pr merge "$pr" --squash --body "$commit_body" --subject "$commit_title" --match-head-commit "$commit_head" > output; then
commit_queue_failed "$pr"
continue
fi
Expand All @@ -102,7 +95,6 @@ for pr in "$@"; do
commit_queue_failed "$pr"
continue
fi
rm output.json
fi

rm output
Expand Down