Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
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
47 changes: 19 additions & 28 deletions jenkins-scripts/lib/_homebrew_github_commit.bash
Original file line number Diff line number Diff line change
@@ -1,61 +1,52 @@
# parameters:
# - COMMIT_MESSAGE
# - TAP_PREFIX
# - PULL_REQUEST_BRANCH
# - PACKAGE_ALIAS
# - VERSION
# - PULL_REQUEST_TITLE or PULL_REQUEST_URL

# Can be defined outside the script. if not, default value is set
PR_URL_export_file=${PR_URL_export_file:-${WORKSPACE}/pull_request_created.properties}

echo '# BEGIN SECTION: check variables'
if [ -z "${COMMIT_MESSAGE}" ]; then
echo COMMIT_MESSAGE not specified
exit 1
fi
if [ -z "${PULL_REQUEST_BRANCH}" ]; then
echo PULL_REQUEST_BRANCH not specified
exit -1
exit 1
fi
if [ -z "${PULL_REQUEST_TITLE}" ]; then
if [ -z "${PULL_REQUEST_URL}" ]; then
echo One of PULL_REQUEST_TITLE or PULL_REQUEST_URL must be specified
exit 1
fi
fi
if [ -z "${TAP_PREFIX}" ]; then
echo TAP_PREFIX not specified
exit -1
fi
# PACKAGE_ALIAS and VERSION are required if a pull request doesn't yet exist
if [ -z "${PULL_REQUEST_URL}" ]; then
if [ -z "${PACKAGE_ALIAS}" ]; then
echo PACKAGE_ALIAS not specified
exit -1
fi
if [ -z "${VERSION}" ]; then
echo VERSION not specified
exit -1
fi
exit 1
fi
echo '# END SECTION'

GIT="git -C ${TAP_PREFIX}"

DIFF_LENGTH=`${GIT} diff | wc -l`
if [ ${DIFF_LENGTH} -eq 0 ]; then
echo ==========================================================
if ${GIT} diff --exit-code; then
echo No formula modifications found, aborting
exit -1
exit 1
fi
echo ==========================================================
${GIT} diff
echo ==========================================================
echo '# END SECTION'

echo
echo '# BEGIN SECTION: commit and pull request creation'
${GIT} config user.name "OSRF Build Bot"
${GIT} config user.email "osrfbuild@osrfoundation.org"
${GIT} remote -v
# check if branch already exists
if ${GIT} rev-parse --verify ${PULL_REQUEST_BRANCH} ; then
${GIT} checkout ${PULL_REQUEST_BRANCH}
else
${GIT} checkout -b ${PULL_REQUEST_BRANCH}
fi
if [ -n "${PACKAGE_ALIAS}" ]; then
COMMIT_MESSAGE_PREFIX="${PACKAGE_ALIAS}: "
fi
${GIT} commit ${FORMULA_PATH} -m "${COMMIT_MESSAGE_PREFIX}update ${VERSION}${COMMIT_MESSAGE_SUFFIX}"
${GIT} commit ${FORMULA_PATH} -m "${COMMIT_MESSAGE}"
echo
${GIT} status
echo
Expand Down Expand Up @@ -83,7 +74,7 @@ if [ -z "${PULL_REQUEST_URL}" ]; then
PR_URL=$(${HUB} -C ${TAP_PREFIX} pull-request \
-b osrf:master \
-h osrfbuild:${PULL_REQUEST_BRANCH} \
-m "${PACKAGE_ALIAS} ${VERSION}")
-m "${PULL_REQUEST_TITLE}")

echo "Pull request created: ${PR_URL}"

Expand Down
4 changes: 4 additions & 0 deletions jenkins-scripts/lib/_homebrew_github_setup.bash
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,7 @@ ${GIT} fetch pr_head
if [ -n "${PULL_REQUEST_BRANCH}" ]; then
${GIT} checkout --track pr_head/${PULL_REQUEST_BRANCH}
fi

# configure git for committing
${GIT} config user.name "OSRF Build Bot"
${GIT} config user.email "osrfbuild@osrfoundation.org"
2 changes: 1 addition & 1 deletion jenkins-scripts/lib/homebrew_bottle_pullrequest.bash
Original file line number Diff line number Diff line change
Expand Up @@ -53,5 +53,5 @@ export FORMULA_PATH='-a'

echo '# END SECTION'

COMMIT_MESSAGE_SUFFIX=" bottle."
COMMIT_MESSAGE="update bottle"
. ${SCRIPT_LIBDIR}/_homebrew_github_commit.bash
2 changes: 2 additions & 0 deletions jenkins-scripts/lib/homebrew_formula_pullrequest.bash
Original file line number Diff line number Diff line change
Expand Up @@ -110,5 +110,7 @@ fi

# create branch with name and sanitized version string
PULL_REQUEST_BRANCH="${PACKAGE_ALIAS}_$(echo ${VERSION_SANITIZED} | tr ' ~:^?*[' '_')_$(date +%s)"
PULL_REQUEST_TITLE="${PACKAGE_ALIAS} ${VERSION}"
COMMIT_MESSAGE="${PACKAGE_ALIAS} ${VERSION}"

. ${SCRIPT_LIBDIR}/_homebrew_github_commit.bash