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