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

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

sed -i -e 's!connection = sqlite.*!connection = mysql+pymysql://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
