| Gennadiy Dubina | 311ea74 | 2017-04-03 20:46:16 +0300 | [diff] [blame] | 1 | #!/bin/bash |
| 2 | |
| 3 | function is_db_created() { |
| 4 | db_host=$1 |
| 5 | db_port=$2 |
| 6 | db_user=$3 |
| 7 | db_pswd=$4 |
| 8 | db_name=$5 |
| 9 | |
| 10 | RESULT=`mysqlshow -h"$db_host" -P"$db_port" -u"$db_user" -p"$db_pswd" | grep -v Wildcard | grep -o $db_name` |
| 11 | if [ "$RESULT" == "$db_name" ]; then |
| 12 | |
| 13 | RESULT=`mysqlshow -h"$db_host" -P"$db_port" -u"$db_user" -p"$db_pswd" "$db_name" | grep -v Wildcard | grep schema_version` |
| 14 | #TODO validate version |
| 15 | if [ -n "$RESULT" ]; then |
| 16 | echo " DB $db_name exists and inited" |
| 17 | return 0 |
| 18 | else |
| 19 | echo " DB $db_name exists BUT not inited" |
| 20 | return 1 |
| 21 | fi |
| 22 | fi |
| 23 | echo " DB $db_name does not exist" |
| 24 | return 1 |
| 25 | } |
| 26 | |
| 27 | echo "1/4 Apply config" |
| 28 | /opt/openmano-docker/configure.sh |
| 29 | [ $? -ne 0 ] && exit 1 |
| 30 | echo "2/4 Wait for db" |
| 31 | |
| 32 | /opt/openmano-docker/wait_db.sh |
| 33 | [ $? -ne 0 ] && exit 1 |
| 34 | |
| 35 | echo "3/4 Init database" && \ |
| 36 | is_db_created "$DB_HOST" "$DB_PORT" "$DB_USER" "$DB_PSWD" "$DB_NAME" |
| 37 | if [ $? -ne 0 ]; then |
| 38 | /opt/openmano/database_utils/init_mano_db.sh -u $DB_USER -p $DB_PSWD -h $DB_HOST -P $DB_PORT -d $DB_NAME |
| 39 | [ $? -ne 0 ] && exit 1 |
| 40 | else |
| 41 | echo " migrage database version" |
| 42 | /opt/openmano/database_utils/migrate_mano_db.sh -u $DB_USER -p $DB_PSWD -h $DB_HOST -P $DB_PORT -d $DB_NAME |
| 43 | fi |
| 44 | |
| 45 | echo "4/4 Try to start" |
| 46 | /opt/openmano/openmanod.py -c /opt/openmano/openmanod.cfg --log-file=/opt/openmano/logs/openmano.log |