#!/usr/bin/env bash # Opens a PR from BRANCH into auto/driver-gaps, references the issue, sets ready/draft. # Usage: open-pr.sh ISSUE_NUM BRANCH_NAME TITLE BODY_FILE # Echoes the PR number on stdout. set -euo pipefail HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" . "$HERE/lib.sh" ISSUE="${1:?}"; BRANCH="${2:?}"; TITLE="${3:?}"; BODY_FILE="${4:?}" BODY=$(cat "$BODY_FILE") PAYLOAD=$(python -c " import json, sys print(json.dumps({ 'title': sys.argv[1], 'body': sys.argv[2] + '\n\nCloses #' + sys.argv[3], 'head': sys.argv[4], 'base': sys.argv[5], })) " "$TITLE" "$BODY" "$ISSUE" "$BRANCH" "$INTEGRATION_BRANCH") PR=$(api_repo POST pulls "$PAYLOAD") PR_NUM=$(echo "$PR" | python -c "import sys,json; print(json.load(sys.stdin)['number'])") echo "$PR_NUM"