diff -Nru aodh-8.0.0/debian/changelog aodh-8.0.0/debian/changelog --- aodh-8.0.0/debian/changelog 2019-04-12 03:37:56.000000000 -0400 +++ aodh-8.0.0/debian/changelog 2019-06-26 10:32:24.000000000 -0400 @@ -1,3 +1,10 @@ +aodh (8.0.0-0ubuntu2) disco; urgency=medium + + * d/p/0001-Add-user_domain_name-to-keystone-client.patch: Keystone + client might require the user domain name. (LP: #1831181). + + -- Jorge Niedbalski Wed, 26 Jun 2019 10:28:47 -0400 + aodh (8.0.0-0ubuntu1) disco; urgency=medium * New upstream release for OpenStack Stein. diff -Nru aodh-8.0.0/debian/patches/0001-Add-user_domain_name-to-keystone-client.patch aodh-8.0.0/debian/patches/0001-Add-user_domain_name-to-keystone-client.patch --- aodh-8.0.0/debian/patches/0001-Add-user_domain_name-to-keystone-client.patch 1969-12-31 20:00:00.000000000 -0400 +++ aodh-8.0.0/debian/patches/0001-Add-user_domain_name-to-keystone-client.patch 2019-06-26 10:31:26.000000000 -0400 @@ -0,0 +1,110 @@ +From 1b1b8e20c7e4872e2872182757e561125859c9f0 Mon Sep 17 00:00:00 2001 +From: Jorge Niedbalski +Date: Fri, 31 May 2019 15:37:07 -0400 +Subject: [PATCH] Add user_domain_name to keystone client. + +Use user_domain_name as a fallback if no user_domain_id is provided, +the default keystone password auth uses only user_domain_id, if not +provided aodh will fail getting a token, add the extra +user_domain_name parameter to the authentication. + +Closes-Bug: #1831181 + +Change-Id: I170267ddbed31f63717e1c8fe119b2557afc812e +Signed-off-by: Jorge Niedbalski +(cherry picked from commit 83fb96463c6ba55e536c3c47fa04253ab1b53eff) +--- + aodh/keystone_client.py | 1 + + aodh/tests/unit/test_notifier.py | 50 ++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 51 insertions(+) + +diff --git a/aodh/keystone_client.py b/aodh/keystone_client.py +index 86fec64..023d260 100644 +--- a/aodh/keystone_client.py ++++ b/aodh/keystone_client.py +@@ -48,6 +48,7 @@ def get_trusted_client(conf, trust_id): + password=conf[CFG_GROUP].password, + auth_url=conf[CFG_GROUP].auth_url, + user_domain_id=conf[CFG_GROUP].user_domain_id, ++ user_domain_name=conf[CFG_GROUP].user_domain_name, + trust_id=trust_id) + + sess = session.Session(auth=auth_plugin) +diff --git a/aodh/tests/unit/test_notifier.py b/aodh/tests/unit/test_notifier.py +index 34cfe1f..71790ef 100644 +--- a/aodh/tests/unit/test_notifier.py ++++ b/aodh/tests/unit/test_notifier.py +@@ -17,13 +17,17 @@ import json + import time + + import mock ++from oslo_config import cfg + from oslo_config import fixture as fixture_config ++ + import oslo_messaging + import requests + import six.moves.urllib.parse as urlparse + ++from aodh import keystone_client + from aodh import notifier + from aodh import service ++ + from aodh.tests import base as tests_base + + +@@ -55,6 +59,52 @@ class TestAlarmNotifierService(tests_base.BaseTestCase): + self.service.terminate() + + ++class TestKeystoneClient(tests_base.BaseTestCase): ++ def setUp(self): ++ super(TestKeystoneClient, self).setUp() ++ self.config = fixture_config.Config( ++ service.prepare_service(argv=[], config_files=[])) ++ self.config.setUp() ++ self.config.register_opts([ ++ cfg.StrOpt('user_domain_id', default=""), ++ cfg.StrOpt('user_domain_name', default=""), ++ cfg.StrOpt('username', default="username"), ++ cfg.StrOpt('password', default="password"), ++ cfg.StrOpt('auth_url', default="testdomain") ++ ], "service_credentials") ++ ++ def test_get_trusted_client_domain_id(self): ++ self.config.config( ++ **{'group': "service_credentials", ++ 'user_domain_id': "uuid-domain"}) ++ ++ client = keystone_client.get_trusted_client( ++ self.config.conf, "testing") ++ self.assertEqual(client.session.auth._user_domain_id, "uuid-domain") ++ self.assertEqual(client.session.auth._user_domain_name, '') ++ ++ def test_get_trusted_client_domain_name(self): ++ self.config.config( ++ **{'group': "service_credentials", ++ 'user_domain_name': "testdomain"}) ++ ++ client = keystone_client.get_trusted_client( ++ self.config.conf, "testing") ++ self.assertEqual(client.session.auth._user_domain_name, "testdomain") ++ self.assertEqual(client.session.auth._user_domain_id, '') ++ ++ def test_get_trusted_client_domain(self): ++ self.config.config(**{'group': "service_credentials", ++ 'user_domain_name': "testdomain", ++ 'user_domain_id': "uuid-gen", ++ }) ++ ++ client = keystone_client.get_trusted_client(self.config.conf, ++ "testing") ++ self.assertEqual(client.session.auth._user_domain_name, "testdomain") ++ self.assertEqual(client.session.auth._user_domain_id, "uuid-gen") ++ ++ + class TestAlarmNotifier(tests_base.BaseTestCase): + def setUp(self): + super(TestAlarmNotifier, self).setUp() +-- +2.7.4 + diff -Nru aodh-8.0.0/debian/patches/series aodh-8.0.0/debian/patches/series --- aodh-8.0.0/debian/patches/series 1969-12-31 20:00:00.000000000 -0400 +++ aodh-8.0.0/debian/patches/series 2019-06-26 10:31:12.000000000 -0400 @@ -0,0 +1 @@ +0001-Add-user_domain_name-to-keystone-client.patch