#!/bin/bash
#-----------------------
# Testing neutron-server
#-----------------------
set -e

mysql -u root << EOF
CREATE DATABASE neutron;
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' \
  IDENTIFIED BY 'changeme';
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' \
  IDENTIFIED BY 'changeme';
EOF

sed -i -e 's!connection = sqlite.*!connection = mysql://neutron:changeme@localhost/neutron!g' /etc/neutron/neutron.conf
neutron-db-manage upgrade head
service neutron-server restart

DAEMONS=('neutron-server')
for daemon in "${DAEMONS[@]}"; do
    TIMEOUT=50
    while [ "$TIMEOUT" -gt 0 ]; do
        if service $daemon status > /dev/null; then
            echo "OK"
            break
        fi
        TIMEOUT=$((TIMEOUT - 1))
        sleep 0.5
    done

    if [ "$TIMEOUT" -le 0 ]; then
        echo "ERROR: ${daemon} IS NOT RUNNING"
        cat /var/log/neutron/neutron-server.log
        exit 1
    fi
done
