kolla-ansible/docker/keystone/extend_start.sh
Sam Yaple cb4e875ae1 Common start.sh
The majority of the start.sh code is identical. This removes that
duplicate code while still maintaining the ability to call code in a
specific container.

The start.sh is moved into /usr/local/bin/kolla_start in the container

The extend_start.sh script is called by the kolla_start script at the
location /usr/local/bin/kolla_extend_start . It always exists because
we create a noop kolla_extend_start in the base directory. We override
it with extend_start.sh in a specific image should we need to.

Of note, the neutron-agents container is exempt from this new
structure due to it being a fat container.

Additionally, we fix the inconsistent permissions throughout. 644 for
repo files and the scripts are set to 755 via a Docker RUN command to
ensure someones local perm change won't break upstream containers.

Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad
Closes-Bug: #1501295
2015-10-06 03:30:26 +00:00

31 lines
1.1 KiB
Bash

#!/bin/bash
if [[ "${KOLLA_BASE_DISTRO}" == "ubuntu" || \
"${KOLLA_BASE_DISTRO}" == "debian" ]]; then
# Loading Apache2 ENV variables
source /etc/apache2/envvars
fi
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
# of the KOLLA_BOOTSTRAP variable being set, including empty.
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
su -s /bin/sh -c "keystone-manage db_sync" keystone
# Start the api to set initial endpoint and users with the admin_token
$CMD
sleep 5
openstack service create --name keystone --description "OpenStack Identity" identity
openstack endpoint create --region "${REGION_NAME}" \
--publicurl "${PUBLIC_URL}" \
--internalurl "${INTERNAL_URL}" \
--adminurl "${ADMIN_URL}" \
identity
openstack project create --description "Admin Project" admin
openstack user create --password "${KEYSTONE_ADMIN_PASSWORD}" admin
openstack role create admin
openstack role add --project admin --user admin admin
exit 0
fi
ARGS="-DFOREGROUND"