Removed migration script, not needed anymore
This commit is contained in:
parent
9c283d2ab8
commit
9f301a19b6
@ -1,146 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Feel free to remove this script when migration is complete
|
||||
|
||||
set -eu
|
||||
|
||||
function help {
|
||||
echo "This script migrates your branch, commit-by-commit from"
|
||||
echo "your local git repository to a monorepo repository."
|
||||
echo ""
|
||||
echo "In a nutshell it executes combination of format-patch and am"
|
||||
echo "commands with a couple of additional checks and cleanups."
|
||||
echo ""
|
||||
echo "./migrate-branch <legacy-repo-path> branch[, ...]"
|
||||
echo ""
|
||||
}
|
||||
|
||||
LBLUE=$(tput setaf 051)
|
||||
LRED=$(tput setaf 196)
|
||||
LGREEN=$(tput setaf 046)
|
||||
BLACK=$(tput setaf 000)
|
||||
BG_GREEN=$(tput setab 2)
|
||||
BOLD=$(tput bold)
|
||||
CLR=$(tput sgr0)
|
||||
|
||||
function _header {
|
||||
echo -e "${BG_GREEN}${BLACK}> ${1}${CLR}"
|
||||
}
|
||||
|
||||
function _info { echo -ne "${LBLUE}${1}${CLR}"; }
|
||||
function _err { echo -ne "${LRED}${1}${CLR}"; }
|
||||
|
||||
function _infoln { _info "${1}\n"; }
|
||||
function _errln { _err "${1}\n"; }
|
||||
function _fatal {
|
||||
_errln "${1}";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
LEGACYRP=${1:-""}
|
||||
|
||||
# show help if no legacy repo path is specified or if value ends with "help" or "h"
|
||||
if [ -z "${LEGACYRP}" ] || [[ "${LEGACYRP}" =~ (help|h)$ ]]; then
|
||||
help
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
||||
shift
|
||||
BRANCHES=${@:-""}
|
||||
|
||||
if [ -z "${LEGACYRP}" ]; then
|
||||
_fatal "Use: migrate-branch <legacy-repo-path> [branch, ...]"
|
||||
fi
|
||||
|
||||
if [ ! -d "${LEGACYRP}" ]; then
|
||||
_fatal "Error: legacy repo path does not exist"
|
||||
fi
|
||||
|
||||
if [ -z "${BRANCHES}" ]; then
|
||||
# fetch current branch from legacy repo
|
||||
BRANCHES=$(git -C "${LEGACYRP}" branch --quiet --all --list)
|
||||
|
||||
# if no branches ar found, exit
|
||||
if [ -z "${BRANCHES}" ]; then
|
||||
_fatal "Error: no branches found in ${LEGACYRP}"
|
||||
fi
|
||||
|
||||
_infoln "Found branches in ${LEGACYRP}:"
|
||||
echo "${BRANCHES}"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# extract repository name from the remote
|
||||
REPO=$(git -C "${LEGACYRP}" remote get-url origin | sed -E 's/.*\/(.*)\.git/\1/')
|
||||
|
||||
# guess new path from legacy repo
|
||||
case $REPO in
|
||||
corteza-server) NEW_PATH="server" ;;
|
||||
corteza-webapp) NEW_PATH="client/web" ;;
|
||||
corteza-webapp-admin) NEW_PATH="client/web/admin" ;;
|
||||
corteza-webapp-reporter) NEW_PATH="client/web/reporter" ;;
|
||||
corteza-webapp-compose) NEW_PATH="client/web/compose" ;;
|
||||
corteza-webapp-privacy) NEW_PATH="client/web/privacy" ;;
|
||||
corteza-webapp-workflow) NEW_PATH="client/web/workflow" ;;
|
||||
corteza-webapp-discovery) NEW_PATH="client/web/discovery" ;;
|
||||
corteza-webapp-one) NEW_PATH="client/web/one" ;;
|
||||
corteza-vue) NEW_PATH="lib/vue" ;;
|
||||
corteza-js) NEW_PATH="lib/js" ;;
|
||||
|
||||
corteza-server-discovery) PATH="server-discovery" ;;
|
||||
|
||||
*) _fatal "Unsupported legacy repo: ${REPO}" ;;
|
||||
esac
|
||||
|
||||
# get current branch
|
||||
BASE_BRANCH=$(git branch --quiet --show-current)
|
||||
|
||||
# If $BASE_BRANCH does not end with .x, ask for confirmation to proceed
|
||||
if [[ ! "${BASE_BRANCH}" =~ \.x$ ]]; then
|
||||
_infoln "Current branch (on mono repo) is ${BOLD}${BASE_BRANCH}${LBLUE} and does not end with .x (e.g. a version branch 2021.9.x)"
|
||||
echo "If you know what you are doing proceed other abort and switch to a version branch"
|
||||
read -n 1 -p "Are you sure you want to proceed? [y/N] "; echo
|
||||
if [ "${REPLY}" != "y" ]; then
|
||||
_fatal "Aborting"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# loop through branches
|
||||
for BRANCH in ${BRANCHES}; do
|
||||
NEW_BRANCH="legacy-${REPO}-${BRANCH}"
|
||||
|
||||
# Check if $BASE_BRANCH is a suffix of $BRANCH?
|
||||
read -n 1 -p "Migrating branch ${BOLD}${BRANCH}${CLR} as ${NEW_BRANCH} using ${BASE_BRANCH} as base.\n Proceed? [y/N] "; echo
|
||||
if [ "${REPLY}" != "y" ]; then
|
||||
echo "Skipping"
|
||||
continue
|
||||
fi
|
||||
|
||||
# get list of all commits since HEAD of base-branch branch
|
||||
COMMITS=$(git -C "${LEGACYRP}" log --reverse --pretty=format:"%H" "${BASE_BRANCH}..${BRANCH}")
|
||||
|
||||
_infoln "Found $(echo ${COMMITS} | wc -l) commits to migrate"
|
||||
|
||||
# switch to base branch to ensure new one will be created from this
|
||||
git switch "${BASE_BRANCH}"
|
||||
|
||||
# create feature branch from base branch
|
||||
git switch -C "${NEW_BRANCH}"
|
||||
|
||||
# take all commits between base and feature branch
|
||||
# and apply them to the mono-repo in the appropriate path
|
||||
git -C "${LEGACYRP}" format-patch \
|
||||
--subject-prefix="" \
|
||||
--stdout \
|
||||
"${BASE_BRANCH}..${BRANCH}" \
|
||||
| git am \
|
||||
--ignore-whitespace \
|
||||
--no-scissors \
|
||||
--ignore-space-change \
|
||||
--directory="${NEW_PATH}"
|
||||
|
||||
git switch "${BASE_BRANCH}"
|
||||
done
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user