aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Yaple <sam@yaple.net>2015-07-05 11:42:49 +0000
committerSam Yaple <sam@yaple.net>2015-07-05 15:36:22 +0000
commitc80a8c282bfa51c61a76e7b9b5f1228527503dea (patch)
treee17905c0921379025c03a311b84995e7b928ef9c
parentcb7115241b630e3132c1872c0dc21fc0cbbb20b4 (diff)
downloadkolla-c80a8c282bfa51c61a76e7b9b5f1228527503dea.tar.gz
kolla-c80a8c282bfa51c61a76e7b9b5f1228527503dea.zip
Have bootstrap script create the initial endpoint
Due to a few issue that exist between keystone v3 and v2.0 the endpoint needs to be created as v2.0. If it is created as v3, v2.0 queries will not see the endpoint. https://bugs.launchpad.net/keystone/+bug/1470635 Change-Id: Ie7ff88b8cbb23b3ca149cb6e8d5a18a427d22038 Partially-Implements: blueprint ansible-service
-rw-r--r--ansible/roles/keystone/tasks/bootstrap.yml7
-rw-r--r--docker/centos/binary/keystone/Dockerfile5
-rwxr-xr-xdocker/common/keystone/start.sh17
-rw-r--r--etc/kolla/globals.yml5
-rw-r--r--etc/kolla/passwords.yml1
5 files changed, 32 insertions, 3 deletions
diff --git a/ansible/roles/keystone/tasks/bootstrap.yml b/ansible/roles/keystone/tasks/bootstrap.yml
index 0e4c98ca4..bdd65fce4 100644
--- a/ansible/roles/keystone/tasks/bootstrap.yml
+++ b/ansible/roles/keystone/tasks/bootstrap.yml
@@ -8,6 +8,13 @@
container_environment:
KOLLA_BOOTSTRAP:
KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
+ KEYSTONE_ADMIN_PASSWORD: "{{ keystone_admin_password }}"
+ REGION_NAME: "{{ openstack_region_name }}"
+ PUBLIC_URL: "http://{{ kolla_external_address }}:{{ keystone_public_port }}/v2.0"
+ INTERNAL_URL: "http://{{ kolla_internal_address }}:{{ keystone_public_port }}/v2.0"
+ ADMIN_URL: "http://{{ kolla_internal_address }}:{{ keystone_admin_port }}/v2.0"
+ OS_TOKEN: "{{ keystone_admin_token }}"
+ OS_URL: "http://{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}:{{ keystone_admin_port }}/v2.0"
container_image: "{{ docker_keystone_image_full }}"
container_name: "bootstrap_keystone"
container_volumes:
diff --git a/docker/centos/binary/keystone/Dockerfile b/docker/centos/binary/keystone/Dockerfile
index e05db2fde..891d01ad8 100644
--- a/docker/centos/binary/keystone/Dockerfile
+++ b/docker/centos/binary/keystone/Dockerfile
@@ -3,17 +3,18 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla)
RUN yum -y install openstack-keystone \
python-keystoneclient \
+ python-openstackclient \
httpd \
mod_wsgi \
&& yum clean all
-RUN mkdir -p /var/www/cgi-bin/keystone
+RUN mkdir -p /var/www/cgi-bin/keystone /var/log/keystone
RUN cp -a /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d
RUN sed -i 's,/var/log/apache2,/var/log/httpd,' /etc/httpd/conf.d/wsgi-keystone.conf
RUN sed -i -r 's,^(Listen 80),#\1,' /etc/httpd/conf/httpd.conf
RUN cp -a /usr/share/keystone/keystone.wsgi /var/www/cgi-bin/keystone/main
RUN cp -a /usr/share/keystone/keystone.wsgi /var/www/cgi-bin/keystone/admin
-RUN chown -R keystone:keystone /var/www/cgi-bin/keystone
+RUN chown -R keystone: /var/www/cgi-bin/keystone /var/log/keystone
RUN chmod 755 /var/www/cgi-bin/keystone/*
# Add start-up and check scripts
diff --git a/docker/common/keystone/start.sh b/docker/common/keystone/start.sh
index a7b2462b3..9a184787d 100755
--- a/docker/common/keystone/start.sh
+++ b/docker/common/keystone/start.sh
@@ -15,6 +15,23 @@ set_configs
# 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
diff --git a/etc/kolla/globals.yml b/etc/kolla/globals.yml
index cf95ebd21..2a957160a 100644
--- a/etc/kolla/globals.yml
+++ b/etc/kolla/globals.yml
@@ -65,10 +65,13 @@ neutron_interface: "{{ network_interface }}"
# Openstack options
####################
openstack_release: "latest"
-
openstack_logging_verbose: "True"
openstack_logging_debug: "False"
+openstack_region_name: "RegionOne"
+keystone_public_port: "5000"
+keystone_admin_port: "35357"
+
####################
# RabbitMQ options
diff --git a/etc/kolla/passwords.yml b/etc/kolla/passwords.yml
index 8d2c9c934..204d68c9c 100644
--- a/etc/kolla/passwords.yml
+++ b/etc/kolla/passwords.yml
@@ -19,6 +19,7 @@ docker_registry_password:
# Openstack options
####################
keystone_admin_token: "password"
+keystone_admin_password: "password"
keystone_database_password: "password"