summaryrefslogtreecommitdiff
path: root/tools/migrate_from_tempest.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/migrate_from_tempest.sh')
-rwxr-xr-xtools/migrate_from_tempest.sh117
1 files changed, 0 insertions, 117 deletions
diff --git a/tools/migrate_from_tempest.sh b/tools/migrate_from_tempest.sh
deleted file mode 100755
index c31614f..0000000
--- a/tools/migrate_from_tempest.sh
+++ /dev/null
@@ -1,117 +0,0 @@
-#!/bin/bash
-#
-# Use this script to move over a set of files from tempest master into
-# tempest-lib with the commit history for the files in the commit message.
-# This should only be done for files that haven't been migrated over already.
-# To use:
-# 1. Create a new branch in the tempest-lib repo so not to destroy your current
-# working branch
-# 2. Run the script from the repo dir and specify the file paths relative to
-# the root tempest dir(only code and unit tests):
-#
-# tools/migrate_from_tempest.sh tempest/file.py tempest/sub_dir
-
-
-function usage {
- echo "Usage: $0 [OPTION] file1 file2"
- echo "Migrate files from tempest"
- echo ""
- echo "-o, --output_dir Specify a directory relative to the repo root to move the migrated files into."
- echo "-u, --tempest_git_url Specify the repo to clone tempest from for the migration."
-}
-
-set -e
-
-output_dir=""
-service_client=0
-
-while [ $# -gt 0 ]; do
- case "$1" in
- -h|--help) usage; exit;;
- -o|--output_dir) output_dir="$2"; shift;;
- -u|--tempest_git_url) tempest_git_url="$2"; shift;;
- -s|--service_client) service_client=1;;
- *) files="$files $1";;
- esac
- shift
-done
-
-TEMPEST_GIT_URL=${tempest_git_url:-git://git.openstack.org/openstack/tempest}
-
-tmpdir=$(mktemp -d -t tempest-migrate.XXXX)
-tempest_lib_dir=$(dirname "$0")
-
-function count_commits {
- echo
- echo "Have $(git log --oneline | wc -l) commits"
-}
-
-# Clone tempest and cd into it
-git clone $TEMPEST_GIT_URL $tmpdir
-cd $tmpdir
-
-for file in $files; do
- # Get the latest change-id for each file
- change_id=`git log -n1 --grep "Change-Id: " -- $file | grep "Change-Id: " | awk '{print $2}'`
- filename=`basename $file`
- CHANGE_LIST=`echo -e "$CHANGE_LIST\n * $filename: $change_id"`
-done
-
-# Move files and commit
-cd -
-file_list=''
-for file in $files; do
- filename=`basename $file`
- dirname=`dirname $file`
- if [ -n "$output_dir" ]; then
- dirname="$output_dir"
- else
- dirname=`echo $dirname | sed s@tempest\/@tempest_lib/\@`
- if [ $service_client -eq 1 ]; then
- # Remove /json path because tempest-lib supports JSON only without XML
- dirname=`echo $dirname | sed s@\/json@@`
- fi
- fi
- dest_file="$dirname/$filename"
- cp -r "$tmpdir/$file" "$dest_file"
-
- if [ $service_client -eq 1 ]; then
- # service_client module is not necessary in tempest-lib because rest_client can be used instead
- sed -i='' s/"from tempest.common import service_client"/"from tempest_lib.common import rest_client"/ $dest_file
- sed -i='' s/"service_client.ServiceClient"/"rest_client.RestClient"/ $dest_file
- sed -i='' s/"service_client.ResponseBody"/"rest_client.ResponseBody"/ $dest_file
- sed -i='' s/"from tempest\."/"from tempest_lib\."/ $dest_file
-
- # Replace mocked path in unit tests
- sed -i='' s/"tempest.common.rest_client"/"tempest_lib.common.rest_client"/ $dest_file
-
- # Remove ".json" from import line
- sed -i='' -e "s/^\(from tempest_lib\.services\..*\)\.json\(.*\)/\1\2/" $dest_file
- fi
-
- git add "$dest_file"
- if [[ -z "$file_list" ]]; then
- file_list="$filename"
- else
- tmp_file_list="$file_list, $filename"
- char_size=`echo $tmp_file_list | wc -c`
- if [ "$char_size" -lt 27 ]; then
- file_list="$file_list, $filename"
- fi
- fi
-done
-# Cleanup temporary tempest repo
-rm -rf $tmpdir
-
-# Generate a migration commit
-commit_message="Migrated $file_list from tempest"
-pre_list=$"This migrates the above files from tempest.\nThis includes tempest commits:"
-pre_list=`echo -e $pre_list`
-post_list=$"to see the commit history for these files refer to the above Change-Ids \nin the tempest repository."
-post_list=`echo -e $post_list`
-if [ $service_client -eq 1 ]; then
- bp_msg="Partially implements blueprint migrate-service-clients-to-tempest-lib"
-else
- bp_msg=""
-fi
-git commit -m "$commit_message" -m "$pre_list" -m "$CHANGE_LIST" -m "$post_list" -m "$bp_msg"