Compare commits

...

13 Commits

Author SHA1 Message Date
Clark Boylan 1bc4e97501 Update OpenVZ driver image
11.10 simply does not exist, so this simply does not work. However,
devstack-gate tries to pre-cache all images referenced, so even
though we're not doing anything with this, it's breaking devstack-gate.

Change-Id: I64b03ed387f5205a885427498e8cf8c2a5b32b91
2013-08-01 10:36:35 -07:00
Jeremy Stanley 6c753fc19a Rename Quantum to Neutron.
* stack.sh: The slaves where this runs in CI cache repositories into
directories named neutron and python-neutronclient now.

Change-Id: Iffc79a45d7ca61a7d53066135e533c6e8ca8e6a2
2013-07-11 17:24:59 +00:00
James E. Blair d68d6d1ee6 Rename quantum repos to neutron
Only the repos are renamed.  This will coincide with the repo rename
operation on July 6.

See https://wiki.openstack.org/wiki/Network/neutron-renaming

Change-Id: I99fe1f80ffc7a54b958b709495b90f8d94d41376
2013-07-05 11:53:43 -07:00
Dean Troyer 8b2a15c826 Fix SWIFT_DATA_DIR to follow DATA_DIR
Fixes bug 1162303

Change-Id: I82e45ba7efccd90f936e02872ff2a90524891c32
2013-04-29 15:35:04 -05:00
Dean Troyer 5ffac6b135 Backport PRIVATE_NETWORK_NAME and PUBLIC_NETWORK_NAME
Backports portions of https://review.openstack.org/14798 and
https://review.openstack.org/25471 to set PRIVATE_NETWORK_NAME
PUBLIC_NETWORK_NAME in stackrc/localrc

Change-Id: I3478143847021c53790683eead118383184bb427
2013-04-10 11:03:32 -05:00
Dean Troyer e5efa31234 Install clients first
Install clients first to prevent them from being pulled in from Pypi

Change-Id: Ic6d39dd532ecc3400da510551156d7d036d0b83d
2013-04-03 09:20:18 -05:00
Adalberto Medeiros 1d62181fda Ensure /sbin and /usr/sbin is on the PATH to run sudo commands
Test the user env variable PATH to check those directories are listed.
If not, add them to PATH

Bug 1160870

Change-Id: I426f3e224a44d1d37e508fb3e17dd19c5e72dd5d
2013-03-28 15:04:53 -03:00
Adam Gandelman 148bd362d4 Properly wait until volumes are gone in volumes.sh
A logic error in volume exercise's wait for volume deletion
causes the test to do the opopsite, and continue on even tho
the volume is in in the 'deleting' state.  If using a volume
backend that can quickly delete volumes (ceph), and the volume
is gone before entering the wait, the loop will spin, timeout
and fail the test.

Change-Id: I8e3d2aaa04e6a165e0dee32bedac97d35e13d5eb
(cherry picked from commit 756c842a77)
2013-01-18 10:57:15 -08:00
Clark Boylan fd3bb1dad4 Use apt git package instead of git-core.
The git-core package is deprecated in favor of the git package. Use the
git package instead.

Change-Id: Ib136e34c7a0d4f87b02e32996420b3f507ca0bf4
2013-01-08 13:24:10 -08:00
Aaron Rosen f758f4cc3a nova-manage network commands only when n-net enabled
This patch checks if n-net is enabled rather than any nova service
before creating networks through nova. Fixes bug 1073313

Change-Id: I8810737ddbb26a5e281060f5395cfad5d186b6d3
2012-12-07 10:49:04 -08:00
Filipe Manco 71cd7c791a noVNC master no longer stable/folsom compatible
Change-Id: I06ac432ffd6ec82fa1c6a994ebdadc375c0f8f1e
Fixes: bug #1083189
2012-11-26 15:26:17 +00:00
James E. Blair 47119a0ff0 Change mysql -> mysql-server in quantum.
There is no package called mysql in precise.

Change-Id: If047cb8d03f51c2f56e5da43573af596a8aca367
2012-10-12 15:13:49 -07:00
Dean Troyer 628fe9dfdb Select stable/folsom branches
Add comemnts for the clients pointing to either a release
near Folsom or a stable commit that is known to pass the exercises.

