From 21fe4e76d5453a252e802c5d5f487f88b896decf Mon Sep 17 00:00:00 2001 From: Vincent Hou <sbhou@cn.ibm.com> Date: Thu, 21 Nov 2013 03:10:27 -0500 Subject: [PATCH] Add a flexible API version choice for Cinder, Glance and Heat The version of the authentication url is set to v1.0 for some projects by default. We can make it configurable via the parameter "$IDENTITY_API_VERSION". Closes-Bug: #1253539 Change-Id: I6640e345d1317b1308403c95b13f8a998320241b --- lib/cinder | 2 +- lib/glance | 4 ++-- lib/heat | 2 +- lib/keystone | 8 ++++++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/cinder b/lib/cinder index cbe732e9b0..099cfda7fd 100644 --- a/lib/cinder +++ b/lib/cinder @@ -341,7 +341,7 @@ function configure_cinder() { -e 's/snapshot_autoextend_percent =.*/snapshot_autoextend_percent = 20/' \ /etc/lvm/lvm.conf fi - iniset $CINDER_CONF keystone_authtoken auth_uri $KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:$KEYSTONE_SERVICE_PORT + configure_API_version $CINDER_CONF $IDENTITY_API_VERSION iniset $CINDER_CONF keystone_authtoken admin_user cinder iniset $CINDER_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME iniset $CINDER_CONF keystone_authtoken admin_password $SERVICE_PASSWORD diff --git a/lib/glance b/lib/glance index 135136db7e..321174e619 100644 --- a/lib/glance +++ b/lib/glance @@ -83,7 +83,7 @@ function configure_glance() { iniset $GLANCE_REGISTRY_CONF keystone_authtoken auth_port $KEYSTONE_AUTH_PORT iniset $GLANCE_REGISTRY_CONF keystone_authtoken auth_protocol $KEYSTONE_AUTH_PROTOCOL iniset $GLANCE_REGISTRY_CONF keystone_authtoken cafile $KEYSTONE_SSL_CA - iniset $GLANCE_REGISTRY_CONF keystone_authtoken auth_uri $KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:$KEYSTONE_SERVICE_PORT/ + configure_API_version $GLANCE_REGISTRY_CONF $IDENTITY_API_VERSION iniset $GLANCE_REGISTRY_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME iniset $GLANCE_REGISTRY_CONF keystone_authtoken admin_user glance iniset $GLANCE_REGISTRY_CONF keystone_authtoken admin_password $SERVICE_PASSWORD @@ -101,7 +101,7 @@ function configure_glance() { iniset $GLANCE_API_CONF keystone_authtoken auth_port $KEYSTONE_AUTH_PORT iniset $GLANCE_API_CONF keystone_authtoken auth_protocol $KEYSTONE_AUTH_PROTOCOL iniset $GLANCE_API_CONF keystone_authtoken cafile $KEYSTONE_SSL_CA - iniset $GLANCE_API_CONF keystone_authtoken auth_uri $KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:$KEYSTONE_SERVICE_PORT/ + configure_API_version $GLANCE_API_CONF $IDENTITY_API_VERSION iniset $GLANCE_API_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME iniset $GLANCE_API_CONF keystone_authtoken admin_user glance iniset $GLANCE_API_CONF keystone_authtoken admin_password $SERVICE_PASSWORD diff --git a/lib/heat b/lib/heat index e44a618162..59fd3d7a7a 100644 --- a/lib/heat +++ b/lib/heat @@ -95,7 +95,7 @@ function configure_heat() { iniset $HEAT_CONF keystone_authtoken auth_host $KEYSTONE_AUTH_HOST iniset $HEAT_CONF keystone_authtoken auth_port $KEYSTONE_AUTH_PORT iniset $HEAT_CONF keystone_authtoken auth_protocol $KEYSTONE_AUTH_PROTOCOL - iniset $HEAT_CONF keystone_authtoken auth_uri $KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:$KEYSTONE_SERVICE_PORT/v2.0 + configure_API_version $HEAT_CONF $IDENTITY_API_VERSION iniset $HEAT_CONF keystone_authtoken cafile $KEYSTONE_SSL_CA iniset $HEAT_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME iniset $HEAT_CONF keystone_authtoken admin_user heat diff --git a/lib/keystone b/lib/keystone index 29b9604efe..79f1fd9e84 100644 --- a/lib/keystone +++ b/lib/keystone @@ -335,6 +335,14 @@ create_keystone_accounts() { fi } +# Configure the API version for the OpenStack projects. +# configure_API_version conf_file version +function configure_API_version() { + local conf_file=$1 + local api_version=$2 + iniset $conf_file keystone_authtoken auth_uri $KEYSTONE_SERVICE_PROTOCOL://$KEYSTONE_SERVICE_HOST:$KEYSTONE_SERVICE_PORT/v$api_version +} + # init_keystone() - Initialize databases, etc. function init_keystone() { if is_service_enabled ldap; then