Remove config-internal for Heat

Change-Id: I33cf4afbb532c6268bdc2017211ea78733a42fd7
Partially-implements: blueprint remove-config-internal
This commit is contained in:
Sam Yaple 2015-08-07 18:53:38 +00:00
parent a5e907a8e9
commit 51e20db747
33 changed files with 19 additions and 276 deletions

View File

@ -6,9 +6,7 @@ RUN yum -y install \
python-openstackclient \
&& yum clean all
COPY ./start.sh /start.sh
COPY ./check.sh /check.sh
COPY config-internal.sh config-external.sh /opt/kolla/
COPY start.sh /
COPY config-external.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api-cfn/check.sh

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api-cfn/config-internal.sh

View File

@ -8,9 +8,7 @@ RUN yum -y install \
python-openstackclient \
&& yum clean all
COPY ./start.sh /start.sh
COPY ./check.sh /check.sh
COPY config-internal.sh config-external.sh /opt/kolla/
COPY start.sh /
COPY config-external.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api/check.sh

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api/config-internal.sh

2
docker/centos/binary/heat/heat-base/Dockerfile Executable file → Normal file
View File

@ -4,5 +4,3 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla)
RUN yum -y install \
python-oslo-reports \
&& yum clean all
COPY config-heat.sh /opt/kolla/

View File

@ -1 +0,0 @@
../../../../common/heat/heat-base/config-heat.sh

View File

@ -9,8 +9,7 @@ RUN yum -y install \
openstack-heat-engine \
&& yum clean all
COPY ./start.sh /start.sh
COPY config-internal.sh config-external.sh /opt/kolla/
COPY start.sh /
COPY config-external.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-engine/config-internal.sh

View File

