From 8d3d6b86929b4a7caa38918c5a2b6187ee63d2aa Mon Sep 17 00:00:00 2001 From: edwardro22 Date: Sun, 17 Sep 2017 02:13:58 +0000 Subject: [PATCH] Fixed the automatic migration script --- data/storage/migrator/rc7_to_rc8.sh | 70 +++++++++++++++++++++------ data/storage/migrator/set_version.sql | 1 + migrator/costdetails.go | 2 +- 3 files changed, 57 insertions(+), 16 deletions(-) create mode 100644 data/storage/migrator/set_version.sql diff --git a/data/storage/migrator/rc7_to_rc8.sh b/data/storage/migrator/rc7_to_rc8.sh index 50dce09a9..ea4c1389d 100755 --- a/data/storage/migrator/rc7_to_rc8.sh +++ b/data/storage/migrator/rc7_to_rc8.sh @@ -1,29 +1,28 @@ #! /usr/bin/env sh - echo "" echo "rc7_to_rc8.sh" #settings #DBs Config datadb="redis" -stordb="postgres" +stordb="mysql" echo "dataDB:"$datadb " storDB:"$stordb echo "" #dataDBs case $datadb in "redis") #Redis Config -export cgr_from_host='192.168.100.40' +export cgr_from_host='127.0.0.1' export cgr_from_port=6379 export cgr_from_db=11 export cgr_from_pass='' -export cgr_to_host='192.168.100.40' +export cgr_to_host='127.0.0.1' export cgr_to_port=6379 export cgr_to_db=10 export cgr_to_pass='' # Not used ;; "mongo") -#Mongo Config +#Mongo Config //NOT SUPPORTED IN RC7 export cgr_from_host='127.0.0.1' export cgr_from_port='27017' export cgr_from_db='11' @@ -50,13 +49,15 @@ case $stordb in user="cgrates" host="127.0.0.1" db="cgrates" +port="3306" ;; "postgres") #postgres Config user="cgrates" -host="192.168.100.40" +host="127.0.0.1" db="cgrates" +port="5432" ;; esac @@ -66,15 +67,17 @@ DIR="$(dirname "$(readlink -f "$0")")" case $datadb in "redis") -echo "executing dbsmerge_redis.py" +echo 'Calling script: dbsmerge_redis.py' ./dbsmerge_redis.py -echo "done!" +echo 'done!' +echo ;; "mongo") -echo "executing dbsmerge_mongo.py" +echo 'Calling script: dbsmerge_mongo.py' ./dbsmerge_mongo.py -echo "done!" +echo 'done!' +echo ;; esac @@ -82,22 +85,59 @@ esac case $stordb in "mysql") +echo "Calling script: mysql_tables_update.sql" mysql -u$user -p$PGPASSWORD -h $host < "$DIR"/mysql_tables_update.sql up=$? +echo "done!" +echo +echo "Calling script: mysql_cdr_migration.sql" mysql -u$user -p$PGPASSWORD -h $host -D cgrates < "$DIR"/mysql_cdr_migration.sql mig=$? +echo "done!" +echo +echo 'Executing command cgr-migrator -migrate="*set_versions"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*set_versions" +echo +echo 'Setting version for CostDetails' +mysql -u$user -p$PGPASSWORD -h $host -D cgrates < "$DIR"/set_version.sql ;; "postgres") +echo "Calling script: pg_tables_update.sql" psql -U $user -h $host -d cgrates -f "$DIR"/pg_tables_update.sql -echo "not mysql" up=$? +echo "done!" +echo +echo "Calling script: pg_cdr_migration.sql" psql -U $user -h $host -d cgrates -f "$DIR"/pg_cdr_migration.sql mig=$? +echo "done!" +echo +echo 'Executing command cgr-migrator -migrate="*set_versions"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*set_versions" +echo +echo 'Setting version for CostDetails' + psql -U $user -h $host -d cgrates -f "$DIR"/set_version.sql ;; esac -# if [ $up == 0 ] && [ $mig == 0 ]; then -# echo -e "\n\t+++ The script ran successfully ! +++\n" -# exit 0 -# fi +echo 'Executing command cgr-migrator -migrate="*cost_details"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*cost_details" + +echo 'Executing command cgr-migrator -migrate="*accounts"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*accounts" + +echo 'Executing command cgr-migrator -migrate="*actions"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*actions" + +echo 'Executing command cgr-migrator -migrate="*action_triggers"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*action_triggers" + +echo 'Executing command cgr-migrator -migrate="*action_plans"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*action_plans" + +echo 'Executing command cgr-migrator -migrate="*shared_groups"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*shared_groups" + +echo 'Executing command cgr-migrator -migrate="*set_versions"' +cgr-migrator -datadb_host=$cgr_from_host -datadb_name=$cgr_to_db -datadb_passwd=$cgr_from_pass -datadb_port=$cgr_from_port -datadb_type=$datadb -stordb_host=$host -stordb_name=$user -stordb_passwd=$PGPASSWORD -stordb_port=$port -stordb_type=$stordb -stordb_user=$user -migrate="*set_versions" diff --git a/data/storage/migrator/set_version.sql b/data/storage/migrator/set_version.sql new file mode 100644 index 000000000..7095138bf --- /dev/null +++ b/data/storage/migrator/set_version.sql @@ -0,0 +1 @@ +UPDATE versions SET version=1 WHERE item='CostDetails'; \ No newline at end of file diff --git a/migrator/costdetails.go b/migrator/costdetails.go index 1242c0808..aad35e41c 100644 --- a/migrator/costdetails.go +++ b/migrator/costdetails.go @@ -57,7 +57,7 @@ func (m *Migrator) migrateCostDetails() (err error) { case utils.MYSQL: storSQL = m.storDB.(*engine.SQLStorage).Db case utils.POSTGRES: - storSQL = m.storDB.(*engine.PostgresStorage).Db + storSQL = m.storDB.(*engine.SQLStorage).Db default: return utils.NewCGRError(utils.Migrator, utils.MandatoryIEMissingCaps,