diff options
| author | Jeff Peeler <jpeeler@redhat.com> | 2014-10-14 11:44:30 -0400 |
|---|---|---|
| committer | Jeff Peeler <jpeeler@redhat.com> | 2014-10-20 17:35:41 -0400 |
| commit | 40ba2909d8f470a48221fa7f005ea3f2dfdf8704 (patch) | |
| tree | 6716e2bb0957000102a979e8987a041c4ecf05f7 /docker/heat/heat-engine/start.sh | |
| parent | ad615338cc141105253f772315a5905a86c91a42 (diff) | |
| download | kolla-40ba2909d8f470a48221fa7f005ea3f2dfdf8704.tar.gz kolla-40ba2909d8f470a48221fa7f005ea3f2dfdf8704.zip | |
Implement containers for heat-engine and heat-api
Loosely followed this document for setting up Heat:
http://docs.openstack.org/icehouse/install-guide/install/yum/content/heat-install.html
Some gotchas:
- crux doesn't require escaping parenthesis for endpoint creation like
keystone client
- heat icehouse packages are configured for qpid, so kombu had to be
specified specifically
This firewall reference was handy for port information:
http://docs.openstack.org/trunk/config-reference/content/firewalls-default-ports.html
Implements: blueprint kube-heat-container
Change-Id: Ie4291a6c4c2b85a23a71fc0a003d9160bf0a32b8
Diffstat (limited to 'docker/heat/heat-engine/start.sh')
| -rwxr-xr-x[-rw-r--r--] | docker/heat/heat-engine/start.sh | 42 |
1 files changed, 10 insertions, 32 deletions
diff --git a/docker/heat/heat-engine/start.sh b/docker/heat/heat-engine/start.sh index 306cbbace..0ab9e4800 100644..100755 --- a/docker/heat/heat-engine/start.sh +++ b/docker/heat/heat-engine/start.sh @@ -1,40 +1,18 @@ #!/bin/sh -: ${GLANCE_DB_USER:=heat} -: ${GLANCE_DB_NAME:=heat} -: ${KEYSTONE_AUTH_PROTOCOL:=http} -: ${GLANCE_KEYSTONE_USER:=heat} -: ${ADMIN_TENANT_NAME:=admin} +. /opt/kolla/kolla-common.sh +. /opt/kolla/config-heat.sh -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 - exit 1 -fi +check_required_vars MARIADB_SERVICE_HOST DB_ROOT_PASSWORD \ + HEAT_DB_NAME HEAT_DB_USER HEAT_DB_PASSWORD +check_for_db -if ! [ "$DB_ROOT_PASSWORD" ]; then - echo "*** Missing DB_ROOT_PASSWORD" >&2 - exit 1 -fi - -if ! [ "$GLANCE_DB_PASSWORD" ]; then - GLANCE_DB_PASSWORD=$(openssl rand -hex 15) - export GLANCE_DB_PASSWORD -fi - -sh /opt/heat/config-heat.sh engine - -mysql -h ${MARIADB_PORT_3306_TCP_ADDR} -u root \ - -p${DB_ROOT_PASSWORD} mysql <<EOF -CREATE DATABASE IF NOT EXISTS ${GLANCE_DB_NAME}; -GRANT ALL PRIVILEGES ON heat* TO - '${GLANCE_DB_USER}'@'%' IDENTIFIED BY '${GLANCE_DB_PASSWORD}' +mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql <<EOF +CREATE DATABASE IF NOT EXISTS ${HEAT_DB_NAME} DEFAULT CHARACTER SET utf8; +GRANT ALL PRIVILEGES ON ${HEAT_DB_NAME}.* TO + '${HEAT_DB_USER}'@'%' IDENTIFIED BY '${HEAT_DB_PASSWORD}' EOF -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_PORT_35357_TCP_ADDR}:35357/v2.0" - -/bin/keystone user-create --name ${GLANCE_KEYSTONE_USER} --pass ${GLANCE_ADMIN_PASSWORD} -/bin/keystone role-create --name ${GLANCE_KEYSTONE_USER} -/bin/keystone user-role-add --user ${GLANCE_KEYSTONE_USER} --role admin --tenant ${ADMIN_TENANT_NAME} +/usr/bin/heat-manage db_sync exec /usr/bin/heat-engine |
