summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2018-12-05 13:40:14 +0100
committerYorick Peterse <yorickpeterse@gmail.com>2018-12-05 13:42:32 +0100
commit008c99bf02cd61a4a3b4cae087956b2a941cb7dc (patch)
treedd93b2957a0392eff5ba7769e2cea3d043dc6f19 /scripts
parentda2da0fa599f0a27d0f00e4b2077f7940cf935df (diff)
downloadgitlab-ce-008c99bf02cd61a4a3b4cae087956b2a941cb7dc.tar.gz
Removed the merge-train script
We're moving the automatic merging logic to a separate repository, so there's no need in keeping this file around. [ci skip]
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/merge-train73
1 files changed, 0 insertions, 73 deletions
diff --git a/scripts/merge-train b/scripts/merge-train
deleted file mode 100755
index a934971b869..00000000000
--- a/scripts/merge-train
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/sh
-
-set -e
-
-# The name (including namespace) of the EE repository to merge commits into.
-EE_PROJECT='gitlab-org/gitlab-ee'
-
-# The directory to clone GitLab EE into.
-EE_DIRECTORY="$CI_PROJECT_DIR/gitlab-ee"
-
-# The EE branch to merge the changes into.
-EE_BRANCH='master'
-
-# Runs an incremental or periodic merge of CE to EE. This script should be run
-# from a container built using https://gitlab.com/gitlab-org/merge-train.
-
-# Merges (or reverts) commits in a batch (based on CI_COMMIT_BEFORE_SHA and
-# CI_COMMIT_SHA), or since a specific commit.
-#
-# The optional first argument of this function should be a SHA of a commit. When
-# specified, all commits since this commit will be processed.
-merge() {
- # We need to source the configure-ssh script instead of running it with
- # `sh`, since it uses `eval` for SSH agent and we want the result of that to
- # persist.
- #
- # shellcheck disable=SC1091
- . /app/bin/configure-ssh
-
- # We can not perform a shallow clone, as this results in Git sometimes
- # refusing to fetch from CE. To work around this, we perform a full clone
- # but cache the repository in CI. If a cached repository exists, we simply
- # just pull from `master`.
- if [ -d "$EE_DIRECTORY" ]
- then
- echo "Updating existing clone of $EE_PROJECT"
-
- git -C "$EE_DIRECTORY" pull --quiet origin "$EE_BRANCH"
- else
- echo "Cloning $EE_PROJECT"
-
- git clone --quiet --single-branch --branch "$EE_BRANCH" \
- "git@gitlab.com:$EE_PROJECT.git" "$EE_DIRECTORY"
- fi
-
- cd /app
-
- env GITLAB_TOKEN="$MERGE_TRAIN_API_TOKEN" \
- bundle exec /app/bin/merge-train "$CI_PROJECT_DIR" "$EE_DIRECTORY" \
- --source-name "$CI_PROJECT_PATH" \
- --target-branch "$EE_BRANCH" \
- ${1:+--before "$1"}
-}
-
-# Merges (or reverts) all commits since a point in time as supported by `git log
-# --since`, such as "12 hours ago".
-merge_since() {
- commit="$(git log --since="$MERGE_SINCE" --reverse --format=%H | head -n1)"
-
- if [ "$commit" = '' ]
- then
- echo "There are no commits to merge since $MERGE_SINCE"
- else
- merge "$commit"
- fi
-}
-
-if [ "$MERGE_SINCE" ]
-then
- merge_since
-else
- merge
-fi