2018-09-12 07:29:21 -06:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
2019-11-26 12:00:24 -07:00
|
|
|
set -e
|
2018-09-12 07:29:21 -06:00
|
|
|
|
2019-06-17 05:08:15 -06: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 07:29:21 -06:00
|
|
|
|
2019-06-17 05:08:15 -06: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 09:08:38 -06: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 05:08:15 -06:00
|
|
|
GITBASE=$BUILDKITE_PULL_REQUEST_BASE_BRANCH
|
2018-09-12 07:29:21 -06:00
|
|
|
fi
|
|
|
|
|
2019-11-26 12:00:24 -07:00
|
|
|
echo "--- merge_base_branch $GITBASE"
|
|
|
|
|
2018-09-12 07:29:21 -06:00
|
|
|
# Show what we are before
|
2018-12-11 07:11:30 -07:00
|
|
|
git --no-pager show -s
|
2018-09-12 07:29:21 -06:00
|
|
|
|
2018-09-13 08:44:31 -06: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 07:29:21 -06:00
|
|
|
# Fetch and merge. If it doesn't work, it will raise due to set -e.
|
|
|
|
git fetch -u origin $GITBASE
|
2019-08-29 06:19:57 -06:00
|
|
|
git merge --no-edit --no-commit origin/$GITBASE
|
2018-09-12 07:29:21 -06:00
|
|
|
|
|
|
|
# Show what we are after.
|
2018-12-11 07:11:30 -07:00
|
|
|
git --no-pager show -s
|