Merge branch 'master' into nixon

This commit is contained in:
Jake Dahn 2011-09-15 21:46:59 -07:00
commit feb6582019

View file

@ -2,6 +2,11 @@
# **stack.sh** is rackspace cloudbuilder's opinionated openstack dev installation. # **stack.sh** is rackspace cloudbuilder's opinionated openstack dev installation.
# To keep this script simple we assume you are running on an **Ubuntu 11.04 i
# Natty** machine. It should work in a VM or physical server. Additionally we
# put the list of *apt* and *pip* dependencies and other configuration files in
# this repo. So start by grabbing this script and the dependencies.
# Settings/Options # Settings/Options
# ================ # ================
@ -23,6 +28,9 @@ set -o errexit
set -o xtrace set -o xtrace
# Warn users who aren't on natty # Warn users who aren't on natty
## TODO: alter flow to exit unless the user sets environment FORCE=true
## TODO: warn user if apts, pips and other files don't exist that they
## need more than just this script
if ! grep -q natty /etc/lsb-release; then if ! grep -q natty /etc/lsb-release; then
echo "WARNING: this script has only been tested on natty" echo "WARNING: this script has only been tested on natty"
fi fi
@ -144,15 +152,29 @@ cp $DIR/files/screenrc ~/.screenrc
# TODO: update current user to allow sudo for all commands in files/sudo/* # TODO: update current user to allow sudo for all commands in files/sudo/*
# Mysql
# ---------
#
if [[ "$ENABLED_SERVICES" =~ "mysql" ]]; then
# Update the DB to give user $MYSQL_USER@% full control of the all databases:
sudo mysql -uroot -p$MYSQL_PASS -e "GRANT ALL PRIVILEGES ON *.* TO '$MYSQL_USER'@'%' identified by '$MYSQL_PASS';"
# Edit /etc/mysql/my.cnf to change bind-address from localhost (127.0.0.1) to any (0.0.0.0) and restart the mysql service:
sudo sed -i 's/127.0.0.1/0.0.0.0/g' /etc/mysql/my.cnf
sudo service mysql restart
fi
# Dashboard # Dashboard
# --------- # ---------
# #
# Setup the django application to serve via apache/wsgi # Setup the django application to serve via apache/wsgi
if [[ "$ENABLED_SERVICES" =~ "dash" ]]; then
# Dash currently imports quantum even if you aren't using it. Instead # Dash currently imports quantum even if you aren't using it. Instead
# of installing quantum we can create a simple module that will pass the # of installing quantum we can create a simple module that will pass the
# initial imports # initial imports
if [[ "$ENABLED_SERVICES" =~ "dash" ]]; then
sudo mkdir -p $DASH_DIR/openstack-dashboard/quantum || true sudo mkdir -p $DASH_DIR/openstack-dashboard/quantum || true
sudo touch $DASH_DIR/openstack-dashboard/quantum/__init__.py sudo touch $DASH_DIR/openstack-dashboard/quantum/__init__.py
sudo touch $DASH_DIR/openstack-dashboard/quantum/client.py sudo touch $DASH_DIR/openstack-dashboard/quantum/client.py
@ -176,22 +198,10 @@ if [[ "$ENABLED_SERVICES" =~ "dash" ]]; then
fi fi
# Mysql
# ---------
#
if [[ "$ENABLED_SERVICES" =~ "mysql" ]]; then
# Update the DB to give user $MYSQL_USER@% full control of the all databases:
sudo mysql -uroot -p$MYSQL_PASS -e "GRANT ALL PRIVILEGES ON *.* TO '$MYSQL_USER'@'%' identified by '$MYSQL_PASS';"
# Edit /etc/mysql/my.cnf to change bind-address from localhost (127.0.0.1) to any (0.0.0.0) and restart the mysql service:
sudo sed -i 's/127.0.0.1/0.0.0.0/g' /etc/mysql/my.cnf
sudo service mysql restart
fi
# Munin # Munin
# ----- # -----
# Munin is accessable via apache and was configured in the dashboard section.
if [[ "$ENABLED_SERVICES" =~ "munin" ]]; then if [[ "$ENABLED_SERVICES" =~ "munin" ]]; then
# allow connections from other hosts # allow connections from other hosts
@ -385,3 +395,18 @@ if [[ "$ENABLED_SERVICES" =~ "g-reg" ]]; then
glance add name="tty-ramdisk" is_public=true container_format=ari disk_format=ari < ari-tty/image glance add name="tty-ramdisk" is_public=true container_format=ari disk_format=ari < ari-tty/image
glance add name="tty" is_public=true container_format=ami disk_format=ami kernel_id=1 ramdisk_id=2 < ami-tty/image glance add name="tty" is_public=true container_format=ami disk_format=ami kernel_id=1 ramdisk_id=2 < ami-tty/image
fi fi
# Using the cloud
# ===============
# If you installed the dashboard on this server, then you should be able
# to access the site using your browser.
if [[ "$ENABLED_SERVICES" =~ "dash" ]]; then
echo "dashboard is now available at http://$HOST_IP/"
fi
# If keystone is present, you can point nova cli to this server
if [[ "$ENABLED_SERVICES" =~ "key" ]]; then
echo "keystone is serving at http://$HOST_IP:5000/v2.0/"
echo "examples on using novaclient command line is in exercise.sh"
fi