From 86b80ab2e9cbb3a7dfc1164b0205eaffcf4f2363 Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Tue, 21 Oct 2014 10:14:48 -0400 Subject: keystone: update for Juno rc1 We have three changes in a single commit: - A runtime substition fix controller IP values - When the substitions were moved for chef integration, the chef disabled path wasn't tested. This meant that %CONTROLLER_IP% remained in the final config files, and broke keystone startup. - The addition of oathlib to keystone depedencies - oauthlib is a juno dependency - A temporary patch to the apache httpd front end modules - At times keystone would fail to load via apache due to the inability to load localcontext from oslo. To work around these sporadic failures, an explicit import was added to the http front end module. This will be removed in the future. Signed-off-by: Bruce Ashfield --- ...plicitly-import-localcontext-from-oslo.me.patch | 32 ++++++++++++++++++++++ .../recipes-devtools/python/python-keystone_git.bb | 20 ++++++++------ 2 files changed, 43 insertions(+), 9 deletions(-) create mode 100644 meta-openstack/recipes-devtools/python/python-keystone/keystone-explicitly-import-localcontext-from-oslo.me.patch (limited to 'meta-openstack/recipes-devtools/python') diff --git a/meta-openstack/recipes-devtools/python/python-keystone/keystone-explicitly-import-localcontext-from-oslo.me.patch b/meta-openstack/recipes-devtools/python/python-keystone/keystone-explicitly-import-localcontext-from-oslo.me.patch new file mode 100644 index 0000000..5c152e0 --- /dev/null +++ b/meta-openstack/recipes-devtools/python/python-keystone/keystone-explicitly-import-localcontext-from-oslo.me.patch @@ -0,0 +1,32 @@ +From 0d6b66b2d5314b454a421bd22fcc8173baf0bc95 Mon Sep 17 00:00:00 2001 +From: Bruce Ashfield +Date: Mon, 20 Oct 2014 15:59:33 -0400 +Subject: [PATCH] keystone: explicitly import localcontext from oslo.messaging + +When using apache as a front end to keystone, juno has a problem when +authenticating clients due to a failure to import localcontext from +oslo. + +We can work around this issue by doing the export explicitly in the +entry routine versus in the library itself. + +Signed-off-by: Bruce Ashfield +--- + httpd/keystone.py | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/httpd/keystone.py b/httpd/keystone.py +index f5ce498c5152..b2b9285ad2ab 100644 +--- a/httpd/keystone.py ++++ b/httpd/keystone.py +@@ -32,6 +32,7 @@ from keystone.common import sql + from keystone import config + from keystone.openstack.common import log + from keystone import service ++from oslo.messaging import localcontext + + + CONF = config.CONF +-- +1.9.1 + diff --git a/meta-openstack/recipes-devtools/python/python-keystone_git.bb b/meta-openstack/recipes-devtools/python/python-keystone_git.bb index 9bdce3f..18f77ef 100644 --- a/meta-openstack/recipes-devtools/python/python-keystone_git.bb +++ b/meta-openstack/recipes-devtools/python/python-keystone_git.bb @@ -4,7 +4,7 @@ SECTION = "devel/python" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2" -PR = "r1" +PR = "r2" SRCNAME = "keystone" SRC_URI = "git://github.com/openstack/${SRCNAME}.git;branch=master \ @@ -13,6 +13,7 @@ SRC_URI = "git://github.com/openstack/${SRCNAME}.git;branch=master \ file://keystone \ file://keystone-search-in-etc-directory-for-config-files.patch \ file://keystone-remove-git-commands-in-tests.patch \ + file://keystone-explicitly-import-localcontext-from-oslo.me.patch \ file://convert_keystone_backend.py \ file://wsgi-keystone.conf \ " @@ -103,6 +104,14 @@ do_install_append() { install -d ${D}${sysconfdir}/init.d install -m 0755 ${WORKDIR}/keystone ${D}${sysconfdir}/init.d/keystone fi + + sed "/# admin_endpoint = .*/a \ + public_endpoint = http://%CONTROLLER_IP%:8081/keystone/main/ " \ + -i ${KEYSTONE_CONF_DIR}/keystone.conf + + sed "/# admin_endpoint = .*/a \ + admin_endpoint = http://%CONTROLLER_IP%:8081/keystone/admin/ " \ + -i ${KEYSTONE_CONF_DIR}/keystone.conf if [ -z "${OPENSTACKCHEF_ENABLED}" ]; then sed -e "s:%SERVICE_TOKEN%:${SERVICE_TOKEN}:g" \ @@ -127,14 +136,6 @@ do_install_append() { -i ${D}${sysconfdir}/init.d/keystone fi - sed "/# admin_endpoint = .*/a \ - public_endpoint = http://%CONTROLLER_IP%:8081/keystone/main/ " \ - -i ${KEYSTONE_CONF_DIR}/keystone.conf - - sed "/# admin_endpoint = .*/a \ - admin_endpoint = http://%CONTROLLER_IP%:8081/keystone/admin/ " \ - -i ${KEYSTONE_CONF_DIR}/keystone.conf - install -d ${KEYSTONE_PACKAGE_DIR}/tests/tmp if [ -e "${KEYSTONE_PACKAGE_DIR}/tests/test_overrides.conf" ];then @@ -279,6 +280,7 @@ RDEPENDS_${PN} += " \ python-dogpile.cache \ python-pbr \ python-oslo.utils \ + python-oauthlib \ " PACKAGECONFIG ?= "${@base_contains('DISTRO_FEATURES', 'OpenLDAP', 'OpenLDAP', '', d)}" -- cgit v1.2.3-54-g00ecf