Merge pull request #192 from cloudbuilders/jenkins
Jenkins
diff --git a/files/apts/nova b/files/apts/nova
index 9eefed7..77622a8 100644
--- a/files/apts/nova
+++ b/files/apts/nova
@@ -39,4 +39,5 @@
# Stuff for diablo volumes
iscsitarget
+iscsitarget-dkms
lvm2
diff --git a/files/swift/proxy-server.conf b/files/swift/proxy-server.conf
index fe7e39b..2db6d32 100644
--- a/files/swift/proxy-server.conf
+++ b/files/swift/proxy-server.conf
@@ -16,6 +16,7 @@
use = egg:swiftkeystone2#keystone2
keystone_admin_token = %SERVICE_TOKEN%
keystone_url = http://localhost:35357/v2.0
+keystone_admin_group = Member
[filter:tempauth]
use = egg:swift#tempauth
diff --git a/stack.sh b/stack.sh
index 78851b9..4461e40 100755
--- a/stack.sh
+++ b/stack.sh
@@ -159,6 +159,9 @@
# Specify which services to launch. These generally correspond to screen tabs
ENABLED_SERVICES=${ENABLED_SERVICES:-g-api,g-reg,key,n-api,n-cpu,n-net,n-sch,n-vnc,horizon,mysql,rabbit}
+# Name of the lvm volume group to use/create for iscsi volumes
+VOLUME_GROUP=${VOLUME_GROUP:-nova-volumes}
+
# Nova hypervisor configuration. We default to libvirt whth **kvm** but will
# drop back to **qemu** if we are unable to load the kvm module. Stack.sh can
# also install an **LXC** based system.
@@ -368,7 +371,7 @@
apt_get install `cat $FILES/apts/* | cut -d\# -f1 | grep -Ev "mysql-server|rabbitmq-server|memcached"`
# install python requirements
-sudo PIP_DOWNLOAD_CACHE=/var/cache/pip pip install `cat $FILES/pips/*`
+sudo PIP_DOWNLOAD_CACHE=/var/cache/pip pip install --use-mirrors `cat $FILES/pips/*`
# git clone only if directory doesn't exist already. Since ``DEST`` might not
# be owned by the installation user, we create the directory and change the
@@ -394,7 +397,7 @@
# remove the existing ignored files (like pyc) as they cause breakage
# (due to the py files having older timestamps than our pyc, so python
# thinks the pyc files are correct using them)
- sudo git clean -f -d
+ find $GIT_DEST -name '*.pyc' -delete
git checkout -f origin/$GIT_BRANCH
# a local branch might not exist
git branch -D $GIT_BRANCH || true
@@ -691,7 +694,7 @@
# swift-init has a bug using /etc/swift until bug #885595 is fixed
# we have to create a link
- sudo ln -s ${SWIFT_CONFIG_LOCATION} /etc/swift
+ sudo ln -sf ${SWIFT_CONFIG_LOCATION} /etc/swift
# Swift use rsync to syncronize between all the different
# partitions (which make more sense when you have a multi-node
@@ -704,6 +707,11 @@
# configured keystone it will checkout the directory.
if [[ "$ENABLED_SERVICES" =~ "key" ]]; then
swift_auth_server=keystone
+
+ # We install the memcache server as this is will be used by the
+ # middleware to cache the tokens auths for a long this is needed.
+ apt_get install memcached
+
# We need a special version of bin/swift which understand the
# OpenStack api 2.0, we download it until this is getting
# integrated in swift.
@@ -778,12 +786,12 @@
#
# By default, the backing file is 2G in size, and is stored in /opt/stack.
#
- if ! sudo vgdisplay | grep -q nova-volumes; then
+ if ! sudo vgdisplay | grep -q $VOLUME_GROUP; then
VOLUME_BACKING_FILE=${VOLUME_BACKING_FILE:-$DEST/nova-volumes-backing-file}
VOLUME_BACKING_FILE_SIZE=${VOLUME_BACKING_FILE_SIZE:-2052M}
truncate -s $VOLUME_BACKING_FILE_SIZE $VOLUME_BACKING_FILE
DEV=`sudo losetup -f --show $VOLUME_BACKING_FILE`
- sudo vgcreate nova-volumes $DEV
+ sudo vgcreate $VOLUME_GROUP $DEV
fi
# Configure iscsitarget
@@ -812,6 +820,9 @@
else
add_nova_flag "--network_manager=nova.network.manager.$NET_MAN"
fi
+if [[ "$ENABLED_SERVICES" =~ "n-vol" ]]; then
+ add_nova_flag "--volume_group=$VOLUME_GROUP"
+fi
add_nova_flag "--my_ip=$HOST_IP"
add_nova_flag "--public_interface=$PUBLIC_INTERFACE"
add_nova_flag "--vlan_interface=$VLAN_INTERFACE"
diff --git a/stackrc b/stackrc
index b541711..a50835a 100644
--- a/stackrc
+++ b/stackrc
@@ -1,6 +1,6 @@
# compute service
-NOVA_REPO=https://github.com/cloudbuilders/nova.git
-NOVA_BRANCH=diablo
+NOVA_REPO=https://github.com/openstack/nova.git
+NOVA_BRANCH=stable/diablo
# storage service
SWIFT_REPO=https://github.com/openstack/swift.git
@@ -11,12 +11,12 @@
SWIFT_KEYSTONE_BRANCH=master
# image catalog service
-GLANCE_REPO=https://github.com/cloudbuilders/glance.git
-GLANCE_BRANCH=diablo
+GLANCE_REPO=https://github.com/openstack/glance.git
+GLANCE_BRANCH=stable/diablo
# unified auth system (manages accounts/tokens)
-KEYSTONE_REPO=https://github.com/cloudbuilders/keystone.git
-KEYSTONE_BRANCH=diablo
+KEYSTONE_REPO=https://github.com/openstack/keystone.git
+KEYSTONE_BRANCH=stable/diablo
# a websockets/html5 or flash powered VNC console for vm instances
NOVNC_REPO=https://github.com/cloudbuilders/noVNC.git
diff --git a/tools/build_pxe_boot.sh b/tools/build_pxe_env.sh
similarity index 93%
rename from tools/build_pxe_boot.sh
rename to tools/build_pxe_env.sh
index ab64098..1ab51f8 100755
--- a/tools/build_pxe_boot.sh
+++ b/tools/build_pxe_env.sh
@@ -1,11 +1,14 @@
#!/bin/bash -e
-# build_pxe_boot.sh - Create a PXE boot environment
+# build_pxe_env.sh - Create a PXE boot environment
#
-# build_pxe_boot.sh destdir
+# build_pxe_env.sh destdir
#
-# Assumes syslinux is installed
+# Requires Ubuntu Oneiric
+#
# Only needs to run as root if the destdir permissions require it
+dpkg -l syslinux || apt-get install -y syslinux
+
DEST_DIR=${1:-/tmp}/tftpboot
PXEDIR=${PXEDIR:-/var/cache/devstack/pxe}
OPWD=`pwd`
diff --git a/tools/build_uec.sh b/tools/build_uec.sh
index 3eafe5e..39c0d17 100755
--- a/tools/build_uec.sh
+++ b/tools/build_uec.sh
@@ -33,8 +33,8 @@
fi
# Install deps if needed
-DEPS="kvm libvirt-bin kpartx cloud-utils"
-dpkg -l $DEPS || apt-get install -y --force-yes $DEPS
+DEPS="kvm libvirt-bin kpartx cloud-utils curl"
+apt-get install -y --force-yes $DEPS
# Where to store files and instances
WORK_DIR=${WORK_DIR:-/opt/kvmstack}