summaryrefslogtreecommitdiff
path: root/docker/heat/heat-api/start.sh
blob: b6565c207c9d2314f3b33181522d5888958c48f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/bash
set -e

. /opt/kolla/kolla-common.sh
. /opt/kolla/config-heat.sh

check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \
                    HEAT_KEYSTONE_USER HEAT_KEYSTONE_PASSWORD \
                    KEYSTONE_AUTH_PROTOCOL ADMIN_TENANT_NAME \
                    HEAT_API_SERVICE_HOST PUBLIC_IP

check_for_keystone

export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}"
export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0"
crux user-create -n ${HEAT_KEYSTONE_USER} \
    -p ${HEAT_KEYSTONE_PASSWORD} \
    -t ${ADMIN_TENANT_NAME} \
    -r admin

crux endpoint-create --remove-all -n ${HEAT_KEYSTONE_USER} -t orchestration \
    -I "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_SERVICE_HOST}:8004/v1/%(tenant_id)s" \
    -P "${KEYSTONE_AUTH_PROTOCOL}://${PUBLIC_IP}:8004/v1/%(tenant_id)s" \
    -A "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_SERVICE_HOST}:8004/v1/%(tenant_id)s"

#crux endpoint-create --remove-all -n ${HEAT_KEYSTONE_USER} -t cloudformation \
#    -I "http://${HEAT_CFN_API_SERVICE_HOST}:8000/v1" \
#    -P "http://${PUBLIC_IP}:8000/v1" \
#    -A "http://${HEAT_CFN_API_SERVICE_HOST}:8000/v1"

# will use crux after https://github.com/larsks/crux/issues/1 is implemented
openstack role list --os-token="${KEYSTONE_ADMIN_TOKEN}" --os-url $SERVICE_ENDPOINT -f csv | tail -n +2 | awk -F, '{print $2}' | grep heat_stack_user || keystone role-create --name heat_stack_user

exec /usr/bin/heat-api