From 7a15a0e04b5128b2c6bd42d5094183ba94577037 Mon Sep 17 00:00:00 2001 From: Joe Gordon Date: Wed, 21 May 2014 14:22:04 +0900 Subject: [PATCH 0001/3582] Add Core, Ram and Disk filter to fake virt setting The FakeVirt driver shouldn't need custom scheduling options, so it run instead of a real virt driver for testing purposes. This simplifies the use case where someone wants to run the FakeVirt driver along side a real driver so someone can test there cloud application without wasting real instances. Since the FakeVirt driver should look like it has near infinite resources, turn on Core, Ram and Disk filters to make sure the drive works with them enabled. Change-Id: Ic7ec87e4d497d9db58eec93f2b304fe9770a2bbc Related-Bug: #1268943 --- lib/nova_plugins/hypervisor-fake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/nova_plugins/hypervisor-fake b/lib/nova_plugins/hypervisor-fake index e7a833f806..dc93633410 100644 --- a/lib/nova_plugins/hypervisor-fake +++ b/lib/nova_plugins/hypervisor-fake @@ -47,7 +47,7 @@ function configure_nova_hypervisor { iniset $NOVA_CONF DEFAULT quota_security_groups -1 iniset $NOVA_CONF DEFAULT quota_security_group_rules -1 iniset $NOVA_CONF DEFAULT quota_key_pairs -1 - iniset $NOVA_CONF DEFAULT scheduler_default_filters "RetryFilter,AvailabilityZoneFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter" + iniset $NOVA_CONF DEFAULT scheduler_default_filters "RetryFilter,AvailabilityZoneFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,CoreFilter,RamFilter,DiskFilter" } # install_nova_hypervisor() - Install external components From 23b12a6e40c958d762f772d511e8babb6e069887 Mon Sep 17 00:00:00 2001 From: Attila Fazekas Date: Thu, 5 Jun 2014 18:59:03 +0200 Subject: [PATCH 0002/3582] [Fedora] Install dnsmasq on n-cpu less host The libvirt-daemon-driver-network pulls the dnsmasq, on hosts where the n-cpu installed with libvirt backend. But nothing installs it if you have only n-net or q-dhcp, on the given hosts. dnsmasq-utils does not depends on dnsmasq, because it can work with other local dhcp servers. Change-Id: I17a769df3bd51ca608c1728e892009125eea42ed --- files/rpms/neutron | 1 + files/rpms/nova | 1 + 2 files changed, 2 insertions(+) diff --git a/files/rpms/neutron b/files/rpms/neutron index 9fafecbf52..15ed97346f 100644 --- a/files/rpms/neutron +++ b/files/rpms/neutron @@ -1,4 +1,5 @@ MySQL-python +dnsmasq # for q-dhcp dnsmasq-utils # for dhcp_release ebtables iptables diff --git a/files/rpms/nova b/files/rpms/nova index e05d0d7a7e..0c828f403c 100644 --- a/files/rpms/nova +++ b/files/rpms/nova @@ -1,5 +1,6 @@ MySQL-python curl +dnsmasq # for nova-network dnsmasq-utils # for dhcp_release ebtables gawk From 683ff42d3cac11dbd25ed82f4c419215c5c1f84f Mon Sep 17 00:00:00 2001 From: Franck Yelles Date: Thu, 19 Jun 2014 02:14:42 -0700 Subject: [PATCH 0003/3582] Support of an alternate pypi server Currently pip will get the package from the https://pypi.python.org server. For CI, it's a problem as Internet connection can be down, the pypi server down, etc... The usecase is for a company/user that maintain a local pypi mirror and give the option to use this server instead of the official one Change-Id: I83aac4646cb78827a92c9636d78238f8a6118642 Implements: blueprint support-local-pypi-server --- stack.sh | 2 +- tools/install_pip.sh | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/stack.sh b/stack.sh index bd99b5b752..51854cc25c 100755 --- a/stack.sh +++ b/stack.sh @@ -652,7 +652,7 @@ source $TOP_DIR/tools/install_prereqs.sh # Configure an appropriate python environment if [[ "$OFFLINE" != "True" ]]; then - $TOP_DIR/tools/install_pip.sh + PYPI_ALTERNATIVE_URL=$PYPI_ALTERNATIVE_URL $TOP_DIR/tools/install_pip.sh fi # Do the ugly hacks for borken packages and distros diff --git a/tools/install_pip.sh b/tools/install_pip.sh index 150faaa258..55ef93e44d 100755 --- a/tools/install_pip.sh +++ b/tools/install_pip.sh @@ -50,6 +50,25 @@ function install_get_pip { } +function configure_pypi_alternative_url { + PIP_ROOT_FOLDER="$HOME/.pip" + PIP_CONFIG_FILE="$PIP_ROOT_FOLDER/pip.conf" + if [[ ! -d $PIP_ROOT_FOLDER ]]; then + echo "Creating $PIP_ROOT_FOLDER" + mkdir $PIP_ROOT_FOLDER + fi + if [[ ! -f $PIP_CONFIG_FILE ]]; then + echo "Creating $PIP_CONFIG_FILE" + touch $PIP_CONFIG_FILE + fi + if ! ini_has_option "$PIP_CONFIG_FILE" "global" "index-url"; then + #it means that the index-url does not exist + iniset "$PIP_CONFIG_FILE" "global" "index-url" "$PYPI_OVERRIDE" + fi + +} + + # Show starting versions get_versions @@ -60,6 +79,10 @@ uninstall_package python-pip install_get_pip +if [[ -n $PYPI_ALTERNATIVE_URL ]]; then + configure_pypi_alternative_url +fi + pip_install -U setuptools get_versions From 2f69c6b85387f85db63e0a087c8b3fac992bd04d Mon Sep 17 00:00:00 2001 From: Stanislaw Pitucha Date: Wed, 25 Jun 2014 15:07:48 +0100 Subject: [PATCH 0004/3582] Don't try to regenerate existing ssl certificates Rerunning stack.sh after some failure unrelated to ssl setup will fail due to certificates already existing in the CA index. Don't regenerate them instead. This is a workaround making devstack development easier rather than something typical user would run into. Change-Id: Icfd4cb5132c8c9297eb73159e592b7006295184f --- lib/tls | 87 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 46 insertions(+), 41 deletions(-) diff --git a/lib/tls b/lib/tls index 88e5f60473..aa296230d5 100644 --- a/lib/tls +++ b/lib/tls @@ -231,31 +231,34 @@ function make_cert { local common_name=$3 local alt_names=$4 - # Generate a signing request - $OPENSSL req \ - -sha1 \ - -newkey rsa \ - -nodes \ - -keyout $ca_dir/private/$cert_name.key \ - -out $ca_dir/$cert_name.csr \ - -subj "/O=${ORG_NAME}/OU=${ORG_UNIT_NAME} Servers/CN=${common_name}" - - if [[ -z "$alt_names" ]]; then - alt_names="DNS:${common_name}" - else - alt_names="DNS:${common_name},${alt_names}" - fi + # Only generate the certificate if it doesn't exist yet on the disk + if [ ! -r "$ca_dir/$cert_name.crt" ]; then + # Generate a signing request + $OPENSSL req \ + -sha1 \ + -newkey rsa \ + -nodes \ + -keyout $ca_dir/private/$cert_name.key \ + -out $ca_dir/$cert_name.csr \ + -subj "/O=${ORG_NAME}/OU=${ORG_UNIT_NAME} Servers/CN=${common_name}" + + if [[ -z "$alt_names" ]]; then + alt_names="DNS:${common_name}" + else + alt_names="DNS:${common_name},${alt_names}" + fi - # Sign the request valid for 1 year - SUBJECT_ALT_NAME="$alt_names" \ - $OPENSSL ca -config $ca_dir/signing.conf \ - -extensions req_extensions \ - -days 365 \ - -notext \ - -in $ca_dir/$cert_name.csr \ - -out $ca_dir/$cert_name.crt \ - -subj "/O=${ORG_NAME}/OU=${ORG_UNIT_NAME} Servers/CN=${common_name}" \ - -batch + # Sign the request valid for 1 year + SUBJECT_ALT_NAME="$alt_names" \ + $OPENSSL ca -config $ca_dir/signing.conf \ + -extensions req_extensions \ + -days 365 \ + -notext \ + -in $ca_dir/$cert_name.csr \ + -out $ca_dir/$cert_name.crt \ + -subj "/O=${ORG_NAME}/OU=${ORG_UNIT_NAME} Servers/CN=${common_name}" \ + -batch + fi } @@ -270,23 +273,25 @@ function make_int_CA { create_CA_config $ca_dir 'Intermediate CA' create_signing_config $ca_dir - # Create a signing certificate request - $OPENSSL req -config $ca_dir/ca.conf \ - -sha1 \ - -newkey rsa \ - -nodes \ - -keyout $ca_dir/private/cacert.key \ - -out $ca_dir/cacert.csr \ - -outform PEM - - # Sign the intermediate request valid for 1 year - $OPENSSL ca -config $signing_ca_dir/ca.conf \ - -extensions ca_extensions \ - -days 365 \ - -notext \ - -in $ca_dir/cacert.csr \ - -out $ca_dir/cacert.pem \ - -batch + if [ ! -r "$ca_dir/cacert.pem" ]; then + # Create a signing certificate request + $OPENSSL req -config $ca_dir/ca.conf \ + -sha1 \ + -newkey rsa \ + -nodes \ + -keyout $ca_dir/private/cacert.key \ + -out $ca_dir/cacert.csr \ + -outform PEM + + # Sign the intermediate request valid for 1 year + $OPENSSL ca -config $signing_ca_dir/ca.conf \ + -extensions ca_extensions \ + -days 365 \ + -notext \ + -in $ca_dir/cacert.csr \ + -out $ca_dir/cacert.pem \ + -batch + fi } # Make a root CA to sign other CAs From c83cc75e61c66d761ff8a222af92a6a6218494ab Mon Sep 17 00:00:00 2001 From: James Chapman Date: Wed, 11 Jun 2014 19:29:26 +0100 Subject: [PATCH 0005/3582] Configure the OVS datapath type with devstack. This feature provides the user with a means of easily configuring the required Openvswitch datapath type. (Netdev, dpdk, etc) Define the OVS_DATAPATH_TYPE variable in the devstack configuration file local.conf. This feature enables Intel(R) DPDK vSwitch and netdev DPDK vhost. Implements blueprint config-ovs-datapath-type Change-Id: I5698720960b1ac532c790d3e5735c5cef36d5e3d --- lib/neutron_plugins/ovs_base | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/neutron_plugins/ovs_base b/lib/neutron_plugins/ovs_base index 1e293a187e..0fa919890f 100644 --- a/lib/neutron_plugins/ovs_base +++ b/lib/neutron_plugins/ovs_base @@ -7,6 +7,7 @@ set +o xtrace OVS_BRIDGE=${OVS_BRIDGE:-br-int} PUBLIC_BRIDGE=${PUBLIC_BRIDGE:-br-ex} +OVS_DATAPATH_TYPE=${OVS_DATAPATH_TYPE:-""} function is_neutron_ovs_base_plugin { # Yes, we use OVS. @@ -17,6 +18,9 @@ function _neutron_ovs_base_setup_bridge { local bridge=$1 neutron-ovs-cleanup sudo ovs-vsctl --no-wait -- --may-exist add-br $bridge + if [[ $OVS_DATAPATH_TYPE != "" ]]; then + sudo ovs-vsctl set Bridge $bridge datapath_type=${OVS_DATAPATH_TYPE} + fi sudo ovs-vsctl --no-wait br-set-external-id $bridge bridge-id $bridge } From 9c4f24afd972987076a125876e148a785de993e9 Mon Sep 17 00:00:00 2001 From: Nikhil Manchanda Date: Tue, 15 Jul 2014 14:31:04 -0700 Subject: [PATCH 0006/3582] Fix trove guest confing to ignore user os_admin This value of ignore_users in the guest config needs to be set correctly to ignore the local os_admin user for the trove functional tests to pass in a devstack-gate environment. Change-Id: Ia31dfe8f2eab4b24790b6be0dbc474cf50f39afa --- lib/trove | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/trove b/lib/trove index 2552745209..a4a455e213 100644 --- a/lib/trove +++ b/lib/trove @@ -180,6 +180,7 @@ function configure_trove { iniset $TROVE_CONF_DIR/trove-guestagent.conf DEFAULT nova_proxy_admin_pass $RADMIN_USER_PASS iniset $TROVE_CONF_DIR/trove-guestagent.conf DEFAULT trove_auth_url $TROVE_AUTH_ENDPOINT iniset $TROVE_CONF_DIR/trove-guestagent.conf DEFAULT control_exchange trove + iniset $TROVE_CONF_DIR/trove-guestagent.conf DEFAULT ignore_users os_admin iniset $TROVE_CONF_DIR/trove-guestagent.conf DEFAULT log_dir /tmp/ iniset $TROVE_CONF_DIR/trove-guestagent.conf DEFAULT log_file trove-guestagent.log setup_trove_logging $TROVE_CONF_DIR/trove-guestagent.conf From 242c098498a12c5af60b97818d4c547ff90614d6 Mon Sep 17 00:00:00 2001 From: Fawad Khaliq Date: Tue, 15 Jul 2014 17:51:44 -0700 Subject: [PATCH 0007/3582] Enable security group extension in PLUMgrid plugin Implements: blueprint plumgrid-neutron-security-groups Change-Id: I30392adff5e3250a1c4f9f1f04fc7e0587007226 --- lib/neutron_plugins/plumgrid | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/neutron_plugins/plumgrid b/lib/neutron_plugins/plumgrid index 178bca7dc2..00e2c95efb 100644 --- a/lib/neutron_plugins/plumgrid +++ b/lib/neutron_plugins/plumgrid @@ -46,8 +46,8 @@ function is_neutron_ovs_base_plugin { } function has_neutron_plugin_security_group { - # False - return 1 + # return 0 means enabled + return 0 } function neutron_plugin_check_adv_test_requirements { From 0fc1cc29ac5d9aa88e47611de72f3a98f14bf242 Mon Sep 17 00:00:00 2001 From: Henry Gessau Date: Sun, 6 Jul 2014 22:54:34 -0400 Subject: [PATCH 0008/3582] Use one name for neutron database after healing Now that the Neutron database is healed we no longer need a plugin-specific name for it. Related Blueprint: db-migration-refactor Change-Id: If25e77444f115817e5570bb447bde5b9c8d6e686 --- lib/neutron | 2 ++ lib/neutron_plugins/README.md | 2 +- lib/neutron_plugins/bigswitch_floodlight | 1 - lib/neutron_plugins/brocade | 1 - lib/neutron_plugins/cisco | 1 - lib/neutron_plugins/embrane | 1 - lib/neutron_plugins/ibm | 1 - lib/neutron_plugins/linuxbridge | 1 - lib/neutron_plugins/midonet | 1 - lib/neutron_plugins/ml2 | 1 - lib/neutron_plugins/nec | 1 - lib/neutron_plugins/nuage | 1 - lib/neutron_plugins/oneconvergence | 1 - lib/neutron_plugins/openvswitch | 1 - lib/neutron_plugins/plumgrid | 1 - lib/neutron_plugins/ryu | 1 - lib/neutron_plugins/vmware_nsx | 1 - 17 files changed, 3 insertions(+), 16 deletions(-) diff --git a/lib/neutron b/lib/neutron index 8b883b1e5a..eeb29bd582 100644 --- a/lib/neutron +++ b/lib/neutron @@ -85,6 +85,8 @@ NEUTRON_CONF_DIR=/etc/neutron NEUTRON_CONF=$NEUTRON_CONF_DIR/neutron.conf export NEUTRON_TEST_CONFIG_FILE=${NEUTRON_TEST_CONFIG_FILE:-"$NEUTRON_CONF_DIR/debug.ini"} +# Default name for Neutron database +Q_DB_NAME=${Q_DB_NAME:-neutron} # Default Neutron Plugin Q_PLUGIN=${Q_PLUGIN:-ml2} # Default Neutron Port diff --git a/lib/neutron_plugins/README.md b/lib/neutron_plugins/README.md index be8fd96677..7192a051b4 100644 --- a/lib/neutron_plugins/README.md +++ b/lib/neutron_plugins/README.md @@ -25,7 +25,7 @@ functions install_package bridge-utils * ``neutron_plugin_configure_common`` : set plugin-specific variables, ``Q_PLUGIN_CONF_PATH``, ``Q_PLUGIN_CONF_FILENAME``, - ``Q_DB_NAME``, ``Q_PLUGIN_CLASS`` + ``Q_PLUGIN_CLASS`` * ``neutron_plugin_configure_debug_command`` * ``neutron_plugin_configure_dhcp_agent`` * ``neutron_plugin_configure_l3_agent`` diff --git a/lib/neutron_plugins/bigswitch_floodlight b/lib/neutron_plugins/bigswitch_floodlight index efdd9ef794..9e84f2e75a 100644 --- a/lib/neutron_plugins/bigswitch_floodlight +++ b/lib/neutron_plugins/bigswitch_floodlight @@ -19,7 +19,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/bigswitch Q_PLUGIN_CONF_FILENAME=restproxy.ini - Q_DB_NAME="restproxy_neutron" Q_PLUGIN_CLASS="neutron.plugins.bigswitch.plugin.NeutronRestProxyV2" BS_FL_CONTROLLERS_PORT=${BS_FL_CONTROLLERS_PORT:-localhost:80} BS_FL_CONTROLLER_TIMEOUT=${BS_FL_CONTROLLER_TIMEOUT:-10} diff --git a/lib/neutron_plugins/brocade b/lib/neutron_plugins/brocade index e4cc754039..511fb71d61 100644 --- a/lib/neutron_plugins/brocade +++ b/lib/neutron_plugins/brocade @@ -20,7 +20,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/brocade Q_PLUGIN_CONF_FILENAME=brocade.ini - Q_DB_NAME="brcd_neutron" Q_PLUGIN_CLASS="neutron.plugins.brocade.NeutronPlugin.BrocadePluginV2" } diff --git a/lib/neutron_plugins/cisco b/lib/neutron_plugins/cisco index dccf4003c3..da90ee32ad 100644 --- a/lib/neutron_plugins/cisco +++ b/lib/neutron_plugins/cisco @@ -197,7 +197,6 @@ function neutron_plugin_configure_common { Q_PLUGIN_CONF_FILENAME=cisco_plugins.ini fi Q_PLUGIN_CLASS="neutron.plugins.cisco.network_plugin.PluginV2" - Q_DB_NAME=cisco_neutron } function neutron_plugin_configure_debug_command { diff --git a/lib/neutron_plugins/embrane b/lib/neutron_plugins/embrane index cce108a4a1..7dafdc001f 100644 --- a/lib/neutron_plugins/embrane +++ b/lib/neutron_plugins/embrane @@ -18,7 +18,6 @@ save_function neutron_plugin_configure_service _neutron_plugin_configure_service function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/embrane Q_PLUGIN_CONF_FILENAME=heleos_conf.ini - Q_DB_NAME="ovs_neutron" Q_PLUGIN_CLASS="neutron.plugins.embrane.plugins.embrane_ovs_plugin.EmbraneOvsPlugin" } diff --git a/lib/neutron_plugins/ibm b/lib/neutron_plugins/ibm index 3aef9d0359..39b00401ae 100644 --- a/lib/neutron_plugins/ibm +++ b/lib/neutron_plugins/ibm @@ -60,7 +60,6 @@ function is_neutron_ovs_base_plugin { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/ibm Q_PLUGIN_CONF_FILENAME=sdnve_neutron_plugin.ini - Q_DB_NAME="sdnve_neutron" Q_PLUGIN_CLASS="neutron.plugins.ibm.sdnve_neutron_plugin.SdnvePluginV2" } diff --git a/lib/neutron_plugins/linuxbridge b/lib/neutron_plugins/linuxbridge index 113a7dfda6..5f989ae0ad 100644 --- a/lib/neutron_plugins/linuxbridge +++ b/lib/neutron_plugins/linuxbridge @@ -10,7 +10,6 @@ source $TOP_DIR/lib/neutron_plugins/linuxbridge_agent function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/linuxbridge Q_PLUGIN_CONF_FILENAME=linuxbridge_conf.ini - Q_DB_NAME="neutron_linux_bridge" Q_PLUGIN_CLASS="neutron.plugins.linuxbridge.lb_neutron_plugin.LinuxBridgePluginV2" } diff --git a/lib/neutron_plugins/midonet b/lib/neutron_plugins/midonet index c5373d656f..6ccd502d97 100644 --- a/lib/neutron_plugins/midonet +++ b/lib/neutron_plugins/midonet @@ -26,7 +26,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/midonet Q_PLUGIN_CONF_FILENAME=midonet.ini - Q_DB_NAME="neutron_midonet" Q_PLUGIN_CLASS="neutron.plugins.midonet.plugin.MidonetPluginV2" } diff --git a/lib/neutron_plugins/ml2 b/lib/neutron_plugins/ml2 index 8e131bbb94..3ea141e6c4 100644 --- a/lib/neutron_plugins/ml2 +++ b/lib/neutron_plugins/ml2 @@ -50,7 +50,6 @@ function populate_ml2_config { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/ml2 Q_PLUGIN_CONF_FILENAME=ml2_conf.ini - Q_DB_NAME="neutron_ml2" Q_PLUGIN_CLASS="neutron.plugins.ml2.plugin.Ml2Plugin" # The ML2 plugin delegates L3 routing/NAT functionality to # the L3 service plugin which must therefore be specified. diff --git a/lib/neutron_plugins/nec b/lib/neutron_plugins/nec index d76f7d4aaf..f8d98c35fe 100644 --- a/lib/neutron_plugins/nec +++ b/lib/neutron_plugins/nec @@ -39,7 +39,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/nec Q_PLUGIN_CONF_FILENAME=nec.ini - Q_DB_NAME="neutron_nec" Q_PLUGIN_CLASS="neutron.plugins.nec.nec_plugin.NECPluginV2" } diff --git a/lib/neutron_plugins/nuage b/lib/neutron_plugins/nuage index 86f09d2b54..52d85a26cc 100644 --- a/lib/neutron_plugins/nuage +++ b/lib/neutron_plugins/nuage @@ -20,7 +20,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/nuage Q_PLUGIN_CONF_FILENAME=nuage_plugin.ini - Q_DB_NAME="nuage_neutron" Q_PLUGIN_CLASS="neutron.plugins.nuage.plugin.NuagePlugin" Q_PLUGIN_EXTENSIONS_PATH=neutron/plugins/nuage/extensions #Nuage specific Neutron defaults. Actual value must be set and sourced diff --git a/lib/neutron_plugins/oneconvergence b/lib/neutron_plugins/oneconvergence index 06f1eee8c7..e5f0d71200 100644 --- a/lib/neutron_plugins/oneconvergence +++ b/lib/neutron_plugins/oneconvergence @@ -19,7 +19,6 @@ function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/oneconvergence Q_PLUGIN_CONF_FILENAME=nvsdplugin.ini Q_PLUGIN_CLASS="neutron.plugins.oneconvergence.plugin.OneConvergencePluginV2" - Q_DB_NAME='oc_nvsd_neutron' } # Configure plugin specific information diff --git a/lib/neutron_plugins/openvswitch b/lib/neutron_plugins/openvswitch index fc81092682..c468132bbb 100644 --- a/lib/neutron_plugins/openvswitch +++ b/lib/neutron_plugins/openvswitch @@ -10,7 +10,6 @@ source $TOP_DIR/lib/neutron_plugins/openvswitch_agent function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/openvswitch Q_PLUGIN_CONF_FILENAME=ovs_neutron_plugin.ini - Q_DB_NAME="ovs_neutron" Q_PLUGIN_CLASS="neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2" } diff --git a/lib/neutron_plugins/plumgrid b/lib/neutron_plugins/plumgrid index 178bca7dc2..37b9e4cc34 100644 --- a/lib/neutron_plugins/plumgrid +++ b/lib/neutron_plugins/plumgrid @@ -17,7 +17,6 @@ function neutron_plugin_setup_interface_driver { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/plumgrid Q_PLUGIN_CONF_FILENAME=plumgrid.ini - Q_DB_NAME="plumgrid_neutron" Q_PLUGIN_CLASS="neutron.plugins.plumgrid.plumgrid_plugin.plumgrid_plugin.NeutronPluginPLUMgridV2" PLUMGRID_DIRECTOR_IP=${PLUMGRID_DIRECTOR_IP:-localhost} PLUMGRID_DIRECTOR_PORT=${PLUMGRID_DIRECTOR_PORT:-7766} diff --git a/lib/neutron_plugins/ryu b/lib/neutron_plugins/ryu index ceb89faf6e..f45a7972e8 100644 --- a/lib/neutron_plugins/ryu +++ b/lib/neutron_plugins/ryu @@ -25,7 +25,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/ryu Q_PLUGIN_CONF_FILENAME=ryu.ini - Q_DB_NAME="ovs_neutron" Q_PLUGIN_CLASS="neutron.plugins.ryu.ryu_neutron_plugin.RyuNeutronPluginV2" } diff --git a/lib/neutron_plugins/vmware_nsx b/lib/neutron_plugins/vmware_nsx index c7672dbb4a..5802ebf7e0 100644 --- a/lib/neutron_plugins/vmware_nsx +++ b/lib/neutron_plugins/vmware_nsx @@ -40,7 +40,6 @@ function neutron_plugin_install_agent_packages { function neutron_plugin_configure_common { Q_PLUGIN_CONF_PATH=etc/neutron/plugins/vmware Q_PLUGIN_CONF_FILENAME=nsx.ini - Q_DB_NAME="neutron_nsx" Q_PLUGIN_CLASS="neutron.plugins.vmware.plugin.NsxPlugin" } From 7df9d1be17162feabeaba35faa87baf09debe590 Mon Sep 17 00:00:00 2001 From: Angus Lees Date: Mon, 21 Jul 2014 15:35:34 +1000 Subject: [PATCH 0009/3582] Ensure sbin is in PATH. Some distros (Debian) don't have sbin in PATH for non-root users. Nova (and possibly other services) assumes that it can invoke "sysctl" without sudo. Change-Id: Iced21fc1378af309fb49688f9b63f2cd8383e304 Closes-Bug: #1300800 --- stack.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/stack.sh b/stack.sh index 94b90d18c0..5f12a8083a 100755 --- a/stack.sh +++ b/stack.sh @@ -34,6 +34,9 @@ export LC_ALL # Make sure umask is sane umask 022 +# Not all distros have sbin in PATH for regular users. +PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin + # Keep track of the devstack directory TOP_DIR=$(cd $(dirname "$0") && pwd) From 53971539878251bc02383c4b68e627ef0e526b21 Mon Sep 17 00:00:00 2001 From: Adalberto Medeiros Date: Thu, 10 Jul 2014 16:55:49 -0300 Subject: [PATCH 0010/3582] Add architecture to tempest configuration Cirros may be also built in other architectures other than x86_64 (ex: ppc). This option should be broader, so adding a new variable CIRROS_ARCH Change-Id: I9fcd3f15e04bb581cf647ad49172c7d698e8e574 --- lib/tempest | 24 ++++++++++++------------ stackrc | 17 +++++++++-------- 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/lib/tempest b/lib/tempest index 59c5bbcbfb..5ad2572913 100644 --- a/lib/tempest +++ b/lib/tempest @@ -307,9 +307,9 @@ function configure_tempest { iniset $TEMPEST_CONFIG boto ec2_url "http://$SERVICE_HOST:8773/services/Cloud" iniset $TEMPEST_CONFIG boto s3_url "http://$SERVICE_HOST:${S3_SERVICE_PORT:-3333}" iniset $TEMPEST_CONFIG boto s3_materials_path "$BOTO_MATERIALS_PATH" - iniset $TEMPEST_CONFIG boto ari_manifest cirros-${CIRROS_VERSION}-x86_64-initrd.manifest.xml - iniset $TEMPEST_CONFIG boto ami_manifest cirros-${CIRROS_VERSION}-x86_64-blank.img.manifest.xml - iniset $TEMPEST_CONFIG boto aki_manifest cirros-${CIRROS_VERSION}-x86_64-vmlinuz.manifest.xml + iniset $TEMPEST_CONFIG boto ari_manifest cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-initrd.manifest.xml + iniset $TEMPEST_CONFIG boto ami_manifest cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-blank.img.manifest.xml + iniset $TEMPEST_CONFIG boto aki_manifest cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-vmlinuz.manifest.xml iniset $TEMPEST_CONFIG boto instance_type "$boto_instance_type" iniset $TEMPEST_CONFIG boto http_socket_timeout 30 iniset $TEMPEST_CONFIG boto ssh_user ${DEFAULT_INSTANCE_USER:-cirros} @@ -329,10 +329,10 @@ function configure_tempest { fi # Scenario - iniset $TEMPEST_CONFIG scenario img_dir "$FILES/images/cirros-${CIRROS_VERSION}-x86_64-uec" - iniset $TEMPEST_CONFIG scenario ami_img_file "cirros-${CIRROS_VERSION}-x86_64-blank.img" - iniset $TEMPEST_CONFIG scenario ari_img_file "cirros-${CIRROS_VERSION}-x86_64-initrd" - iniset $TEMPEST_CONFIG scenario aki_img_file "cirros-${CIRROS_VERSION}-x86_64-vmlinuz" + iniset $TEMPEST_CONFIG scenario img_dir "$FILES/images/cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-uec" + iniset $TEMPEST_CONFIG scenario ami_img_file "cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-blank.img" + iniset $TEMPEST_CONFIG scenario ari_img_file "cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-initrd" + iniset $TEMPEST_CONFIG scenario aki_img_file "cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-vmlinuz" # Large Ops Number iniset $TEMPEST_CONFIG scenario large_ops_number ${TEMPEST_LARGE_OPS_NUMBER:-0} @@ -411,8 +411,8 @@ function install_tempest { # init_tempest() - Initialize ec2 images function init_tempest { - local base_image_name=cirros-${CIRROS_VERSION}-x86_64 - # /opt/stack/devstack/files/images/cirros-${CIRROS_VERSION}-x86_64-uec + local base_image_name=cirros-${CIRROS_VERSION}-${CIRROS_ARCH} + # /opt/stack/devstack/files/images/cirros-${CIRROS_VERSION}-${CIRROS_ARCH}-uec local image_dir="$FILES/images/${base_image_name}-uec" local kernel="$image_dir/${base_image_name}-vmlinuz" local ramdisk="$image_dir/${base_image_name}-initrd" @@ -424,9 +424,9 @@ function init_tempest { ( #new namespace # tenant:demo ; user: demo source $TOP_DIR/accrc/demo/demo - euca-bundle-image -r x86_64 -i "$kernel" --kernel true -d "$BOTO_MATERIALS_PATH" - euca-bundle-image -r x86_64 -i "$ramdisk" --ramdisk true -d "$BOTO_MATERIALS_PATH" - euca-bundle-image -r x86_64 -i "$disk_image" -d "$BOTO_MATERIALS_PATH" + euca-bundle-image -r ${CIRROS_ARCH} -i "$kernel" --kernel true -d "$BOTO_MATERIALS_PATH" + euca-bundle-image -r ${CIRROS_ARCH} -i "$ramdisk" --ramdisk true -d "$BOTO_MATERIALS_PATH" + euca-bundle-image -r ${CIRROS_ARCH} -i "$disk_image" -d "$BOTO_MATERIALS_PATH" ) 2>&1 Date: Mon, 6 Jan 2014 18:09:26 +0100 Subject: [PATCH 0011/3582] Implement Ceph backend for Glance / Cinder / Nova MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The new lib installs a full Ceph cluster. It can be managed by the service init scripts. Ceph can also be installed in standalone without any other components. This implementation adds the auto-configuration for the following services with Ceph: * Glance * Cinder * Cinder backup * Nova To enable Ceph simply add: ENABLED_SERVICES+=,ceph to your localrc. If you want to play with the Ceph replication, you can use the CEPH_REPLICAS option and set a replica. This replica will be used for every pools (Glance, Cinder, Cinder backup and Nova). The size of the loopback disk used for Ceph can also be managed thanks to the CEPH_LOOPBACK_DISK_SIZE option. Going further pools, users and PGs are configurable as well. The convention is _CEPH_