2018-09-12 09:29:21 -04:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
2019-11-26 14:00:24 -05:00
|
|
|
set -e
|
2018-09-12 09:29:21 -04:00
|
|
|
|
2019-06-17 07:08:15 -04:00
|
|
|
if [[ "$BUILDKITE_BRANCH" =~ ^(develop|master|dinsic|shhs|release-.*)$ ]]; then
|
|
|
|
echo "Not merging forward, as this is a release branch"
|
|
|
|
exit 0
|
|
|
|
fi
|
2018-09-12 09:29:21 -04:00
|
|
|
|
2019-06-17 07:08:15 -04:00
|
|
|
if [[ -z $BUILDKITE_PULL_REQUEST_BASE_BRANCH ]]; then
|
|
|
|
echo "Not a pull request, or hasn't had a PR opened yet..."
|
2018-10-01 11:08:38 -04:00
|
|
|
|
|
|
|
# It probably hasn't had a PR opened yet. Since all PRs land on develop, we
|
|
|
|
# can probably assume it's based on it and will be merged into it.
|
|
|
|
GITBASE="develop"
|
|
|
|
else
|
|
|
|
# Get the reference, using the GitHub API
|
2019-06-17 07:08:15 -04:00
|
|
|
GITBASE=$BUILDKITE_PULL_REQUEST_BASE_BRANCH
|
2018-09-12 09:29:21 -04:00
|
|
|
fi
|
|
|
|
|
2019-11-26 14:00:24 -05:00
|
|
|
echo "--- merge_base_branch $GITBASE"
|
|
|
|
|
2018-09-12 09:29:21 -04:00
|
|
|
# Show what we are before
|
2018-12-11 09:11:30 -05:00
|
|
|
git --no-pager show -s
|
2018-09-12 09:29:21 -04:00
|
|
|
|
2018-09-13 10:44:31 -04:00
|
|
|
# Set up username so it can do a merge
|
|
|
|
git config --global user.email bot@matrix.org
|
|
|
|
git config --global user.name "A robot"
|
|
|
|
|
2018-09-12 09:29:21 -04:00
|
|
|
# Fetch and merge. If it doesn't work, it will raise due to set -e.
|
|
|
|
git fetch -u origin $GITBASE
|
2019-08-29 08:19:57 -04:00
|
|
|
git merge --no-edit --no-commit origin/$GITBASE
|
2018-09-12 09:29:21 -04:00
|
|
|
|
|
|
|
# Show what we are after.
|
2018-12-11 09:11:30 -05:00
|
|
|
git --no-pager show -s
|