Merge "Introduce get_python_exec_prefix function."
diff --git a/lib/cinder b/lib/cinder
index 28b3caa..fd5f8cf 100644
--- a/lib/cinder
+++ b/lib/cinder
@@ -193,10 +193,10 @@
if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then
# Add color to logging output
- iniset $CINDER_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)d %(color)s%(levelname)s %(name)s [[01;36m%(request_id)s [00;36m%(user_id)s %(project_id)s%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
- iniset $CINDER_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)d %(color)s%(levelname)s %(name)s [[00;36m-%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
+ iniset $CINDER_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [[01;36m%(request_id)s [00;36m%(user_id)s %(project_id)s%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
+ iniset $CINDER_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [[00;36m-%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
iniset $CINDER_CONF DEFAULT logging_debug_format_suffix "[00;33mfrom (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d[00m"
- iniset $CINDER_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)d TRACE %(name)s [01;35m%(instance)s[00m"
+ iniset $CINDER_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)03d TRACE %(name)s [01;35m%(instance)s[00m"
fi
if [ "$CINDER_DRIVER" == "XenAPINFS" ]; then
diff --git a/lib/keystone b/lib/keystone
index 7a70cc4..5714670 100644
--- a/lib/keystone
+++ b/lib/keystone
@@ -39,6 +39,9 @@
KEYSTONE_CATALOG_BACKEND=${KEYSTONE_CATALOG_BACKEND:-sql}
KEYSTONE_CATALOG=$KEYSTONE_CONF_DIR/default_catalog.templates
+# Select the backend for Tokens
+KEYSTONE_TOKEN_BACKEND=${KEYSTONE_TOKEN_BACKEND:-sql}
+
# Select Keystone's token format
# Choose from 'UUID' and 'PKI'
KEYSTONE_TOKEN_FORMAT=${KEYSTONE_TOKEN_FORMAT:-PKI}
@@ -108,6 +111,12 @@
# Append the S3 bits
iniset $KEYSTONE_CONF filter:s3_extension paste.filter_factory "keystone.contrib.s3:S3Extension.factory"
+ if [[ "$KEYSTONE_TOKEN_BACKEND" = "sql" ]]; then
+ iniset $KEYSTONE_CONF token driver keystone.token.backends.sql.Token
+ else
+ iniset $KEYSTONE_CONF token driver keystone.token.backends.kvs.Token
+ fi
+
if [[ "$KEYSTONE_CATALOG_BACKEND" = "sql" ]]; then
# Configure ``keystone.conf`` to use sql
iniset $KEYSTONE_CONF catalog driver keystone.catalog.backends.sql.Catalog
diff --git a/lib/nova b/lib/nova
index 4116278..1681af7 100644
--- a/lib/nova
+++ b/lib/nova
@@ -424,13 +424,13 @@
fi
if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then
# Add color to logging output
- iniset $NOVA_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)d %(color)s%(levelname)s %(name)s [[01;36m%(request_id)s [00;36m%(user_name)s %(project_name)s%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
- iniset $NOVA_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)d %(color)s%(levelname)s %(name)s [[00;36m-%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
+ iniset $NOVA_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [[01;36m%(request_id)s [00;36m%(user_name)s %(project_name)s%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
+ iniset $NOVA_CONF DEFAULT logging_default_format_string "%(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [[00;36m-%(color)s] [01;35m%(instance)s%(color)s%(message)s[00m"
iniset $NOVA_CONF DEFAULT logging_debug_format_suffix "[00;33mfrom (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d[00m"
- iniset $NOVA_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)d TRACE %(name)s [01;35m%(instance)s[00m"
+ iniset $NOVA_CONF DEFAULT logging_exception_prefix "%(color)s%(asctime)s.%(msecs)03d TRACE %(name)s [01;35m%(instance)s[00m"
else
# Show user_name and project_name instead of user_id and project_id
- iniset $NOVA_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)d %(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s] %(instance)s%(message)s"
+ iniset $NOVA_CONF DEFAULT logging_context_format_string "%(asctime)s.%(msecs)03d %(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s] %(instance)s%(message)s"
fi
if is_service_enabled ceilometer; then
iniset $NOVA_CONF DEFAULT instance_usage_audit "True"
diff --git a/lib/quantum b/lib/quantum
index c5fc6e8..d5733b3 100644
--- a/lib/quantum
+++ b/lib/quantum
@@ -410,6 +410,9 @@
iniset $QUANTUM_TEST_CONFIG_FILE DEFAULT debug False
iniset $QUANTUM_TEST_CONFIG_FILE DEFAULT use_namespaces $Q_USE_NAMESPACE
iniset $QUANTUM_TEST_CONFIG_FILE DEFAULT root_helper "$Q_RR_COMMAND"
+ # Intermediate fix until Quantum patch lands and then line above will
+ # be cleaned.
+ iniset $QUANTUM_TEST_CONFIG_FILE AGENT root_helper "$Q_RR_COMMAND"
_quantum_setup_keystone $QUANTUM_TEST_CONFIG_FILE DEFAULT set_auth_url
_quantum_setup_interface_driver $QUANTUM_TEST_CONFIG_FILE
diff --git a/stack.sh b/stack.sh
index e50cc49..4608648 100755
--- a/stack.sh
+++ b/stack.sh
@@ -251,7 +251,7 @@
NETWORK_GATEWAY=${NETWORK_GATEWAY:-10.0.0.1}
# Find the interface used for the default route
-HOST_IP_IFACE=${HOST_IP_IFACE:-$(ip route | sed -n '/^default/{ s/.*dev \(\w\+\)\s\+.*/\1/; p; }')}
+HOST_IP_IFACE=${HOST_IP_IFACE:-$(ip route | sed -n '/^default/{ s/.*dev \(\w\+\)\s\+.*/\1/; p; }' | head -1)}
# Search for an IP unless an explicit is set by ``HOST_IP`` environment variable
if [ -z "$HOST_IP" -o "$HOST_IP" == "dhcp" ]; then
HOST_IP=""
@@ -965,7 +965,14 @@
if is_service_enabled n-net q-dhcp; then
# Delete traces of nova networks from prior runs
- sudo killall dnsmasq || true
+ # Do not kill any dnsmasq instance spawned by NetworkManager
+ netman_pid=$(pidof NetworkManager || true)
+ if [ -z "$netman_pid" ]; then
+ sudo killall dnsmasq || true
+ else
+ sudo ps h -o pid,ppid -C dnsmasq | grep -v $netman_pid | awk '{print $1}' | sudo xargs kill || true
+ fi
+
clean_iptables
rm -rf ${NOVA_STATE_PATH}/networks
sudo mkdir -p ${NOVA_STATE_PATH}/networks
diff --git a/tools/xen/README.md b/tools/xen/README.md
index f20ad04..1cd45cf 100644
--- a/tools/xen/README.md
+++ b/tools/xen/README.md
@@ -18,7 +18,7 @@
For details on installation, see: http://wiki.openstack.org/XenServer/Install
Here are some sample Xenserver network settings for when you are just
-getting started (I use settings like this with a lappy + cheap wifi router):
+getting started (Settings like this have been used with a laptop + cheap wifi router):
* XenServer Host IP: 192.168.1.10
* XenServer Netmask: 255.255.255.0
@@ -29,9 +29,9 @@
--------------------------
On your XenServer host, run the following commands as root:
-wget --no-check-certificate https://github.com/openstack-dev/devstack/zipball/master
-unzip -o master -d ./devstack
-cd devstack/*/
+ wget --no-check-certificate https://github.com/openstack-dev/devstack/zipball/master
+ unzip -o master -d ./devstack
+ cd devstack/*/
Step 3: Configure your localrc inside the devstack directory
------------------------------------------------------------
diff --git a/tools/xen/install_os_domU.sh b/tools/xen/install_os_domU.sh
index b4fbb69..0e27570 100755
--- a/tools/xen/install_os_domU.sh
+++ b/tools/xen/install_os_domU.sh
@@ -236,6 +236,12 @@
SNAME_FIRST_BOOT="before_first_boot"
function wait_for_VM_to_halt() {
+ set +x
+ echo "Waiting for the VM to halt. Progress in-VM can be checked with vncviewer:"
+ mgmt_ip=$(echo $XENAPI_CONNECTION_URL | tr -d -c '1234567890.')
+ domid=$(xe vm-list name-label="$GUEST_NAME" params=dom-id minimal=true)
+ port=$(xenstore-read /local/domain/$domid/console/vnc-port)
+ echo "vncviewer -via $mgmt_ip localhost:${port:2}"
while true
do
state=$(xe_min vm-list name-label="$GUEST_NAME" power-state=halted)
@@ -243,10 +249,11 @@
then
break
else
- echo "Waiting for "$GUEST_NAME" to finish installation..."
+ echo -n "."
sleep 20
fi
done
+ set -x
}
templateuuid=$(xe template-list name-label="$TNAME")
@@ -405,12 +412,14 @@
# Fail if the expected text is not found
ssh_no_check -q stack@$DOMU_IP 'cat run.sh.log' | grep -q 'stack.sh completed in'
+ set +x
echo "################################################################################"
echo ""
echo "All Finished!"
echo "You can visit the OpenStack Dashboard"
echo "at http://$DOMU_IP, and contact other services at the usual ports."
else
+ set +x
echo "################################################################################"
echo ""
echo "All Finished!"