From a46245e74a5f42be4fe9d7d2f75e2f3570fc00c8 Mon Sep 17 00:00:00 2001 From: Duc Truong Date: Sat, 1 Aug 2020 21:19:30 -0700 Subject: [PATCH] Fix devstack problems causing failed CI tests - Use uwsgi binary from path: Devstack projects have been fixed to run uwsgi binary from the path instead of the project specific directory [1]. This applies the same fix to senlin-api so that it makes uwsgi invocation to find it in the path. - Set keystone auth interface to public: The default identity interface was changed from admin to internal in [2]. Since devstack only creates admin and public endpoints for identity service, senlin fails to talk to identity service without the explicit setting to use public interface during authentication. [1] https://review.opendev.org/#/c/577779/ [2] https://review.opendev.org/#/c/662734/ Change-Id: Ia8f56a7016eace5b7ce70dc661729e19284c3733 --- devstack/lib/senlin | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/devstack/lib/senlin b/devstack/lib/senlin index 193cda2f0..c6211d6e8 100644 --- a/devstack/lib/senlin +++ b/devstack/lib/senlin @@ -128,7 +128,6 @@ function configure_senlin { #configure_auth_token_middleware $SENLIN_CONF senlin $SENLIN_AUTH_CACHE_DIR iniset $SENLIN_CONF keystone_authtoken cafile $SSL_BUNDLE_FILE iniset $SENLIN_CONF keystone_authtoken auth_url $KEYSTONE_AUTH_URI - iniset $SENLIN_CONF keystone_authtoken www_authenticate_uri $KEYSTONE_SERVICE_URI_V3 iniset $SENLIN_CONF keystone_authtoken username senlin iniset $SENLIN_CONF keystone_authtoken password $SERVICE_PASSWORD iniset $SENLIN_CONF keystone_authtoken project_name $SERVICE_TENANT_NAME @@ -136,6 +135,7 @@ function configure_senlin { iniset $SENLIN_CONF keystone_authtoken user_domain_name Default iniset $SENLIN_CONF keystone_authtoken auth_type password iniset $SENLIN_CONF keystone_authtoken service_token_roles_required True + iniset $SENLIN_CONF keystone_authtoken interface public # Senlin service credentials iniset $SENLIN_CONF authentication auth_url $KEYSTONE_AUTH_URI/v3 @@ -272,7 +272,7 @@ function start_senlin { run_process sl-health-manager "$SENLIN_BIN_DIR/senlin-health-manager --config-file=$SENLIN_CONF" if [[ "$SENLIN_WSGI_MODE" == "uwsgi" ]]; then - run_process sl-api "$SENLIN_BIN_DIR/uwsgi --procname-prefix senlin-api --ini $SENLIN_UWSGI_CONF" + run_process sl-api "$(which uwsgi) --procname-prefix senlin-api --ini $SENLIN_UWSGI_CONF" else enable_apache_site senlin-api restart_apache_server