Change-Id: I67d8057c246ab26dcb3c913ac876ff9ed0622088
2012-10-05 11:17:28 -05:00
11 changed files with 79 additions and 71 deletions
+1 -1
View File
@@ -44,7 +44,7 @@ DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ami}
DEFAULT_INSTANCE_TYPE=${DEFAULT_INSTANCE_TYPE:-m1.tiny}
# Default floating IP pool name
DEFAULT_FLOATING_POOL=${DEFAULT_FLOATING_POOL:-nova}
DEFAULT_FLOATING_POOL=${DEFAULT_FLOATING_POOL:-$PUBLIC_NETWORK_NAME}
# Default user
DEFAULT_INSTANCE_USER=${DEFAULT_INSTANCE_USER:-cirros}
+2 -2
View File
@@ -44,7 +44,7 @@ DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ami}
SECGROUP=${SECGROUP:-test_secgroup}
# Default floating IP pool name
DEFAULT_FLOATING_POOL=${DEFAULT_FLOATING_POOL:-nova}
DEFAULT_FLOATING_POOL=${DEFAULT_FLOATING_POOL:-$PUBLIC_NETWORK_NAME}
# Additional floating IP pool and range
TEST_FLOATING_POOL=${TEST_FLOATING_POOL:-test}
@@ -118,7 +118,7 @@ if ! timeout $ACTIVE_TIMEOUT sh -c "while ! nova show $VM_UUID | grep status | g
fi
# get the IP of the server
IP=`nova show $VM_UUID | grep "private network" | get_field 2`
IP=`nova show $VM_UUID | grep "$PRIVATE_NETWORK_NAME" | get_field 2`
die_if_not_set IP "Failure retrieving IP address"
# for single node deployments, we can ping private ips
+2 -2
View File
@@ -119,7 +119,7 @@ if ! timeout $ACTIVE_TIMEOUT sh -c "while ! nova show $VM_UUID | grep status | g
fi
# get the IP of the server
IP=`nova show $VM_UUID | grep "private network" | get_field 2`
IP=`nova show $VM_UUID | grep "$PRIVATE_NETWORK_NAME" | get_field 2`
die_if_not_set IP "Failure retrieving IP address"
# for single node deployments, we can ping private ips
@@ -205,7 +205,7 @@ echo "Completed volume-detach in $((end_time - start_time)) seconds"
# Delete volume
start_time=`date +%s`
nova volume-delete $VOL_ID || die "Failure deleting volume $VOL_NAME"
if ! timeout $ACTIVE_TIMEOUT sh -c "while ! nova volume-list | grep $VOL_NAME; do sleep 1; done"; then
if ! timeout $ACTIVE_TIMEOUT sh -c "while nova volume-list | grep $VOL_NAME; do sleep 1; done"; then
echo "Volume $VOL_NAME not deleted"
end_time=`date +%s`
echo "Failed volume-delete after $((end_time - start_time)) seconds"
+1 -1
View File
@@ -6,7 +6,7 @@ screen
unzip
wget
psmisc
git-core
git
lsof # useful when debugging
openssh-server
vim-nox
+1 -1
View File
@@ -1,5 +1,5 @@
iptables
mysql #NOPRIME
mysql-server #NOPRIME
sudo
python-paste
python-routes
+7 -4
View File
@@ -51,9 +51,6 @@ function cleanup_cinder() {
# configure_cinder() - Set config files, create data dirs, etc
function configure_cinder() {
setup_develop $CINDER_DIR
setup_develop $CINDERCLIENT_DIR
if [[ ! -d $CINDER_CONF_DIR ]]; then
sudo mkdir -p $CINDER_CONF_DIR
fi
@@ -188,10 +185,16 @@ function init_cinder() {
fi
}
# install_cinderclient() - Collect source and prepare
function install_cinderclient() {
git_clone $CINDERCLIENT_REPO $CINDERCLIENT_DIR $CINDERCLIENT_BRANCH
setup_develop $CINDERCLIENT_DIR
}
# install_cinder() - Collect source and prepare
function install_cinder() {
git_clone $CINDER_REPO $CINDER_DIR $CINDER_BRANCH
git_clone $CINDERCLIENT_REPO $CINDERCLIENT_DIR $CINDERCLIENT_BRANCH
setup_develop $CINDER_DIR
}
# apply config.d approach (e.g. Oneiric does not have this)
+1 -5
View File
@@ -63,11 +63,6 @@ function cleanup_glance() {
:
}
# configure_glanceclient() - Set config files, create data dirs, etc
function configure_glanceclient() {
setup_develop $GLANCECLIENT_DIR
}
# configure_glance() - Set config files, create data dirs, etc
function configure_glance() {
setup_develop $GLANCE_DIR
@@ -158,6 +153,7 @@ function init_glance() {
# install_glanceclient() - Collect source and prepare
function install_glanceclient() {
git_clone $GLANCECLIENT_REPO $GLANCECLIENT_DIR $GLANCECLIENT_BRANCH
setup_develop $GLANCECLIENT_DIR
}
# install_glance() - Collect source and prepare
+1 -5
View File
@@ -61,11 +61,6 @@ function cleanup_keystone() {
:
}
# configure_keystoneclient() - Set config files, create data dirs, etc
function configure_keystoneclient() {
setup_develop $KEYSTONECLIENT_DIR
}
# configure_keystone() - Set config files, create data dirs, etc
function configure_keystone() {
setup_develop $KEYSTONE_DIR
@@ -152,6 +147,7 @@ function init_keystone() {
# install_keystoneclient() - Collect source and prepare
function install_keystoneclient() {
git_clone $KEYSTONECLIENT_REPO $KEYSTONECLIENT_DIR $KEYSTONECLIENT_BRANCH
setup_develop $KEYSTONECLIENT_DIR
}
# install_keystone() - Collect source and prepare
+2 -5
View File
@@ -103,11 +103,6 @@ function cleanup_nova() {
fi
}
# configure_novaclient() - Set config files, create data dirs, etc
function configure_novaclient() {
setup_develop $NOVACLIENT_DIR
}
# configure_nova_rootwrap() - configure Nova's rootwrap
function configure_nova_rootwrap() {
# Deploy new rootwrap filters files (owned by root).
@@ -291,6 +286,7 @@ function init_nova() {
add_nova_opt "dhcpbridge_flagfile=$NOVA_CONF"
add_nova_opt "force_dhcp_release=True"
add_nova_opt "fixed_range=$FIXED_RANGE"
add_nova_opt "default_floating_pool=$PUBLIC_NETWORK_NAME"
add_nova_opt "s3_host=$SERVICE_HOST"
add_nova_opt "s3_port=$S3_SERVICE_PORT"
add_nova_opt "osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions"
@@ -377,6 +373,7 @@ function init_nova() {
# install_novaclient() - Collect source and prepare
function install_novaclient() {
git_clone $NOVACLIENT_REPO $NOVACLIENT_DIR $NOVACLIENT_BRANCH
setup_develop $NOVACLIENT_DIR
}
# install_nova() - Collect source and prepare
+31 -22
View File
@@ -227,6 +227,13 @@ else
sudo rm -f /etc/sudoers.d/stack_sh_nova
fi
# Ensure /usr/sbin and /sbin are available on PATH
S_PATH="/sbin /usr/sbin"
for i in $S_PATH
do
echo ":$PATH:" | egrep ":$i:" > /dev/null || (PATH=$PATH:$i; echo $PATH)
done
# Create the destination directory and ensure it is writable by the user
sudo mkdir -p $DEST
if [ ! -w $DEST ]; then
@@ -321,8 +328,8 @@ NOVNC_DIR=$DEST/noVNC
SWIFT_DIR=$DEST/swift
SWIFT3_DIR=$DEST/swift3
SWIFTCLIENT_DIR=$DEST/python-swiftclient
QUANTUM_DIR=$DEST/quantum
QUANTUM_CLIENT_DIR=$DEST/python-quantumclient
QUANTUM_DIR=$DEST/neutron
QUANTUM_CLIENT_DIR=$DEST/python-neutronclient
# Default Quantum Plugin
Q_PLUGIN=${Q_PLUGIN:-openvswitch}
@@ -490,7 +497,7 @@ fi
# Set ``SWIFT_DATA_DIR`` to the location of swift drives and objects.
# Default is the common DevStack data directory.
SWIFT_DATA_DIR=${SWIFT_DATA_DIR:-${DEST}/data/swift}
SWIFT_DATA_DIR=${SWIFT_DATA_DIR:-${DATA_DIR}/swift}
# Set ``SWIFT_CONFIG_DIR`` to the location of the configuration files.
# Default is ``/etc/swift``.
@@ -817,12 +824,24 @@ pip_install $(get_packages $FILES/pips | sort -u)
echo_summary "Installing OpenStack project source"
# Install clients libraries
install_keystoneclient
install_glanceclient
install_cinderclient
install_novaclient
if is_service_enabled swift glance; then
# storage service client and and Library
git_clone $SWIFTCLIENT_REPO $SWIFTCLIENT_DIR $SWIFTCLIENT_BRANCH
setup_develop $SWIFTCLIENT_DIR
fi
if is_service_enabled quantum nova; then
git_clone $QUANTUM_CLIENT_REPO $QUANTUM_CLIENT_DIR $QUANTUM_CLIENT_BRANCH
setup_develop $QUANTUM_CLIENT_DIR
fi
# Check out the client libs that are used most
git_clone $OPENSTACKCLIENT_REPO $OPENSTACKCLIENT_DIR $OPENSTACKCLIENT_BRANCH
setup_develop $OPENSTACKCLIENT_DIR
# glance, swift middleware and nova api needs keystone middleware
if is_service_enabled key g-api n-api swift; then
@@ -832,8 +851,6 @@ fi
if is_service_enabled swift; then
# storage service
git_clone $SWIFT_REPO $SWIFT_DIR $SWIFT_BRANCH
# storage service client and and Library
git_clone $SWIFTCLIENT_REPO $SWIFTCLIENT_DIR $SWIFTCLIENT_BRANCH
if is_service_enabled swift3; then
# swift3 middleware to provide S3 emulation to Swift
git_clone $SWIFT3_REPO $SWIFT3_DIR $SWIFT3_BRANCH
@@ -855,9 +872,6 @@ if is_service_enabled horizon; then
# django powered web control panel for openstack
git_clone $HORIZON_REPO $HORIZON_DIR $HORIZON_BRANCH $HORIZON_TAG
fi
if is_service_enabled quantum; then
git_clone $QUANTUM_CLIENT_REPO $QUANTUM_CLIENT_DIR $QUANTUM_CLIENT_BRANCH
fi
if is_service_enabled quantum; then
# quantum
git_clone $QUANTUM_REPO $QUANTUM_DIR $QUANTUM_BRANCH
@@ -880,26 +894,22 @@ echo_summary "Configuring OpenStack projects"
# Set up our checkouts so they are installed into python path
# allowing ``import nova`` or ``import glance.client``
configure_keystoneclient
configure_novaclient
setup_develop $OPENSTACKCLIENT_DIR
if is_service_enabled key g-api n-api swift; then
configure_keystone
fi
if is_service_enabled swift; then
setup_develop $SWIFT_DIR
setup_develop $SWIFTCLIENT_DIR
fi
if is_service_enabled swift3; then
setup_develop $SWIFT3_DIR
fi
if is_service_enabled g-api n-api; then
configure_glance
fi
# Do this _after_ glance is installed to override the old binary
# TODO(dtroyer): figure out when this is no longer necessary
configure_glanceclient
# Do this again _after_ glance is installed to overwrite
# the old binary shipped in glance
setup_develop $GLANCECLIENT_DIR
fi
if is_service_enabled nova; then
configure_nova
@@ -908,7 +918,6 @@ if is_service_enabled horizon; then
setup_develop $HORIZON_DIR
fi
if is_service_enabled quantum; then
setup_develop $QUANTUM_CLIENT_DIR
setup_develop $QUANTUM_DIR
fi
if is_service_enabled heat; then
@@ -1881,14 +1890,14 @@ if is_service_enabled q-svc; then
# Create a small network
# Since quantum command is executed in admin context at this point,
# ``--tenant_id`` needs to be specified.
NET_ID=$(quantum net-create --tenant_id $TENANT_ID net1 | grep ' id ' | get_field 2)
NET_ID=$(quantum net-create --tenant_id $TENANT_ID "$PRIVATE_NETWORK_NAME" | grep ' id ' | get_field 2)
SUBNET_ID=$(quantum subnet-create --tenant_id $TENANT_ID --ip_version 4 --gateway $NETWORK_GATEWAY $NET_ID $FIXED_RANGE | grep ' id ' | get_field 2)
if is_service_enabled q-l3; then
# Create a router, and add the private subnet as one of its interfaces
ROUTER_ID=$(quantum router-create --tenant_id $TENANT_ID router1 | grep ' id ' | get_field 2)
quantum router-interface-add $ROUTER_ID $SUBNET_ID
# Create an external network, and a subnet. Configure the external network as router gw
EXT_NET_ID=$(quantum net-create ext_net -- --router:external=True | grep ' id ' | get_field 2)
EXT_NET_ID=$(quantum net-create "$PUBLIC_NETWORK_NAME" -- --router:external=True | grep ' id ' | get_field 2)
EXT_GW_IP=$(quantum subnet-create --ip_version 4 $EXT_NET_ID $FLOATING_RANGE -- --enable_dhcp=False | grep 'gateway_ip' | get_field 2)
quantum router-gateway-set $ROUTER_ID $EXT_NET_ID
if [[ "$Q_PLUGIN" = "openvswitch" ]] && [[ "$Q_USE_NAMESPACE" = "True" ]]; then
@@ -1904,12 +1913,12 @@ if is_service_enabled q-svc; then
fi
fi
elif is_service_enabled mysql && is_service_enabled nova; then
elif is_service_enabled mysql && is_service_enabled n-net; then
# Create a small network
$NOVA_BIN_DIR/nova-manage network create private $FIXED_RANGE 1 $FIXED_NETWORK_SIZE $NETWORK_CREATE_ARGS
$NOVA_BIN_DIR/nova-manage network create "$PRIVATE_NETWORK_NAME" $FIXED_RANGE 1 $FIXED_NETWORK_SIZE $NETWORK_CREATE_ARGS
# Create some floating ips
$NOVA_BIN_DIR/nova-manage floating create $FLOATING_RANGE
$NOVA_BIN_DIR/nova-manage floating create $FLOATING_RANGE --pool=$PUBLIC_NETWORK_NAME
# Create a second pool
$NOVA_BIN_DIR/nova-manage floating create --ip_range=$TEST_FLOATING_RANGE --pool=$TEST_FLOATING_POOL
+30 -23
View File
@@ -23,6 +23,10 @@ NOVA_ENABLED_APIS=ec2,osapi_compute,osapi_volume,metadata
# Repositories
# ------------
# The comments on the branch lines below point to either the release closest
# to the OpenStack Folsom release or what commit was master near the time this
# DevStack branch was cut.
# Base GIT Repo URL
# Another option is http://review.openstack.org/p
GIT_BASE=https://github.com
@@ -33,73 +37,73 @@ CEILOMETER_BRANCH=master
# volume service
CINDER_REPO=${GIT_BASE}/openstack/cinder
CINDER_BRANCH=master
CINDER_BRANCH=stable/folsom
# volume client
CINDERCLIENT_REPO=${GIT_BASE}/openstack/python-cinderclient
CINDERCLIENT_BRANCH=master
CINDERCLIENT_BRANCH=master # 1.0.0 20Sep2012: 2e6be694c1
# compute service
NOVA_REPO=${GIT_BASE}/openstack/nova.git
NOVA_BRANCH=master
NOVA_BRANCH=stable/folsom
# storage service
SWIFT_REPO=${GIT_BASE}/openstack/swift.git
SWIFT_BRANCH=master
SWIFT_BRANCH=stable/folsom
SWIFT3_REPO=https://github.com/fujita/swift3.git
SWIFT3_BRANCH=master
SWIFT3_BRANCH=master # 10Jul2012: f216f1b4f2
# python swift client library
SWIFTCLIENT_REPO=${GIT_BASE}/openstack/python-swiftclient
SWIFTCLIENT_BRANCH=master
SWIFTCLIENT_BRANCH=master # 1.2.0 12Sep2012: 68d1550f15
# image catalog service
GLANCE_REPO=${GIT_BASE}/openstack/glance.git
GLANCE_BRANCH=master
GLANCE_BRANCH=stable/folsom
# python glance client library
GLANCECLIENT_REPO=${GIT_BASE}/openstack/python-glanceclient
GLANCECLIENT_BRANCH=master
GLANCECLIENT_BRANCH=master # 0.5.1 11Sep2012: 3f67c461da
# unified auth system (manages accounts/tokens)
KEYSTONE_REPO=${GIT_BASE}/openstack/keystone.git
KEYSTONE_BRANCH=master
KEYSTONE_BRANCH=stable/folsom
# a websockets/html5 or flash powered VNC console for vm instances
NOVNC_REPO=https://github.com/kanaka/noVNC.git
NOVNC_BRANCH=master
NOVNC_BRANCH=8dfd916946 # 21Sep2012: 8dfd916946
# django powered web control panel for openstack
HORIZON_REPO=${GIT_BASE}/openstack/horizon.git
HORIZON_BRANCH=master
HORIZON_BRANCH=stable/folsom
# python client library to nova that horizon (and others) use
NOVACLIENT_REPO=${GIT_BASE}/openstack/python-novaclient.git
NOVACLIENT_BRANCH=master
NOVACLIENT_BRANCH=master # 2.9.0 21Sep2012: cdebf729b0
# consolidated openstack python client
OPENSTACKCLIENT_REPO=${GIT_BASE}/openstack/python-openstackclient.git
OPENSTACKCLIENT_BRANCH=master
OPENSTACKCLIENT_BRANCH=master # 14Sep2012: cd140091b5
# python keystone client library to nova that horizon uses
KEYSTONECLIENT_REPO=${GIT_BASE}/openstack/python-keystoneclient
KEYSTONECLIENT_BRANCH=master
KEYSTONECLIENT_BRANCH=master # 29Sep2012: a8f7879fcf
# quantum service
QUANTUM_REPO=${GIT_BASE}/openstack/quantum
QUANTUM_BRANCH=master
QUANTUM_REPO=${GIT_BASE}/openstack/neutron
QUANTUM_BRANCH=stable/folsom
# quantum client
QUANTUM_CLIENT_REPO=${GIT_BASE}/openstack/python-quantumclient
QUANTUM_CLIENT_BRANCH=master
QUANTUM_CLIENT_REPO=${GIT_BASE}/openstack/python-neutronclient
QUANTUM_CLIENT_BRANCH=master # 2.1 14Sep2012: bc7ba5e19d
# Tempest test suite
TEMPEST_REPO=${GIT_BASE}/openstack/tempest.git
TEMPEST_BRANCH=master
TEMPEST_BRANCH=master # 01Oct2012: 2f5db941f5
# heat service
HEAT_REPO=${GIT_BASE}/heat-api/heat.git
HEAT_BRANCH=master
HEAT_BRANCH=master # 27Sep2012: ed99838c28
# Nova hypervisor configuration. We default to libvirt with **kvm** but will
# drop back to **qemu** if we are unable to load the kvm module. ``stack.sh`` can
@@ -135,9 +139,9 @@ fi
# which may be set in ``localrc``. Also allow ``DEFAULT_IMAGE_NAME`` and
# ``IMAGE_URLS`` to be set directly in ``localrc``.
case "$VIRT_DRIVER" in
openvz)
DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ubuntu-11.10-x86_64}
IMAGE_URLS=${IMAGE_URLS:-"http://download.openvz.org/template/precreated/ubuntu-11.10-x86_64.tar.gz"};;
openvz)
DEFAULT_IMAGE_NAME=${DEFAULT_IMAGE_NAME:-ubuntu-12.04-x86_64}
IMAGE_URLS=${IMAGE_URLS:-"http://download.openvz.org/template/precreated/ubuntu-12.04-x86_64.tar.gz"};;
libvirt)
case "$LIBVIRT_TYPE" in
lxc) # the cirros root disk in the uec tarball is empty, so it will not work for lxc
@@ -155,3 +159,6 @@ esac
# 5Gb default volume backing file size
VOLUME_BACKING_FILE_SIZE=${VOLUME_BACKING_FILE_SIZE:-5130M}
PRIVATE_NETWORK_NAME=${PRIVATE_NETWORK_NAME:-"private"}
PUBLIC_NETWORK_NAME=${PUBLIC_NETWORK_NAME:-"nova"}