Rename Marconi to Zaqar
This patch changes all Marconi references to Zaqar. Change-Id: Iec4aeca54c0f383c995fba564bc59daa550d3747 Implements: blueprint project-rename
This commit is contained in:
parent
a6a45467c4
commit
9504bb376d
@ -287,8 +287,8 @@
|
|||||||
<td><a href="lib/ldap.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
<td><a href="lib/ldap.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>lib/marconi</td>
|
<td>lib/zaqar</td>
|
||||||
<td><a href="lib/marconi.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
<td><a href="lib/zaqar.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>lib/neutron</td>
|
<td>lib/neutron</td>
|
||||||
@ -351,8 +351,8 @@
|
|||||||
<td><a href="extras.d/50-ironic.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
<td><a href="extras.d/50-ironic.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>extras.d/70-marconi.sh</td>
|
<td>extras.d/70-zaqar.sh</td>
|
||||||
<td><a href="extras.d/70-marconi.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
<td><a href="extras.d/70-zaqar.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>extras.d/70-sahara.sh</td>
|
<td>extras.d/70-sahara.sh</td>
|
||||||
@ -516,9 +516,6 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>exercises/horizon.sh</td>
|
<td>exercises/horizon.sh</td>
|
||||||
<td><a href="exercises/horizon.sh.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
<td><a href="exercises/horizon.sh.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
</tr>
|
|
||||||
<td>exercises/marconi.sh</td>
|
|
||||||
<td><a href="exercises/marconi.sh.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>exercises/neutron-adv-test.sh</td>
|
<td>exercises/neutron-adv-test.sh</td>
|
||||||
@ -545,6 +542,10 @@
|
|||||||
<td>exercises/volumes.sh</td>
|
<td>exercises/volumes.sh</td>
|
||||||
<td><a href="exercises/volumes.sh.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
<td><a href="exercises/volumes.sh.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>exercises/zaqar.sh</td>
|
||||||
|
<td><a href="exercises/zaqar.sh.html" class="btn btn-small btn-primary table-action">Read »</a></td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# **marconi.sh**
|
# **zaqar.sh**
|
||||||
|
|
||||||
# Sanity check that Marconi started if enabled
|
# Sanity check that Zaqar started if enabled
|
||||||
|
|
||||||
echo "*********************************************************************"
|
echo "*********************************************************************"
|
||||||
echo "Begin DevStack Exercise: $0"
|
echo "Begin DevStack Exercise: $0"
|
||||||
@ -33,9 +33,9 @@ source $TOP_DIR/openrc
|
|||||||
# Import exercise configuration
|
# Import exercise configuration
|
||||||
source $TOP_DIR/exerciserc
|
source $TOP_DIR/exerciserc
|
||||||
|
|
||||||
is_service_enabled marconi-server || exit 55
|
is_service_enabled zaqar-server || exit 55
|
||||||
|
|
||||||
curl http://$SERVICE_HOST:8888/v1/ 2>/dev/null | grep -q 'queue_name' || die $LINENO "Marconi API not functioning!"
|
curl http://$SERVICE_HOST:8888/v1/ 2>/dev/null | grep -q 'queue_name' || die $LINENO "Zaqar API not functioning!"
|
||||||
|
|
||||||
set +o xtrace
|
set +o xtrace
|
||||||
echo "*********************************************************************"
|
echo "*********************************************************************"
|
@ -1,29 +0,0 @@
|
|||||||
# marconi.sh - Devstack extras script to install Marconi
|
|
||||||
|
|
||||||
if is_service_enabled marconi-server; then
|
|
||||||
if [[ "$1" == "source" ]]; then
|
|
||||||
# Initial source
|
|
||||||
source $TOP_DIR/lib/marconi
|
|
||||||
elif [[ "$1" == "stack" && "$2" == "install" ]]; then
|
|
||||||
echo_summary "Installing Marconi"
|
|
||||||
install_marconiclient
|
|
||||||
install_marconi
|
|
||||||
elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then
|
|
||||||
echo_summary "Configuring Marconi"
|
|
||||||
configure_marconi
|
|
||||||
configure_marconiclient
|
|
||||||
|
|
||||||
if is_service_enabled key; then
|
|
||||||
create_marconi_accounts
|
|
||||||
fi
|
|
||||||
|
|
||||||
elif [[ "$1" == "stack" && "$2" == "extra" ]]; then
|
|
||||||
echo_summary "Initializing Marconi"
|
|
||||||
init_marconi
|
|
||||||
start_marconi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "$1" == "unstack" ]]; then
|
|
||||||
stop_marconi
|
|
||||||
fi
|
|
||||||
fi
|
|
29
extras.d/70-zaqar.sh
Normal file
29
extras.d/70-zaqar.sh
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# zaqar.sh - Devstack extras script to install Zaqar
|
||||||
|
|
||||||
|
if is_service_enabled zaqar-server; then
|
||||||
|
if [[ "$1" == "source" ]]; then
|
||||||
|
# Initial source
|
||||||
|
source $TOP_DIR/lib/zaqar
|
||||||
|
elif [[ "$1" == "stack" && "$2" == "install" ]]; then
|
||||||
|
echo_summary "Installing Zaqar"
|
||||||
|
install_zaqarclient
|
||||||
|
install_zaqar
|
||||||
|
elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then
|
||||||
|
echo_summary "Configuring Zaqar"
|
||||||
|
configure_zaqar
|
||||||
|
configure_zaqarclient
|
||||||
|
|
||||||
|
if is_service_enabled key; then
|
||||||
|
create_zaqar_accounts
|
||||||
|
fi
|
||||||
|
|
||||||
|
elif [[ "$1" == "stack" && "$2" == "extra" ]]; then
|
||||||
|
echo_summary "Initializing Zaqar"
|
||||||
|
init_zaqar
|
||||||
|
start_zaqar
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$1" == "unstack" ]]; then
|
||||||
|
stop_zaqar
|
||||||
|
fi
|
||||||
|
fi
|
211
lib/marconi
211
lib/marconi
@ -1,211 +0,0 @@
|
|||||||
# lib/marconi
|
|
||||||
# Install and start **Marconi** service
|
|
||||||
|
|
||||||
# To enable a minimal set of Marconi services, add the following to localrc:
|
|
||||||
#
|
|
||||||
# enable_service marconi-server
|
|
||||||
#
|
|
||||||
# Dependencies:
|
|
||||||
# - functions
|
|
||||||
# - OS_AUTH_URL for auth in api
|
|
||||||
# - DEST set to the destination directory
|
|
||||||
# - SERVICE_PASSWORD, SERVICE_TENANT_NAME for auth in api
|
|
||||||
# - STACK_USER service user
|
|
||||||
|
|
||||||
# stack.sh
|
|
||||||
# ---------
|
|
||||||
# install_marconi
|
|
||||||
# configure_marconi
|
|
||||||
# init_marconi
|
|
||||||
# start_marconi
|
|
||||||
# stop_marconi
|
|
||||||
# cleanup_marconi
|
|
||||||
|
|
||||||
# Save trace setting
|
|
||||||
XTRACE=$(set +o | grep xtrace)
|
|
||||||
set +o xtrace
|
|
||||||
|
|
||||||
|
|
||||||
# Defaults
|
|
||||||
# --------
|
|
||||||
|
|
||||||
# Set up default directories
|
|
||||||
MARCONI_DIR=$DEST/marconi
|
|
||||||
MARCONICLIENT_DIR=$DEST/python-marconiclient
|
|
||||||
MARCONI_CONF_DIR=/etc/marconi
|
|
||||||
MARCONI_CONF=$MARCONI_CONF_DIR/marconi.conf
|
|
||||||
MARCONI_API_LOG_DIR=/var/log/marconi
|
|
||||||
MARCONI_API_LOG_FILE=$MARCONI_API_LOG_DIR/queues.log
|
|
||||||
MARCONI_AUTH_CACHE_DIR=${MARCONI_AUTH_CACHE_DIR:-/var/cache/marconi}
|
|
||||||
|
|
||||||
# Support potential entry-points console scripts
|
|
||||||
MARCONI_BIN_DIR=$(get_python_exec_prefix)
|
|
||||||
|
|
||||||
# Set up database backend
|
|
||||||
MARCONI_BACKEND=${MARCONI_BACKEND:-mongodb}
|
|
||||||
|
|
||||||
|
|
||||||
# Set Marconi repository
|
|
||||||
MARCONI_REPO=${MARCONI_REPO:-${GIT_BASE}/openstack/marconi.git}
|
|
||||||
MARCONI_BRANCH=${MARCONI_BRANCH:-master}
|
|
||||||
|
|
||||||
# Set client library repository
|
|
||||||
MARCONICLIENT_REPO=${MARCONICLIENT_REPO:-${GIT_BASE}/openstack/python-marconiclient.git}
|
|
||||||
MARCONICLIENT_BRANCH=${MARCONICLIENT_BRANCH:-master}
|
|
||||||
|
|
||||||
# Set Marconi Connection Info
|
|
||||||
MARCONI_SERVICE_HOST=${MARCONI_SERVICE_HOST:-$SERVICE_HOST}
|
|
||||||
MARCONI_SERVICE_PORT=${MARCONI_SERVICE_PORT:-8888}
|
|
||||||
MARCONI_SERVICE_PROTOCOL=${MARCONI_SERVICE_PROTOCOL:-$SERVICE_PROTOCOL}
|
|
||||||
|
|
||||||
# Tell Tempest this project is present
|
|
||||||
TEMPEST_SERVICES+=,marconi
|
|
||||||
|
|
||||||
|
|
||||||
# Functions
|
|
||||||
# ---------
|
|
||||||
|
|
||||||
# Test if any Marconi services are enabled
|
|
||||||
# is_marconi_enabled
|
|
||||||
function is_marconi_enabled {
|
|
||||||
[[ ,${ENABLED_SERVICES} =~ ,"marconi-" ]] && return 0
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# cleanup_marconi() - Remove residual data files, anything left over from previous
|
|
||||||
# runs that a clean run would need to clean up
|
|
||||||
function cleanup_marconi {
|
|
||||||
if ! timeout $SERVICE_TIMEOUT sh -c "while ! mongo marconi --eval 'db.dropDatabase();'; do sleep 1; done"; then
|
|
||||||
die $LINENO "Mongo DB did not start"
|
|
||||||
else
|
|
||||||
full_version=$(mongo marconi --eval 'db.dropDatabase();')
|
|
||||||
mongo_version=`echo $full_version | cut -d' ' -f4`
|
|
||||||
required_mongo_version='2.2'
|
|
||||||
if [[ $mongo_version < $required_mongo_version ]]; then
|
|
||||||
die $LINENO "Marconi needs Mongo DB version >= 2.2 to run."
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# configure_marconiclient() - Set config files, create data dirs, etc
|
|
||||||
function configure_marconiclient {
|
|
||||||
setup_develop $MARCONICLIENT_DIR
|
|
||||||
}
|
|
||||||
|
|
||||||
# configure_marconi() - Set config files, create data dirs, etc
|
|
||||||
function configure_marconi {
|
|
||||||
setup_develop $MARCONI_DIR
|
|
||||||
|
|
||||||
[ ! -d $MARCONI_CONF_DIR ] && sudo mkdir -m 755 -p $MARCONI_CONF_DIR
|
|
||||||
sudo chown $USER $MARCONI_CONF_DIR
|
|
||||||
|
|
||||||
[ ! -d $MARCONI_API_LOG_DIR ] && sudo mkdir -m 755 -p $MARCONI_API_LOG_DIR
|
|
||||||
sudo chown $USER $MARCONI_API_LOG_DIR
|
|
||||||
|
|
||||||
iniset $MARCONI_CONF DEFAULT verbose True
|
|
||||||
iniset $MARCONI_CONF DEFAULT use_syslog $SYSLOG
|
|
||||||
iniset $MARCONI_CONF DEFAULT log_file $MARCONI_API_LOG_FILE
|
|
||||||
iniset $MARCONI_CONF 'drivers:transport:wsgi' bind $MARCONI_SERVICE_HOST
|
|
||||||
|
|
||||||
iniset $MARCONI_CONF keystone_authtoken auth_protocol http
|
|
||||||
iniset $MARCONI_CONF keystone_authtoken admin_user marconi
|
|
||||||
iniset $MARCONI_CONF keystone_authtoken admin_password $SERVICE_PASSWORD
|
|
||||||
iniset $MARCONI_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME
|
|
||||||
iniset $MARCONI_CONF keystone_authtoken signing_dir $MARCONI_AUTH_CACHE_DIR
|
|
||||||
|
|
||||||
if [ "$MARCONI_BACKEND" = 'mysql' ] || [ "$MARCONI_BACKEND" = 'postgresql' ] ; then
|
|
||||||
iniset $MARCONI_CONF drivers storage sqlalchemy
|
|
||||||
iniset $MARCONI_CONF 'drivers:storage:sqlalchemy' uri `database_connection_url marconi`
|
|
||||||
elif [ "$MARCONI_BACKEND" = 'mongodb' ] ; then
|
|
||||||
iniset $MARCONI_CONF drivers storage mongodb
|
|
||||||
iniset $MARCONI_CONF 'drivers:storage:mongodb' uri mongodb://localhost:27017/marconi
|
|
||||||
configure_mongodb
|
|
||||||
cleanup_marconi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function configure_mongodb {
|
|
||||||
# Set nssize to 2GB. This increases the number of namespaces supported
|
|
||||||
# # per database.
|
|
||||||
if is_ubuntu; then
|
|
||||||
sudo sed -i -e "
|
|
||||||
s|[^ \t]*#[ \t]*\(nssize[ \t]*=.*\$\)|\1|
|
|
||||||
s|^\(nssize[ \t]*=[ \t]*\).*\$|\1 2047|
|
|
||||||
" /etc/mongodb.conf
|
|
||||||
restart_service mongodb
|
|
||||||
elif is_fedora; then
|
|
||||||
sudo sed -i '/--nssize/!s/OPTIONS=\"/OPTIONS=\"--nssize 2047 /' /etc/sysconfig/mongod
|
|
||||||
restart_service mongod
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# init_marconi() - Initialize etc.
|
|
||||||
function init_marconi {
|
|
||||||
# Create cache dir
|
|
||||||
sudo mkdir -p $MARCONI_AUTH_CACHE_DIR
|
|
||||||
sudo chown $STACK_USER $MARCONI_AUTH_CACHE_DIR
|
|
||||||
rm -f $MARCONI_AUTH_CACHE_DIR/*
|
|
||||||
}
|
|
||||||
|
|
||||||
# install_marconi() - Collect source and prepare
|
|
||||||
function install_marconi {
|
|
||||||
git_clone $MARCONI_REPO $MARCONI_DIR $MARCONI_BRANCH
|
|
||||||
setup_develop $MARCONI_DIR
|
|
||||||
}
|
|
||||||
|
|
||||||
# install_marconiclient() - Collect source and prepare
|
|
||||||
function install_marconiclient {
|
|
||||||
git_clone $MARCONICLIENT_REPO $MARCONICLIENT_DIR $MARCONICLIENT_BRANCH
|
|
||||||
setup_develop $MARCONICLIENT_DIR
|
|
||||||
}
|
|
||||||
|
|
||||||
# start_marconi() - Start running processes, including screen
|
|
||||||
function start_marconi {
|
|
||||||
if [[ "$USE_SCREEN" = "False" ]]; then
|
|
||||||
screen_it marconi-server "marconi-server --config-file $MARCONI_CONF --daemon"
|
|
||||||
else
|
|
||||||
screen_it marconi-server "marconi-server --config-file $MARCONI_CONF"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Waiting for Marconi to start..."
|
|
||||||
if ! timeout $SERVICE_TIMEOUT sh -c "while ! wget --no-proxy -q -O- $MARCONI_SERVICE_PROTOCOL://$MARCONI_SERVICE_HOST:$MARCONI_SERVICE_PORT/v1/health; do sleep 1; done"; then
|
|
||||||
die $LINENO "Marconi did not start"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# stop_marconi() - Stop running processes
|
|
||||||
function stop_marconi {
|
|
||||||
# Kill the marconi screen windows
|
|
||||||
for serv in marconi-server; do
|
|
||||||
screen -S $SCREEN_NAME -p $serv -X kill
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
function create_marconi_accounts {
|
|
||||||
SERVICE_TENANT=$(openstack project list | awk "/ $SERVICE_TENANT_NAME / { print \$2 }")
|
|
||||||
ADMIN_ROLE=$(openstack role list | awk "/ admin / { print \$2 }")
|
|
||||||
|
|
||||||
MARCONI_USER=$(get_or_create_user "marconi" \
|
|
||||||
"$SERVICE_PASSWORD" $SERVICE_TENANT)
|
|
||||||
get_or_add_user_role $ADMIN_ROLE $MARCONI_USER $SERVICE_TENANT
|
|
||||||
|
|
||||||
if [[ "$KEYSTONE_CATALOG_BACKEND" = 'sql' ]]; then
|
|
||||||
|
|
||||||
MARCONI_SERVICE=$(get_or_create_service "marconi" \
|
|
||||||
"queuing" "Marconi Service")
|
|
||||||
get_or_create_endpoint $MARCONI_SERVICE \
|
|
||||||
"$REGION_NAME" \
|
|
||||||
"$MARCONI_SERVICE_PROTOCOL://$MARCONI_SERVICE_HOST:$MARCONI_SERVICE_PORT" \
|
|
||||||
"$MARCONI_SERVICE_PROTOCOL://$MARCONI_SERVICE_HOST:$MARCONI_SERVICE_PORT" \
|
|
||||||
"$MARCONI_SERVICE_PROTOCOL://$MARCONI_SERVICE_HOST:$MARCONI_SERVICE_PORT"
|
|
||||||
fi
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Restore xtrace
|
|
||||||
$XTRACE
|
|
||||||
|
|
||||||
# Local variables:
|
|
||||||
# mode: shell-script
|
|
||||||
# End:
|
|
211
lib/zaqar
Normal file
211
lib/zaqar
Normal file
@ -0,0 +1,211 @@
|
|||||||
|
# lib/zaqar
|
||||||
|
# Install and start **Zaqar** service
|
||||||
|
|
||||||
|
# To enable a minimal set of Zaqar services, add the following to localrc:
|
||||||
|
#
|
||||||
|
# enable_service zaqar-server
|
||||||
|
#
|
||||||
|
# Dependencies:
|
||||||
|
# - functions
|
||||||
|
# - OS_AUTH_URL for auth in api
|
||||||
|
# - DEST set to the destination directory
|
||||||
|
# - SERVICE_PASSWORD, SERVICE_TENANT_NAME for auth in api
|
||||||
|
# - STACK_USER service user
|
||||||
|
|
||||||
|
# stack.sh
|
||||||
|
# ---------
|
||||||
|
# install_zaqar
|
||||||
|
# configure_zaqar
|
||||||
|
# init_zaqar
|
||||||
|
# start_zaqar
|
||||||
|
# stop_zaqar
|
||||||
|
# cleanup_zaqar
|
||||||
|
|
||||||
|
# Save trace setting
|
||||||
|
XTRACE=$(set +o | grep xtrace)
|
||||||
|
set +o xtrace
|
||||||
|
|
||||||
|
|
||||||
|
# Defaults
|
||||||
|
# --------
|
||||||
|
|
||||||
|
# Set up default directories
|
||||||
|
ZAQAR_DIR=$DEST/zaqar
|
||||||
|
ZAQARCLIENT_DIR=$DEST/python-zaqarclient
|
||||||
|
ZAQAR_CONF_DIR=/etc/zaqar
|
||||||
|
ZAQAR_CONF=$ZAQAR_CONF_DIR/zaqar.conf
|
||||||
|
ZAQAR_API_LOG_DIR=/var/log/zaqar
|
||||||
|
ZAQAR_API_LOG_FILE=$ZAQAR_API_LOG_DIR/queues.log
|
||||||
|
ZAQAR_AUTH_CACHE_DIR=${ZAQAR_AUTH_CACHE_DIR:-/var/cache/zaqar}
|
||||||
|
|
||||||
|
# Support potential entry-points console scripts
|
||||||
|
ZAQAR_BIN_DIR=$(get_python_exec_prefix)
|
||||||
|
|
||||||
|
# Set up database backend
|
||||||
|
ZAQAR_BACKEND=${ZAQAR_BACKEND:-mongodb}
|
||||||
|
|
||||||
|
|
||||||
|
# Set Zaqar repository
|
||||||
|
ZAQAR_REPO=${ZAQAR_REPO:-${GIT_BASE}/openstack/zaqar.git}
|
||||||
|
ZAQAR_BRANCH=${ZAQAR_BRANCH:-master}
|
||||||
|
|
||||||
|
# Set client library repository
|
||||||
|
ZAQARCLIENT_REPO=${ZAQARCLIENT_REPO:-${GIT_BASE}/openstack/python-zaqarclient.git}
|
||||||
|
ZAQARCLIENT_BRANCH=${ZAQARCLIENT_BRANCH:-master}
|
||||||
|
|
||||||
|
# Set Zaqar Connection Info
|
||||||
|
ZAQAR_SERVICE_HOST=${ZAQAR_SERVICE_HOST:-$SERVICE_HOST}
|
||||||
|
ZAQAR_SERVICE_PORT=${ZAQAR_SERVICE_PORT:-8888}
|
||||||
|
ZAQAR_SERVICE_PROTOCOL=${ZAQAR_SERVICE_PROTOCOL:-$SERVICE_PROTOCOL}
|
||||||
|
|
||||||
|
# Tell Tempest this project is present
|
||||||
|
TEMPEST_SERVICES+=,zaqar
|
||||||
|
|
||||||
|
|
||||||
|
# Functions
|
||||||
|
# ---------
|
||||||
|
|
||||||
|
# Test if any Zaqar services are enabled
|
||||||
|
# is_zaqar_enabled
|
||||||
|
function is_zaqar_enabled {
|
||||||
|
[[ ,${ENABLED_SERVICES} =~ ,"zaqar-" ]] && return 0
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# cleanup_zaqar() - Remove residual data files, anything left over from previous
|
||||||
|
# runs that a clean run would need to clean up
|
||||||
|
function cleanup_zaqar {
|
||||||
|
if ! timeout $SERVICE_TIMEOUT sh -c "while ! mongo zaqar --eval 'db.dropDatabase();'; do sleep 1; done"; then
|
||||||
|
die $LINENO "Mongo DB did not start"
|
||||||
|
else
|
||||||
|
full_version=$(mongo zaqar --eval 'db.dropDatabase();')
|
||||||
|
mongo_version=`echo $full_version | cut -d' ' -f4`
|
||||||
|
required_mongo_version='2.2'
|
||||||
|
if [[ $mongo_version < $required_mongo_version ]]; then
|
||||||
|
die $LINENO "Zaqar needs Mongo DB version >= 2.2 to run."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# configure_zaqarclient() - Set config files, create data dirs, etc
|
||||||
|
function configure_zaqarclient {
|
||||||
|
setup_develop $ZAQARCLIENT_DIR
|
||||||
|
}
|
||||||
|
|
||||||
|
# configure_zaqar() - Set config files, create data dirs, etc
|
||||||
|
function configure_zaqar {
|
||||||
|
setup_develop $ZAQAR_DIR
|
||||||
|
|
||||||
|
[ ! -d $ZAQAR_CONF_DIR ] && sudo mkdir -m 755 -p $ZAQAR_CONF_DIR
|
||||||
|
sudo chown $USER $ZAQAR_CONF_DIR
|
||||||
|
|
||||||
|
[ ! -d $ZAQAR_API_LOG_DIR ] && sudo mkdir -m 755 -p $ZAQAR_API_LOG_DIR
|
||||||
|
sudo chown $USER $ZAQAR_API_LOG_DIR
|
||||||
|
|
||||||
|
iniset $ZAQAR_CONF DEFAULT verbose True
|
||||||
|
iniset $ZAQAR_CONF DEFAULT use_syslog $SYSLOG
|
||||||
|
iniset $ZAQAR_CONF DEFAULT log_file $ZAQAR_API_LOG_FILE
|
||||||
|
iniset $ZAQAR_CONF 'drivers:transport:wsgi' bind $ZAQAR_SERVICE_HOST
|
||||||
|
|
||||||
|
iniset $ZAQAR_CONF keystone_authtoken auth_protocol http
|
||||||
|
iniset $ZAQAR_CONF keystone_authtoken admin_user zaqar
|
||||||
|
iniset $ZAQAR_CONF keystone_authtoken admin_password $SERVICE_PASSWORD
|
||||||
|
iniset $ZAQAR_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME
|
||||||
|
iniset $ZAQAR_CONF keystone_authtoken signing_dir $ZAQAR_AUTH_CACHE_DIR
|
||||||
|
|
||||||
|
if [ "$ZAQAR_BACKEND" = 'mysql' ] || [ "$ZAQAR_BACKEND" = 'postgresql' ] ; then
|
||||||
|
iniset $ZAQAR_CONF drivers storage sqlalchemy
|
||||||
|
iniset $ZAQAR_CONF 'drivers:storage:sqlalchemy' uri `database_connection_url zaqar`
|
||||||
|
elif [ "$ZAQAR_BACKEND" = 'mongodb' ] ; then
|
||||||
|
iniset $ZAQAR_CONF drivers storage mongodb
|
||||||
|
iniset $ZAQAR_CONF 'drivers:storage:mongodb' uri mongodb://localhost:27017/zaqar
|
||||||
|
configure_mongodb
|
||||||
|
cleanup_zaqar
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function configure_mongodb {
|
||||||
|
# Set nssize to 2GB. This increases the number of namespaces supported
|
||||||
|
# # per database.
|
||||||
|
if is_ubuntu; then
|
||||||
|
sudo sed -i -e "
|
||||||
|
s|[^ \t]*#[ \t]*\(nssize[ \t]*=.*\$\)|\1|
|
||||||
|
s|^\(nssize[ \t]*=[ \t]*\).*\$|\1 2047|
|
||||||
|
" /etc/mongodb.conf
|
||||||
|
restart_service mongodb
|
||||||
|
elif is_fedora; then
|
||||||
|
sudo sed -i '/--nssize/!s/OPTIONS=\"/OPTIONS=\"--nssize 2047 /' /etc/sysconfig/mongod
|
||||||
|
restart_service mongod
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# init_zaqar() - Initialize etc.
|
||||||
|
function init_zaqar {
|
||||||
|
# Create cache dir
|
||||||
|
sudo mkdir -p $ZAQAR_AUTH_CACHE_DIR
|
||||||
|
sudo chown $STACK_USER $ZAQAR_AUTH_CACHE_DIR
|
||||||
|
rm -f $ZAQAR_AUTH_CACHE_DIR/*
|
||||||
|
}
|
||||||
|
|
||||||
|
# install_zaqar() - Collect source and prepare
|
||||||
|
function install_zaqar {
|
||||||
|
git_clone $ZAQAR_REPO $ZAQAR_DIR $ZAQAR_BRANCH
|
||||||
|
setup_develop $ZAQAR_DIR
|
||||||
|
}
|
||||||
|
|
||||||
|
# install_zaqarclient() - Collect source and prepare
|
||||||
|
function install_zaqarclient {
|
||||||
|
git_clone $ZAQARCLIENT_REPO $ZAQARCLIENT_DIR $ZAQARCLIENT_BRANCH
|
||||||
|
setup_develop $ZAQARCLIENT_DIR
|
||||||
|
}
|
||||||
|
|
||||||
|
# start_zaqar() - Start running processes, including screen
|
||||||
|
function start_zaqar {
|
||||||
|
if [[ "$USE_SCREEN" = "False" ]]; then
|
||||||
|
screen_it zaqar-server "zaqar-server --config-file $ZAQAR_CONF --daemon"
|
||||||
|
else
|
||||||
|
screen_it zaqar-server "zaqar-server --config-file $ZAQAR_CONF"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Waiting for Zaqar to start..."
|
||||||
|
if ! timeout $SERVICE_TIMEOUT sh -c "while ! wget --no-proxy -q -O- $ZAQAR_SERVICE_PROTOCOL://$ZAQAR_SERVICE_HOST:$ZAQAR_SERVICE_PORT/v1/health; do sleep 1; done"; then
|
||||||
|
die $LINENO "Zaqar did not start"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# stop_zaqar() - Stop running processes
|
||||||
|
function stop_zaqar {
|
||||||
|
# Kill the zaqar screen windows
|
||||||
|
for serv in zaqar-server; do
|
||||||
|
screen -S $SCREEN_NAME -p $serv -X kill
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
function create_zaqar_accounts {
|
||||||
|
SERVICE_TENANT=$(openstack project list | awk "/ $SERVICE_TENANT_NAME / { print \$2 }")
|
||||||
|
ADMIN_ROLE=$(openstack role list | awk "/ admin / { print \$2 }")
|
||||||
|
|
||||||
|
ZAQAR_USER=$(get_or_create_user "zaqar" \
|
||||||
|
"$SERVICE_PASSWORD" $SERVICE_TENANT)
|
||||||
|
get_or_add_user_role $ADMIN_ROLE $ZAQAR_USER $SERVICE_TENANT
|
||||||
|
|
||||||
|
if [[ "$KEYSTONE_CATALOG_BACKEND" = 'sql' ]]; then
|
||||||
|
|
||||||
|
ZAQAR_SERVICE=$(get_or_create_service "zaqar" \
|
||||||
|
"queuing" "Zaqar Service")
|
||||||
|
get_or_create_endpoint $ZAQAR_SERVICE \
|
||||||
|
"$REGION_NAME" \
|
||||||
|
"$ZAQAR_SERVICE_PROTOCOL://$ZAQAR_SERVICE_HOST:$ZAQAR_SERVICE_PORT" \
|
||||||
|
"$ZAQAR_SERVICE_PROTOCOL://$ZAQAR_SERVICE_HOST:$ZAQAR_SERVICE_PORT" \
|
||||||
|
"$ZAQAR_SERVICE_PROTOCOL://$ZAQAR_SERVICE_HOST:$ZAQAR_SERVICE_PORT"
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Restore xtrace
|
||||||
|
$XTRACE
|
||||||
|
|
||||||
|
# Local variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# End:
|
Loading…
x
Reference in New Issue
Block a user