
* rename hpgit to git-upstream * rename import-upstream commadn to import * change all occurrences of hpgit and import-upstream in code, comments and tests * code cleanup (remove some typos, improve PEP8 compliance) * change license from "HP propietary" to "Apache License v2.0" Change-Id: Ia4f00d662d79ac9725316027a65f4d23ebbd0f02 JIRA:CICD-1319 JIRA:CICD-1318
62 lines
1.7 KiB
Plaintext
62 lines
1.7 KiB
Plaintext
# Utility functions/macros
|
|
|
|
if [ -z "$BASE_TEST_DIR" ]; then
|
|
log ERROR "Please define BASE_TEST_DIR variable"
|
|
exit 1
|
|
fi
|
|
|
|
TEST_NAME=$(basename $0 | cut -d_ -f2- | cut -d'.' -f 1)
|
|
TEST_DIR="$BASE_TEST_DIR/test-dir_$TEST_NAME"
|
|
|
|
function _clean_up() {
|
|
if [ -z "$LEAVE_DIR" ]; then
|
|
log DEBUG "Removing test directory"
|
|
rm -rf $TEST_DIR
|
|
fi
|
|
}
|
|
|
|
VERBOSITY=${VERBOSITY:-INFO}
|
|
set_verbority $VERBOSITY
|
|
|
|
mkdir -p "$TEST_DIR"
|
|
# Define an handler for clean_up
|
|
trap "_clean_up; exit 0" EXIT
|
|
|
|
function prepare_for_git_upstream() {
|
|
local TEST_DIR="$1"
|
|
local REPO_NAME="$2"
|
|
local UPSTREAM_REPO="$3"
|
|
local TEST_BASE_REF="$4"
|
|
local TEST_NAME="$5"
|
|
|
|
log DEBUG "Creating bare repo '$REPO_NAME.bare'"
|
|
rm -rf $TEST_DIR/$REPO_NAME.bare >/dev/null 2>&1
|
|
mkdir $TEST_DIR/$REPO_NAME.bare
|
|
pushd $TEST_DIR/$REPO_NAME.bare >/dev/null
|
|
git init --bare --quiet || return 1
|
|
popd >/dev/null
|
|
|
|
log DEBUG "Cloning repo $REPO_NAME"
|
|
rm -rf $TEST_DIR/$REPO_NAME >/dev/null 2>&1
|
|
mkdir $TEST_DIR/$REPO_NAME
|
|
|
|
pushd $TEST_DIR/$REPO_NAME >/dev/null
|
|
git init --quiet || return 1
|
|
git config push.default simple --quiet || return 1
|
|
git remote add origin $TEST_DIR/$REPO_NAME.bare || return 1
|
|
|
|
log DEBUG "Fetching upstream testing version"
|
|
git remote add upstream $UPSTREAM_REPO || return 1
|
|
git fetch --all --quiet >/dev/null || return 1
|
|
git for-each-ref refs/remotes/upstream --format "%(refname:short)" | \
|
|
sed -e 's:\(upstream/\(.*\)\)$:\1\:refs/heads/upstream/\2:' | \
|
|
xargs git push --quiet --tags origin || return 1
|
|
|
|
log DEBUG "Creating a new branch from version $TEST_BASE_REF"
|
|
git checkout -b import/$TEST_NAME $TEST_BASE_REF --quiet || return 1
|
|
|
|
git checkout -b master --quiet || return 1
|
|
popd >/dev/null
|
|
}
|
|
|