Commit 40df6352 authored by Rémy Coutable's avatar Rémy Coutable 🔴

Merge branch 'remove-merge-train-script' into 'master'

Removed the merge-train script

See merge request gitlab-org/gitlab-ce!23587
parents da556cc9 008c99bf
#!/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" \
"[email protected]:$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
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment