Charm: precise/kusabax
Revision: 18
Hook: db-relation-changed
#!/bin/sh
set -eu # -x for verbose logging to juju debug-log
# if install.php is gone, let's assume we finished this relation
if [ ! -e /var/www/install.php ] ; then
exit 0
fi
hostname=`unit-get public-address`
database=`relation-get database`
if [ -z "$database" ] ; then
exit 0 # wait for future handshake from database service unit
fi
apt-get -y install php5-mysql curl
cp /var/www/OTHER/install-mysql.php /var/www/.
cp /var/www/OTHER/kusaba_freshinstall.mysql.sql /var/www/.
sed -i -e "s/KU_DBTYPE'\] =.*/KU_DBTYPE'\] = 'mysql';/" /var/www/config.php
# TODO: remove after testing
sed -i -e "s/KU_DBDATABASE'\] =.*/KU_DBDATABASE'\] = '$database';/" /var/www/config.php
user=`relation-get user`
sed -i -e "s/KU_DBUSERNAME'\] =.*/KU_DBUSERNAME'\] = '$user';/" /var/www/config.php
password=`relation-get password`
sed -i -e "s/KU_DBPASSWORD'\] =.*/KU_DBPASSWORD'\] = '$password';/" /var/www/config.php
host=`relation-get private-address`
sed -i -e "s/KU_DBHOST'\] =.*/KU_DBHOST'\] = '$host';/" /var/www/config.php
#TODO: pseudo random seed
echo "$password" > /tmp/ns
date +%N >> /tmp/ns
randomnum=`md5sum /tmp/ns | cut -c1-32`
sed -i -e "s/KU_RANDOMSEED'] = .*/KU_RANDOMSEED'] = '$randomnum';/" /var/www/config.php
rm -f /tmp/ns
service apache2 restart
curl --data "confirm=on" http://$hostname/install-mysql.php >/dev/null 2>&1
curl http://$hostname/install.php >/dev/null 2>&1
chown www-data -R /var/www/
chmod 777 -R /var/www
rm -f /var/www/install.php /var/www/install-mysql.php /var/www/kusaba_freshinstall.mysql.sql /var/www/index.html
juju-log "Opening port"
open-port 80