Use database password from variable

There is a variable that tells what is the database (mysql)
password. However plugin.sh is using a hardcoded password.
Commits provides using DATABASE_PASSWORD variable (the same
one as devstack is using) + defines a variable for m-transform
user - MONASCA_TRANSFORM_DB_PASSWORD

Change-Id: I9fc8296ef31b22564f2cf1536e51ab3abc8c9dc9
This commit is contained in:
Tomasz Trębski 2016-08-22 08:37:41 +02:00 committed by David C Kennedy
parent 1c65ca011b
commit 698856b383
4 changed files with 29 additions and 17 deletions

View File

@ -4,6 +4,10 @@ The Monasca-transform DevStack plugin is tested only on Ubuntu 14.04 (Trusty).
A short cut to running monasca-transform in devstack is implemented with vagrant.
## Variables
* DATABASE_PASSWORD(default: *secretmysql*) - password to upload monasca-transform schema
* MONASCA_TRANSFORM_DB_PASSWORD(default: *password*) - password for m-transform user
## To run monasca-transform using the provided vagrant environment
### Using any changes made locally to monasca-transform

View File

@ -28,6 +28,3 @@ CREATE TABLE IF NOT EXISTS `pre_transform_specs` (
`pre_transform_spec` varchar(2048) NOT NULL,
PRIMARY KEY (`event_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
GRANT ALL ON monasca_transform.* TO 'm-transform'@'%' IDENTIFIED BY 'password';
GRANT ALL ON monasca_transform.* TO 'm-transform'@'localhost' IDENTIFIED BY 'password';

View File

@ -1,4 +1,4 @@
#
# (C) Copyright 2015 Hewlett Packard Enterprise Development Company LP
# Copyright 2016 FUJITSU LIMITED
#
@ -44,6 +44,9 @@ set -o xtrace
ERREXIT=$(set +o | grep errexit)
set -o errexit
# monasca-transform database password
export MONASCA_TRANSFORM_DB_PASSWORD=${MONASCA_TRANSFORM_DB_PASSWORD:-"password"}
# Determine if we are running in devstack-gate or devstack.
if [[ $DEST ]]; then
@ -116,9 +119,7 @@ function delete_monasca_transform_files {
}
function drop_monasca_transform_database {
# must login as root@localhost
sudo mysql -h "127.0.0.1" -uroot -psecretmysql < "drop database monasca_transform; drop user 'm-transform'@'%' from mysql.user; drop user 'm-transform'@'localhost' from mysql.user;" || echo "Failed to drop database 'monasca_transform' and/or user 'm-transform' from mysql database, you may wish to do this manually."
sudo mysql -u$DATABASE_USER -p$DATABASE_PASSWORD -h$MYSQL_HOST -e "drop database monasca_transform; drop user 'm-transform'@'%' from mysql.user; drop user 'm-transform'@'localhost' from mysql.user;" || echo "Failed to drop database 'monasca_transform' and/or user 'm-transform' from mysql database, you may wish to do this manually."
}
function unstack_spark {
@ -293,7 +294,6 @@ function copy_monasca_transform_files {
sudo cp -f "${MONASCA_TRANSFORM_BASE}"/monasca-transform/devstack/files/monasca-transform/service_runner.py /opt/monasca/transform/lib/.
sudo cp -f "${MONASCA_TRANSFORM_BASE}"/monasca-transform/devstack/files/monasca-transform/monasca-transform.conf /etc/.
sudo sudo sed -i "s/brokers=192\.168\.15\.6:9092/brokers=${SERVICE_HOST}:9092/g" /etc/monasca-transform.conf
sudo cp -f "${MONASCA_TRANSFORM_BASE}"/monasca-transform/devstack/files/monasca-transform/driver.py /opt/monasca/transform/lib/.
${MONASCA_TRANSFORM_BASE}/monasca-transform/scripts/create_zip.sh
sudo cp -f "${MONASCA_TRANSFORM_BASE}"/monasca-transform/scripts/monasca-transform.zip /opt/monasca/transform/lib/.
@ -304,6 +304,10 @@ function copy_monasca_transform_files {
sudo chown -R monasca-transform:monasca-transform /opt/monasca/transform
sudo touch /var/log/monasca/transform/monasca-transform.log
sudo chown monasca-transform:monasca-transform /var/log/monasca/transform/monasca-transform.log
# set passwords and other variables in configuration files
sudo sudo sed -i "s/brokers=192\.168\.15\.6:9092/brokers=${SERVICE_HOST}:9092/g" /etc/monasca-transform.conf
sudo sudo sed -i "s/password\s=\spassword/password = ${MONASCA_TRANSFORM_DB_PASSWORD}/g" /etc/monasca-transform.conf
}
function create_monasca_transform_venv {
@ -319,11 +323,15 @@ function create_monasca_transform_venv {
function create_and_populate_monasca_transform_database {
# must login as root@localhost
sudo mysql -h "127.0.0.1" -uroot -psecretmysql < /opt/monasca/transform/lib/monasca-transform_mysql.sql || echo "Did the schema change? This process will fail on schema changes."
sudo mysql -u$DATABASE_USER -p$DATABASE_PASSWORD -h$MYSQL_HOST < /opt/monasca/transform/lib/monasca-transform_mysql.sql || echo "Did the schema change? This process will fail on schema changes."
sudo mysql -h "127.0.0.1" -um-transform -ppassword < /opt/monasca/transform/lib/pre_transform_specs.sql
sudo mysql -h "127.0.0.1" -um-transform -ppassword < /opt/monasca/transform/lib/transform_specs.sql
# set grants for m-transform user (needs to be done from localhost)
sudo mysql -u$DATABASE_USER -p$DATABASE_PASSWORD -h$MYSQL_HOST -e "GRANT ALL ON monasca_transform.* TO 'm-transform'@'%' IDENTIFIED BY '${MONASCA_TRANSFORM_DB_PASSWORD}';"
sudo mysql -u$DATABASE_USER -p$DATABASE_PASSWORD -h$MYSQL_HOST -e "GRANT ALL ON monasca_transform.* TO 'm-transform'@'localhost' IDENTIFIED BY '${MONASCA_TRANSFORM_DB_PASSWORD}';"
# copy rest of files after grants are ready
sudo mysql -um-transform -p$MONASCA_TRANSFORM_DB_PASSWORD -h$MYSQL_HOST < /opt/monasca/transform/lib/pre_transform_specs.sql
sudo mysql -um-transform -p$MONASCA_TRANSFORM_DB_PASSWORD -h$MYSQL_HOST < /opt/monasca/transform/lib/transform_specs.sql
}
function install_spark {

View File

@ -30,12 +30,15 @@ MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-influxdb}
# This line will enable all of Monasca.
enable_plugin monasca-api /home/vagrant/monasca-api
# using the above, patched monasca-api we can disable some unnecessary services
# the following may be disabled to leave monasca transform still functional
#disable_service monasca-persister
disable_service monasca-thresh
disable_service monasca-notification
disable_service horizon
disable_service tempest
disable_service cinder
#disable_service monasca-thresh
#disable_service monasca-notification
#disable_service horizon
#disable_service tempest
#disable_service cinder
enable_plugin monasca-transform /home/vagrant/monasca-transform
# the following must be disabled as the test does not work at this point
# see Bug #1636508
disable_service monasca-smoke-test
# END DEVSTACK LOCAL.CONF CONTENTS