@ -1,9 +1,7 @@
FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%heat-base:%%KOLLA_TAG%%
MAINTAINER Kolla Project (https://launchpad.net/kolla)
ADD ./start.sh /start.sh
ADD ./check.sh /check.sh
COPY config-internal.sh config-external.sh /opt/kolla/
COPY start.sh /
COPY config-external.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api-cfn/check.sh

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api-cfn/config-internal.sh

View File

@ -1,9 +1,7 @@
FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%heat-base:%%KOLLA_TAG%%
MAINTAINER Kolla Project (https://launchpad.net/kolla)
ADD ./start.sh /start.sh
ADD ./check.sh /check.sh
COPY config-internal.sh config-external.sh /opt/kolla/
COPY start.sh /
COPY config-external.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api/check.sh

View File

@ -1 +0,0 @@
../../../../common/heat/heat-api/config-internal.sh

4
docker/centos/source/heat/heat-base/Dockerfile Executable file → Normal file
View File

@ -11,7 +11,3 @@ RUN cd /heat \
&& mkdir /etc/heat /var/log/heat \
&& cp -r /heat/etc/* /etc/heat/ \
&& rm -rf /root/.cache
COPY config-heat.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-base/config-heat.sh

View File

@ -1,8 +1,7 @@
FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%heat-base:%%KOLLA_TAG%%
MAINTAINER Kolla Project (https://launchpad.net/kolla)
ADD ./start.sh /start.sh
COPY config-internal.sh config-external.sh /opt/kolla/
COPY start.sh /
COPY config-external.sh /opt/kolla/
CMD ["/start.sh"]

View File

@ -1 +0,0 @@
../../../../common/heat/heat-engine/config-internal.sh

View File

@ -1,16 +0,0 @@
#!/bin/bash
RES=0
. /openrc
if ! keystone token-get > /dev/null; then
echo "ERROR: keystone token-get failed" >&2
RES=1
else
if ! heat stack-list > /dev/null; then
echo "ERROR: heat stack-list failed" >&2
RES=1
fi
fi
exit $RES

0
docker/common/heat/heat-api-cfn/config-external.sh Executable file → Normal file
View File

View File

@ -1,32 +0,0 @@
#!/bin/bash
set -e
. /opt/kolla/kolla-common.sh
. /opt/kolla/config-heat.sh
check_required_vars ADMIN_TENANT_NAME \
HEAT_API_CFN_SERVICE_HOST \
HEAT_API_CFN_SERVICE_PORT \
HEAT_CFN_KEYSTONE_PASSWORD \
HEAT_CFN_KEYSTONE_USER \
KEYSTONE_ADMIN_SERVICE_HOST \
KEYSTONE_ADMIN_SERVICE_PORT \
KEYSTONE_ADMIN_TOKEN \
KEYSTONE_AUTH_PROTOCOL
fail_unless_os_service_running keystone
export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}"
export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0"
crux user-create -n ${HEAT_CFN_KEYSTONE_USER} \
-p ${HEAT_CFN_KEYSTONE_PASSWORD} \
-t ${ADMIN_TENANT_NAME} \
-r admin
crux endpoint-create --remove-all -n ${HEAT_CFN_KEYSTONE_USER} -t cloudformation \
-I "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_CFN_SERVICE_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1" \
-P "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_CFN_SERVICE_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1" \
-A "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_CFN_SERVICE_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1"
exec /usr/bin/heat-api-cfn

View File

@ -7,7 +7,7 @@ ARGS=""
# Loading common functions.
source /opt/kolla/kolla-common.sh
# Config-internal script exec out of this function, it does not return here.
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,16 +0,0 @@
#!/bin/bash
RES=0
. /openrc
if ! keystone token-get > /dev/null; then
echo "ERROR: keystone token-get failed" >&2
RES=1
else
if ! heat stack-list > /dev/null; then
echo "ERROR: heat stack-list failed" >&2
RES=1
fi
fi
exit $RES

0
docker/common/heat/heat-api/config-external.sh Executable file → Normal file
View File

View File

@ -1,33 +0,0 @@
#!/bin/bash
set -e
. /opt/kolla/kolla-common.sh
. /opt/kolla/config-heat.sh
check_required_vars ADMIN_TENANT_NAME \
HEAT_API_SERVICE_HOST \
HEAT_KEYSTONE_PASSWORD \
HEAT_KEYSTONE_USER \
KEYSTONE_ADMIN_SERVICE_HOST \
KEYSTONE_ADMIN_TOKEN \
KEYSTONE_AUTH_PROTOCOL \
PUBLIC_IP
fail_unless_os_service_running 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"
# 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

View File

@ -7,7 +7,7 @@ ARGS=""
# Loading common functions.
source /opt/kolla/kolla-common.sh
# Config-internal script exec out of this function, it does not return here.
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,74 +0,0 @@
#!/bin/bash
set -e
. /opt/kolla/kolla-common.sh
check_required_vars HEAT_API_CFN_SERVICE_PORT \
HEAT_API_CFN_URL_HOST \
HEAT_DB_PASSWORD \
HEAT_DOMAIN_PASS \
HEAT_KEYSTONE_PASSWORD \
KEYSTONE_PUBLIC_SERVICE_HOST \
KEYSTONE_PUBLIC_SERVICE_PORT \
MARIADB_SERVICE_HOST \
RABBITMQ_SERVICE_HOST
fail_unless_db
dump_vars
# this should use the keystone admin port
# https://bugs.launchpad.net/kolla/+bug/1469209
cat > /openrc <<EOF
export OS_AUTH_URL="http://${KEYSTONE_PUBLIC_SERVICE_HOST}:\
${KEYSTONE_PUBLIC_SERVICE_PORT}/v2.0"
export OS_USERNAME="${HEAT_KEYSTONE_USER}"
export OS_PASSWORD="${HEAT_KEYSTONE_PASSWORD}"
export OS_TENANT_NAME="${ADMIN_TENANT_NAME}"
EOF
crudini --set /etc/heat/heat.conf DEFAULT log_file \
""
crudini --set /etc/heat/heat.conf DEFAULT use_stderr \
true
crudini --set /etc/heat/heat.conf DEFAULT rpc_backend \
heat.openstack.common.rpc.impl_kombu
crudini --set /etc/heat/heat.conf DEFAULT rabbit_host \
"${RABBITMQ_SERVICE_HOST}"
crudini --set /etc/heat/heat.conf DEFAULT rabbit_userid \
"${RABBIT_USER}"
crudini --set /etc/heat/heat.conf DEFAULT rabbit_password \
"${RABBIT_PASSWORD}"
crudini --set /etc/heat/heat.conf database connection \
mysql://${HEAT_DB_USER}:${HEAT_DB_PASSWORD}@${MARIADB_SERVICE_HOST}/${HEAT_DB_NAME}
crudini --set /etc/heat/heat.conf keystone_authtoken auth_protocol \
"${KEYSTONE_AUTH_PROTOCOL}"
crudini --set /etc/heat/heat.conf keystone_authtoken auth_host \
"${KEYSTONE_PUBLIC_SERVICE_HOST}"
crudini --set /etc/heat/heat.conf keystone_authtoken auth_port \
"${KEYSTONE_PUBLIC_SERVICE_PORT}"
crudini --set /etc/heat/heat.conf keystone_authtoken auth_uri \
"${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_PUBLIC_SERVICE_HOST}:${KEYSTONE_PUBLIC_SERVICE_PORT}/v2.0"
crudini --set /etc/heat/heat.conf keystone_authtoken admin_tenant_name \
"${ADMIN_TENANT_NAME}"
crudini --set /etc/heat/heat.conf keystone_authtoken admin_user \
"${HEAT_KEYSTONE_USER}"
crudini --set /etc/heat/heat.conf keystone_authtoken admin_password \
"${HEAT_KEYSTONE_PASSWORD}"
crudini --set /etc/heat/heat.conf ec2authtoken auth_uri \
"${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_PUBLIC_SERVICE_HOST}:${KEYSTONE_PUBLIC_SERVICE_PORT}/v2.0"
crudini --set /etc/heat/heat.conf DEFAULT heat_metadata_server_url \
http://${HEAT_API_CFN_URL_HOST}:${HEAT_API_CFN_SERVICE_PORT}
crudini --set /etc/heat/heat.conf DEFAULT heat_waitcondition_server_url \
http://${HEAT_API_CFN_URL_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1/waitcondition
crudini --set /etc/heat/heat.conf DEFAULT stack_domain_admin \
"heat_domain_admin"
crudini --set /etc/heat/heat.conf DEFAULT stack_domain_admin_password \
"${HEAT_DOMAIN_PASS}"
crudini --set /etc/heat/heat.conf DEFAULT stack_user_domain_name \
"heat_user_domain"

0
docker/common/heat/heat-engine/config-external.sh Executable file → Normal file
View File

View File

@ -1,31 +0,0 @@
#!/bin/bash
. /opt/kolla/kolla-common.sh
. /opt/kolla/config-heat.sh
. /openrc
check_required_vars HEAT_DB_NAME \
HEAT_DB_PASSWORD \
HEAT_DB_USER \
HEAT_DOMAIN_PASS \
INIT_HEAT_DB
fail_unless_db
if [ "${INIT_HEAT_DB}" == "true" ]; then
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
/usr/bin/heat-manage db_sync
# If the database needs to be created, assume keystone-setup is allowed to
# run as well.
heat-keystone-setup-domain \
--stack-user-domain-name heat_user_domain \
--stack-domain-admin heat_domain_admin \
--stack-domain-admin-password ${HEAT_DOMAIN_PASS}
fi
exec /usr/bin/heat-engine

View File

@ -7,7 +7,7 @@ ARGS=""
# Loading common functions.
source /opt/kolla/kolla-common.sh
# Config-internal script exec out of this function, it does not return here.
# Execute config strategy
set_configs
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases

View File

@ -267,46 +267,19 @@ In order for each service to function, there is a minimum set of required variab
# Heat-api-cfn
ADMIN_TENANT_NAME
HEAT_API_CFN_SERVICE_HOST
HEAT_API_CFN_SERVICE_PORT
HEAT_CFN_KEYSTONE_PASSWORD
HEAT_CFN_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
None
# Heat-api
ADMIN_TENANT_NAME
HEAT_API_SERVICE_HOST
HEAT_KEYSTONE_PASSWORD
HEAT_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
PUBLIC_IP
None
# Heat-base
HEAT_API_CFN_SERVICE_PORT
HEAT_API_CFN_URL_HOST
HEAT_DB_PASSWORD
HEAT_DOMAIN_PASS
HEAT_KEYSTONE_PASSWORD
KEYSTONE_PUBLIC_SERVICE_HOST
KEYSTONE_PUBLIC_SERVICE_PORT
MARIADB_SERVICE_HOST
RABBITMQ_SERVICE_HOST
None
# Heat-engine
HEAT_DB_NAME
HEAT_DB_PASSWORD
HEAT_DB_USER
HEAT_DOMAIN_PASS
INIT_HEAT_DB
None
# Horizon