diff --git a/README.md b/README.md index 5caa7a24ff2e4b5d59c385d6c5e3b8478607ae71..7c1c3e7edf85614362313cdb7c3f792f755c59e4 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,7 @@ services: * Mongodb * Ceilometer * Horizon +* Zaqar ``` $ sudo docker search kollaglue diff --git a/docker/base/service_hosts.sh b/docker/base/service_hosts.sh index 99e52f8fca9f9b940a6bc59ae5122063533c6449..c3006f720acdb8eafadb5073eea022035a768441 100755 --- a/docker/base/service_hosts.sh +++ b/docker/base/service_hosts.sh @@ -40,3 +40,6 @@ : ${NOVA_METADATA_API_SERVICE_PORT:=8775} : ${RABBITMQ_SERVICE_HOST:=$RABBITMQ_PORT_5672_TCP_ADDR} : ${RABBITMQ_SERVICE_PORT:=5672} +: ${ZAQAR_SERVER_SERVICE_HOST:=$ZAQAR_SERVER_PORT_8888_TCP_ADDR} +: ${ZAQAR_SERVER_SERVICE_PORT:=8888} + diff --git a/docker/zaqar/Dockerfile b/docker/zaqar/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..956f908254edc378869a12c8ffdfd0a8ec7e5c16 --- /dev/null +++ b/docker/zaqar/Dockerfile @@ -0,0 +1,9 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +RUN yum -y install openstack-zaqar && yum clean all + +ADD ./start.sh /start.sh +ADD ./check.sh /check.sh + +CMD ["/start.sh"] diff --git a/docker/zaqar/build b/docker/zaqar/build new file mode 120000 index 0000000000000000000000000000000000000000..d2accf7d392415bc934ff62f1ea08a67b549b625 --- /dev/null +++ b/docker/zaqar/build @@ -0,0 +1 @@ +../../tools/build-docker-image \ No newline at end of file diff --git a/docker/zaqar/check.sh b/docker/zaqar/check.sh new file mode 100755 index 0000000000000000000000000000000000000000..4b3cdbb464930b0d2a5ce30e637aaa3ac9b9c4ab --- /dev/null +++ b/docker/zaqar/check.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +status=$(curl -s -w "%{http_code}" -o /dev/null http://localhost:8888/v1/queues) + +if [[ $status -ne 200 && $status -ne 204 ]]; then + echo "ERROR($status): queue list failed" + exit $status +fi + +exit 0 diff --git a/docker/zaqar/start.sh b/docker/zaqar/start.sh new file mode 100755 index 0000000000000000000000000000000000000000..6c68fccf22e0d941bd10b5e9bd776ab83172e07a --- /dev/null +++ b/docker/zaqar/start.sh @@ -0,0 +1,64 @@ +#!/bin/sh + +set -e + +. /opt/kolla/kolla-common.sh + +: ${ADMIN_TENANT_NAME:=admin} +: ${ZAQAR_KEYSTONE_USER:=zaqar} +: ${KEYSTONE_AUTH_PROTOCOL:=http} + +check_required_vars ZAQAR_KEYSTONE_PASSWORD ZAQAR_SERVER_SERVICE_HOST \ + KEYSTONE_ADMIN_SERVICE_HOST KEYSTONE_ADMIN_TOKEN \ + PUBLIC_IP +dump_vars + +#check_for_mongodb +check_for_keystone + +cat > /openrc <<EOF +export OS_AUTH_URL="http://${KEYSTONE_PUBLIC_SERVICE_HOST}:5000/v2.0" +export OS_USERNAME="${ZAQAR_KEYSTONE_USER}" +export OS_PASSWORD="${ZAQAR_KEYSTONE_PASSWORD}" +export OS_TENANT_NAME="${ADMIN_TENANT_NAME}" +EOF + +cfg=/etc/zaqar/zaqar.conf + +crudini --set $cfg DEFAULT log_file \ + "" +crudini --set $cfg DEFAULT use_stderr \ + true + +crudini --set $cfg drivers storage \ + sqlite + +crudini --set $cfg keystone_authtoken admin_password \ + "${ZAQAR_KEYSTONE_PASSWORD}" +crudini --set $cfg keystone_authtoken admin_user \ + "${ZAQAR_KEYSTONE_USER}" +crudini --set $cfg keystone_authtoken admin_tenant_name \ + "${ADMIN_TENANT_NAME}" +crudini --set $cfg keystone_authtoken auth_uri \ + "${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_PUBLIC_SERVICE_HOST}:5000/v2.0" +crudini --set $cfg keystone_authtoken auth_protocol \ + "${KEYSTONE_AUTH_PROTOCOL}" +crudini --set $cfg keystone_authtoken auth_host \ + "${KEYSTONE_PUBLIC_SERVICE_HOST}" +crudini --set $cfg keystone_authtoken auth_port \ + 5000 + + +export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" +crux user-create -n ${ZAQAR_KEYSTONE_USER} \ + -p ${ZAQAR_KEYSTONE_PASSWORD} \ + -t ${ADMIN_TENANT_NAME} \ + -r admin + +crux endpoint-create --remove-all -n ${ZAQAR_KEYSTONE_USER} -t messaging \ + -I "${KEYSTONE_AUTH_PROTOCOL}://${ZAQAR_SERVER_SERVICE_HOST}:8888" \ + -P "${KEYSTONE_AUTH_PROTOCOL}://${PUBLIC_IP}:8888" \ + -A "${KEYSTONE_AUTH_PROTOCOL}://${ZAQAR_SERVER_SERVICE_HOST}:8888" + +exec /usr/bin/zaqar-server