Allow wget to handle Non-English output
The stack.sh has a loop to wait for keystone to start. But the output of wget tool has been globalized
which means it won't return the English word 'refused' on Non-English environment even the keystone is
not up. So the script will assume the keystone has been started and continue. The command of keystone
tenant-create always failed immediately after skipping this loop since it require keystone to be started
to authenticate. That's why you can see authentication error in the log because the tenant information
was not correctly set up.
Fix bug 1019942
Change-Id: Icc2bd9551e235173683e3677880c2641faee62a9
diff --git a/stack.sh b/stack.sh
index a035f55..98af10a 100755
--- a/stack.sh
+++ b/stack.sh
@@ -2008,7 +2008,7 @@
# launch keystone and wait for it to answer before continuing
screen_it key "cd $KEYSTONE_DIR && $KEYSTONE_DIR/bin/keystone-all --config-file $KEYSTONE_CONF $KEYSTONE_LOG_CONFIG -d --debug"
echo "Waiting for keystone to start..."
- if ! timeout $SERVICE_TIMEOUT sh -c "while http_proxy= wget -O- $KEYSTONE_AUTH_PROTOCOL://$SERVICE_HOST:$KEYSTONE_API_PORT/v2.0/ 2>&1 | grep -q 'refused'; do sleep 1; done"; then
+ if ! timeout $SERVICE_TIMEOUT sh -c "while ! http_proxy= curl -s $KEYSTONE_AUTH_PROTOCOL://$SERVICE_HOST:$KEYSTONE_API_PORT/v2.0/ >/dev/null; do sleep 1; done"; then
echo "keystone did not start"
exit 1
fi